gettext - Sprache auswählen?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
EnTeQuAk
User
Beiträge: 986
Registriert: Freitag 21. Juli 2006, 15:03
Wohnort: Berlin
Kontaktdaten:

Ich habe mal wieder eine Frage zur Verwendung von `gettext`, für die lokalisierung.

`gettext` sucht sich ja die Passende lokalisierung aus den Einstellungen des Betriebssystems heraus.

Wie kann ich es aber dazu bringen, nicht die eingestellte (englisch) sondern einfach mal Deutsch zu benutzen, ohne mich abzumelden und die Sprache vom OS umzustellen.

Falls es hilft, initialisiert wird alles in folgenden Quelltext:

Code: Alles auswählen

# The IL8N factory

LOCALE_PATH = join(abspath(dirname(globby.cli.__file__)), 'locale')
print LOCALE_PATH
# the name of the gettext domain.
GETTEXT_DOMAIN = 'globby'

# set up the gettext system and locales
import gettext
import locale

gettext.bindtextdomain(GETTEXT_DOMAIN, LOCALE_PATH)
gettext.textdomain(GETTEXT_DOMAIN)

# register the gettext function for the whole interpreter as "_"
import __builtin__
__builtin__._ = gettext.gettext
# a helper that ensures that the string is marked as translatable
# but that string will be translated later in the programm
__builtin__.N_ = lambda s: s
Benutzeravatar
birkenfeld
Python-Forum Veteran
Beiträge: 1603
Registriert: Montag 20. März 2006, 15:29
Wohnort: Die aufstrebende Universitätsstadt bei München

Du kennst die Variablen LANG bzw. LC_*?
Dann lieber noch Vim 7 als Windows 7.

http://pythonic.pocoo.org/
EnTeQuAk
User
Beiträge: 986
Registriert: Freitag 21. Juli 2006, 15:03
Wohnort: Berlin
Kontaktdaten:

Danke, die beiden kannte ich habe sie aber noch nie benutzt, daher nicht sofort dran gedacht.

Herzlichen Dank! :)

Jedoch wird, soweit ich das gelesen habe unter http://www.python.org/doc/2.4.4/lib/node323.html
davon abgeraten, solche zu verwenden, wegen den Seiteneffekten.

Sind die wirklich so schlimm, das man sie nicht ignorieren kann, oder gibts noch ne andere Möglichkeit?

Eine gäbe es glaub ich noch, indem man `gettext` expliziet nur die vorgesetzte Sprache über das Attribut `languages` bei `gettext.install` übergibt.
Muss mal schaun, ob ich das implementiert bekomme.

MfG EnTeQuAk
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

EnTeQuAk hat geschrieben:Jedoch wird, soweit ich das gelesen habe unter http://www.python.org/doc/2.4.4/lib/node323.html
davon abgeraten, solche zu verwenden, wegen den Seiteneffekten.
Wo steht da, dass man keine Umgebungsvariablen verwenden sollte? Die Variablen sind so oder so gesetzt...
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten