首页 > 解决方案 > xgettext 工具无法使用 C# 和 NGettext 库提取带有上下文的字符串

问题描述

我正在使用NGettext工具来本地化我的 C# 代码,并且我使用了与他们的示例相同的帮助程序类。

所以我的 C# 代码如下所示:

labelWelcome.Text = T._("Welcome");

有效(复数有效,带参数的字符串格式有效),但是当我使用上下文时,xgettext 工具不会翻译/找到它:

labelWelcome.Text = T._p("MainWindow","Welcome");
//which is equivalent to: Catalog.GetParticularString(context, text)

执行 xgettext 工具的命令行参数是:

"C:\Program Files (x86)\GnuWin32\bin\xgettext.exe" -k_ -k_n:1,2 -k_p:1c,2 -k_pn:1c,2,3 --from-code=UTF-8 -LC# --omit-header -o"C:\locale\en\LC_MESSAGES\newmessages.pot" -fprojectfiles.txt

这个命令行参数我哪里错了?或者这是 xgettext 工具的错误?

标签: c#batch-filelocalizationgettextxgettext

解决方案


推荐阅读