", fallback=True)
_=t.ugettext
print(_("this message"))
2.从源代码中抽取需要国际化的文本消息,并转换创建.pot文件, 可以使用的工具为pygettext.py...或者GNU工具 xgettext
这里我使用xgettext, MAC上使用homebrew 安装, 输入命令:
>brew install xgettext
即可自动完成安装, 安装后的默认目录.../local/en_US/LC_MESSAGES/example.po, 修改这个文件,替换要国际化的消息内容
如把
msgid "this message"
msgstr "translated message...二进制文件,
cd locale/en_US/LC_MESSAGES/
msgfmt -o example.mo example.po可以看到转换后生成的mo是二进制文件,而po,pot都是文本文件...这一步很关键,我在弄的时候没注意到这一步, 直接把.po文件复制成.mo文件, 导致出现以下类似的情况, 掉到坑里,半天爬不出来,汗~
File "C:\env\lib\gettext.py", line