Seite 1 von 1

wxPython: Programme internationalisieren/übersetzen

Verfasst: Samstag 19. Mai 2007, 20:47
von gerold
Hallo liebe wxPython-Programmierer!

Für alle die eine wxPython Anwendung internationalisieren möchten, habe ich eine Anleitung bzw. einen Erfahrungsbericht geschrieben.

Dieser Bericht ist hier zu finden: wxPython internationalisieren

Falls irgendjemand einen Fehler entdeckt oder weiß, wie man das Beispiel verbessern könnte. --> Bitte melden!!!

lg
Gerold
:-)

Suchworte:
Internationalisierung I18N Lokalisierung L10N localisation internationalisation übersetzen Übersetzung GetText PO POT MO

Edit: Link ausgebessert

Verfasst: Dienstag 9. September 2008, 13:51
von Mawilo
Hallo Gerold,

ich erlaube mir mal, den etwas älteren Thread aufzuwärmen :D
Mit deiner Anleitung habe ich ein wx-Programm übersetzt. Es funktioniert sehr gut. Nur mit den Umlauten habe ich noch ein Problem. Wenn ich die pot-Datei erstelle, werden die Umlaute nicht richtig dargestellt (ja, eigentlich sollte man das Programm in englisch schreiben, da hat man solche Problemchen nicht):

Code: Alles auswählen

msgid "gew\344hlte Periode l\366schen"
Diese Umlaute müssen erst mit einem Editor wieder gerade gezogen werden, damit man die Datei mit Poedit bearbeiten kann. Nachteil dabei ist, dass man die Datei dann nicht aktualisieren kann.

Gibrt es dafür noch einen Trick?

Grüße
Mawilo

Verfasst: Dienstag 9. September 2008, 15:43
von gerold
Mawilo hat geschrieben:

Code: Alles auswählen

msgid "gew\344hlte Periode l\366schen
Hallo Mawilo!

Mir fällt nichts ein. Zwei Möglichkeiten, das Problem zu umgehen und zwei Versuche:
1.) Die Texte im Programm durch die englische Übersetzung austauschen.
2.) Die Umlaute aus dem Programm zu entfernen und für "Deutsch" eine zusätzliche Übersetzung rein zu geben.
3.) Ausprobieren, ob es etwas ändert, wenn man im Programm keine Byte-Strings, sondern Unicode-Strings verwendet.
``u"Österreich"`` statt ``"Österreich"``
4.) Den Quelltext im UTF-8 Encoding abspeichern (Encoding-Cookie nicht vergessen).

lg
Gerold
:-)