快速翻译应用

快速翻译应用

我使用 创建了一个应用程序quickly create ubuntu-application myapp。然后我创建了翻译并创建了 deb 包quickly package来安装和测试它。当我运行 myapp 时,glade 文件中的所有字符串都已翻译,但代码中的所有字符串均未翻译。这是什么?如何解决这个问题?

答案1

我已经解决了这个问题。我必须使用locale.gettext而不是gettext。我不知道有什么区别,但它有效。

答案2

在您的代码中,您需要将所有字符串括在内以标记需要翻译_()。例如:

import gettext
from gettext import gettext as _
gettext.textdomain('yourappname')

some_string = 'This is not a translatable string'
some_other_string = _('This is a translatable string')

请注意上面的 gettext 语句,它会快速放入每个源文件中。您需要将它们添加到任何包含可翻译字符串的源文件中。

相关内容