Files
krowlog/raven/i18n.py

25 lines
673 B
Python

import gettext
import os
from pathlib import Path
from settingsstore import SettingsStore
settings = SettingsStore.load()
locale = os.environ['LANG'] if os.environ['LANG'] else "en"
locale = settings.session.get('general', 'lang', fallback=locale)
_ = False
src_dir = Path(__file__).resolve().parent.parent
try:
translation = gettext.translation('messages', localedir=src_dir / 'locales', languages=[locale])
if translation:
translation.install()
_ = translation.gettext
ngettext = translation.ngettext
except FileNotFoundError:
pass
if not _:
_ = gettext.gettext
ngettext = gettext.ngettext
print('No translation found')