use translations
authorChristian Weiske <cweiske@cweiske.de>
Fri, 18 Nov 2011 21:29:18 +0000 (22:29 +0100)
committerChristian Weiske <cweiske@cweiske.de>
Fri, 18 Nov 2011 21:29:18 +0000 (22:29 +0100)
src/CurlyTx.py
src/CurlyTxSettings.py
src/__init__.py

index 5e58e72..e37c32c 100644 (file)
@@ -1,3 +1,5 @@
+from . import _
+
 from Screens.Screen import Screen
 from Screens.HelpMenu import HelpableScreen
 from Screens.MessageBox import MessageBox
index 59d7b3a..1534ce4 100644 (file)
@@ -1,3 +1,5 @@
+from . import _
+
 from Screens.Screen import Screen
 from Screens.HelpMenu import HelpableScreen
 from Components.ActionMap import ActionMap, NumberActionMap
index e69de29..61a1219 100644 (file)
@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+from Components.Language import language
+from Tools.Directories import resolveFilename, SCOPE_PLUGINS, SCOPE_LANGUAGE
+from os import environ as os_environ
+import gettext
+
+def localeInit():
+    lang = language.getLanguage()[:2] # getLanguage returns e.g. "fi_FI" for "language_country"
+    os_environ["LANGUAGE"] = lang # Enigma doesn't set this (or LC_ALL, LC_MESSAGES, LANG). gettext needs it!
+    print resolveFilename(SCOPE_PLUGINS, "Extensions/CurlyTx/locale")
+    gettext.bindtextdomain("CurlyTx", resolveFilename(SCOPE_PLUGINS, "Extensions/CurlyTx/locale"))
+
+def _(txt):
+    t = gettext.dgettext("CurlyTx", txt)
+    if t == txt:
+        #print "[CurlyTx] fallback to default translation for", txt
+        t = gettext.gettext(txt)
+    return t
+
+localeInit()
+language.addCallback(localeInit)