如何在多个文件夹中使用pygettext本地化我的应用程序?

时间:2016-06-05 12:05:50

标签: python-2.7 gettext

我想使用pygettext本地化我的应用程序(目前翻译是硬编码的,并且很难修改它们)。我试过了,我设法为单个文件生成.po和.mo文件。根据我在互联网上找到的教程,我把这段代码放在其中一个文件上:

_("Text to translate")

然后,我在每个字符串中都gettext.install()。我生成.po文件,翻译它然后生成.mo文件。我运行代码,它工作正常。

问题是我的应用程序是非常模块化的(大约45个模块),我认为为每个模块制作这个应用程序会有点混乱。在stackoverflow中搜索,我找到了一个答案,表示将__init__.py放在__init__.py文件上已经足够了,但它对我没有用。这是我的import gettext gettext.install('helloworld', 'translations/') 文件:

NameError: global name '_' is not defined

我删除了主模块的install(),当我运行模块时,我收到错误main folder/ __init__.py main_module.py some modules/ __init__.py module.py more modules/ __init__.py module.py

如何为所有模块制作单个.mo文件?请注意,它们位于不同的文件夹中:

flat-screen-tv

我正在使用Python 2.7。

提前致谢,如果我需要提供mor信息,请告诉我。

0 个答案:

没有答案