将多个表单生成为.pot文件

时间:2009-04-02 21:08:35

标签: python internationalization xgettext

我正在将python程序国际化,并且无法将多个表单放入.pot文件中。我有一个标记字符串,需要使用_pl()的多个翻译,例如。

self.write_info(_pl("%(num)d track checked", "%(num)d tracks checked", song_obj.song_count) % {"num" : song_obj.song_count})

然后我跑了: xgettext --language=Python --keyword=_pl --output=output.pot *.py 在pot文件中只生成第一个(单数)字符串。

1 个答案:

答案 0 :(得分:3)

我没有将它用于Python,目前无法测试,而是尝试使用--keyword=_pl:1,2

来自GNU gettext docs

  

- 关键字[= keywordspec]”       要查找的其他关键字(没有keywordspec意味着不使用默认关键字)。

     

如果keywordspec是C标识符id,则xgettext在每次调用函数或宏id的第一个参数中查找字符串。如果keywordspec的形式为'id:argnum',则xgettext会在调用的argnumth参数中查找字符串。如果keywordspec的形式为'id:argnum1,argnum2',则xgettext会在argnum1st参数和调用的argnum2nd参数中查找字符串,并将它们视为具有多个处理的消息的单数/复数变体。