Модуль для работы с локализацией
locales
- en
-- LC_MESSAGES
--- myapp.mo
--- myapp.po
$ xgettext -o locales/en/LC_MESSAGES/myapp.po script.py
# возможно данные по кодировке придется подправить в файле .po
$ msgfmt locales/en/LC_MESSAGES/myapp.po -o locales/en/LC_MESSAGES/myapp.mo
install
(domain, localedir=None, codeset=None, names=None)Устанавливает функию _() в глобальное окружение скрипта
gettext.install('myapp', 'locale')
_('Hello')
# привет
translation
(domain, localedir=None, languages=None, class_=None, fallback=False, codeset=None)Возвращает GNUTranslations
trans = gettext.translation('myapp', 'locales', ['en'])
GNUTranslations
gettext
(message)trans.gettext('Привет')
# Hello