[Python-de] gettext

Marcus Habermehl bmh1980de at yahoo.de
Don Dez 16 18:15:44 CET 2004


Hallo.

Ich wollte mich jetzt mal mit der Übersetzung von meinen Python-Skripten
beschäftigen.

Ich habe auch über Google eine Nachricht vom 25.01.04 hier aus der Liste
gefunden.

Allerdings funktioniert das nicht so richtig. Mit der Fehlermeldung, die
ich von dem Modul gettext bekomme, kann ich aber auch nichts anfangen.

Traceback (most recent call last):
  File "./test-de.py", line 15, in ?
    gettext.install('test', localedir = '.', unicode = True)
  File "/usr/lib/python2.3/gettext.py", line 428, in install
    translation(domain, localedir, fallback=True).install(unicode)
  File "/usr/lib/python2.3/gettext.py", line 416, in translation
    t = _translations.setdefault(key, class_(open(mofile, 'rb')))
  File "/usr/lib/python2.3/gettext.py", line 176, in __init__
    self._parse(fp)
  File "/usr/lib/python2.3/gettext.py", line 248, in _parse
    raise IOError(0, 'Bad magic number', filename)
IOError: [Errno 0] Bad magic number: './de/LC_MESSAGES/test.mo'

Könnt ihr mir sagen, was gettext da von mir will?

Nach dem ich das Skript angepasst habe, hab ich eine pot-Datei erzeugt.

    $ xgettext -o test.pot -L Python --from-code=Python test-de.py

Danach hab ich die deutsche Übersetzung wie folgt erstellt.

    $ msginit -l de_DE

Und zu guter Letzt die Datei de.po bearbeitet und nach ./de/LC_MESSAGES
verschoben.

Nach dem, was ich in der Nachricht gelesen habe, dürfte das soweit
richtig sein.

Gruß

Marcus