我正在翻译我正在开发的应用程序。我有类似的字符串:
echo _("Welcome to my site");
然后,我可以使用命令行通过执行以下操作从特定目录中的所有PHP文件创建.po
文件:
find . -iname "*.php" | xargs xgettext
但是,当我将其导入Poedit时,我会看到一个名为“翻译笔记”的框。这有时可能很有用,但我无法弄清楚如何填充它。我需要将哪些代码添加到我的PHP文件中,以便xgettext将笔记添加到翻译器中?
答案 0 :(得分:6)
xgettext的帮助显示:
-cTAG, - add-comments = TAG放置以TAG开头的注释块 输出文件中的前面的关键字行 -c, - add-comments放置关键字行之前的所有注释块 在输出文件
所以通过示例添加您的文件:
// COMMENTTAG:这是另一个由xgettext提取的块注释。
使用--add-comments = COMMENTTAG
运行xgettext答案 1 :(得分:3)
在Poedit中,您可以转到文件/首选项/提取器菜单,选择要提取的适当语言(在您的情况下为PHP),然后单击编辑。在这里,您可以看到用于提取翻译的命令:
xgettext --language=PHP --add-comments=TRANSLATORS: --add-comments=translators: --force-po -o %o %C %K %F
您可以在此处查看和修改如何解析其他翻译人员评论。在使用// TRANSLATORS: your notes
将这些注释添加到代码之前,您可以在行中使用// translators: your notes
或_('your text')
。例如:
// translators: 'practice' is a verb, used on a button as an action.
echo _('practice');
一次只能激活一个--add-comments
参数,因此// translators:
被设置为Poedit中的默认值。