Короче говоря, когда я думал, что строки будут переведены, ничего не происходит.
У меня есть приложение PyGtk и модуль, в котором я храню все строки, которые я хочу перевести, следующим образом:
'''
Strings module.
'''
....
CANCEL_BUTTON_TEXT = _("Cancel")
BACK_BUTTON_TEXT = _("Back")
....
И так далее. Затем они используются из других модулей, таких как:
'''
View module.
'''
import strings
# Usage example
button.set_label(strings.CANCEL_BUTTON_TEXT)
button.set_tooltip(strings.TOOLTIP)
window_title.set_title(strings.WINDOW_TITLE)
...
Я создал необходимые файлы .mo. Вот джерарки, которые у меня есть:
Как сказано в документации (https://docs.python.org/3/library/gettext.html), в моем main.py У меня есть следующие строки:
import gettext
gettext.install('myapplication')
es_lang = gettext.translation('base', localedir='locales', languages=['es'])
en_lang = gettext.translation('base', localedir='locales', languages=['en'])
es_lang.install()
Затем в моем приложении у меня есть кнопка, при нажатии которой выполняется следующая строка:
en_lang.install()
Но Испанский sh язык все еще используется в виджетах. Кто-нибудь может мне помочь?