国际化复数形式的支持与pygettext的补丁
uliweb i18n -l zh_CN --uliweb
来运行。结果报错。其主要原因是timesince中使用了复数形式的i18n函数ungettext。而uliweb使用的pygettext.py不支持。
pygettext.py是python在tools目录下自带的一个模块,可以用它来从python源码中抽取翻译字符串,它支持命令行,代码也不算很复杂。所以在uliweb中提供了纯python的命令行工具。不过uliweb为了让其可以支持模板和ini文件,修改了pygettext源码,所以和python自带的还不完全一样。许多其它的python项目是使用xgettext工具来处理。因为pygettext.py不支持复数的翻译串,我查了一下,主要区别就是对于复数,在po文件中是这样的:
msgid "month"
msgid_plural "months"
msgstr[0] "月"
msgid "month"
msgstr "月"
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。