4.5. Übersetzung in andere Sprachen

4.5.1. Übersetzungen aktualisieren

Die Zeichenketten, die dem Pauker-Benutzer angezeigt werden, sind nicht im Quelltext festverdrahtet, sondern werden durch so genannte Properties-Dateien bereitgestellt. So kann die Arbeit der Programmierer und der Übersetzer mehr oder weniger unabhängig voneinander erfolgen. Pauker ist bereits in eine (noch relativ kleine) Anzahl von Sprachen übersetzt worden. Die nächste Abbildung zeigt, wo die entsprechenden Dateien abgelegt sind.

Um die Übersetzungen zu bearbeiten, muss man die Datei Strings.properties mit der rechten Maustaste anklicken und den Menüpunkt „ Öffnen “ wählen. Ein Doppelklick auf Strings.properties oder rechte Maustaste->Editieren funktioniert leider NICHT wie gewünscht!

Nachdem Sie die Datei Strings.properties geöffnet haben, erscheint ein Unterfenster, in dem alle Übersetzungen nebeneinander dargestellt werden.

So können Übersetzungen bearbeitet werden. Leider ist diese Darstellung nicht sehr übersichtlich. Durch Doppelklick auf den oberen Reiter „Strings.properties“ maximieren Sie den Rahmen für die Übersetzungen. Wenn Sie nur eine bestimmte Übersetzung bearbeiten wollen, so können Sie die Spalten der anderen Sprachen zusammenschieben.

Dann lässt sich schon ganz gut damit arbeiten :-)

Zeichenketten, die sich in Ihrer Sprache nicht von der Standardsprache unterscheiden, sollten Sie nicht übersetzen. Zum Beispiel ist das englische Wort „Status“ auf Deutsch auch „Status“ und deswegen nicht übersetzt (siehe Bild oben). Die gleiche Regel besteht innerhalb von Sprachvarianten, z.B. ist das geschriebene Deutsch in Deutschland und der Schweiz fast gleich, allerdings wird in der Schweiz das „ß“ durch „ss“ ersetzt. Deswegen ist die Übersetzung „de_CH - Deutsch (Schweiz)“ fast leer bis auf ein paar Ausnahmen, z.B. „Größe“ wird zu „Grösse“ übersetzt.

Zusätzlich zu den Zeichenketten im Programm möchten Sie vielleicht die Übersetzung der Dankesliste aktualisieren. Diese ist in der Datei credits_<Ihr Sprachkürzel>.html (siehe nächstes Bild):

Diese Datei wird angezeigt, wenn Sie den Pauker-Menüpunkt „ HilfeÜber Pauker... “ aufrufen.

Neben der Dankesliste im Dialog „Über Pauker“ finden Sie die Softwarelizenz. Diese Lizenz liegt in der Datei license_<Ihr Sprachkürzel>.html (siehe nächstes Bild):

Auf der „Unofficial GNU License Translations Page“: http://www.gnu.org/licenses/translations.html gibt es bereits einige inoffizielle Übersetzungen der Softwarelizenz in verschiedene Sprachen.

Ein weiteres übersetzbares Dokument ist diese Hilfe selbst. Diese Dokumentation ist in DocBook geschrieben. Mehr Informationen zu DocBook finden Sie auf der folgenden Webseite: http://www.docbook.org

Der Quelltext zu dieser Dokumentation ist weder in den Quell- noch in den Testpaketen sondern in einem speziellen Projektverzeichnis (siehe nächstes Bild):

Sie können die Datei Pauker.docbook mit NetBeans bearbeiten. Es empfiehlt sich sehr, NetBeans so zu konfigurieren, dass alle Dateien, die auf „docbook“ enden, als XML-Dateien behandelt werden. Dann stellt NetBeans Syntaxhervorhebungen und XML-Überprüfungen für die Pauker-Onlinehilfe bereit. Fügen Sie einfach den Eintrag „docbook“ zu „ ToolsOptionsAdvanced OptionsIDE ConfigurationSystemObject TypesXML ObjectsExtensions and MIME Types “ hinzu.

Pauker verwendet JavaHelp für die Anzeige des Handbuches. Weitere Informationen zu JavaHelp finden Sie auf der folgenden Webseite: https://javahelp.dev.java.net

Um die Datei Pauker.docbook in JavaHelp umzuwandeln, verwenden wir XSLT. Weitere Informationen zu XSLT finden Sie auf der folgenden Webseite: http://www.w3.org/TR/xslt

Die Umwandlung der Pauker DocBooks in JavaHelp für jede unterstützte Sprache ist ziemlich komplex. Deswegen wurde dafür das Ant-Target „1_create-docs“ geschrieben, das alle notwendigen Schritte automatisch ausführt (siehe nächstes Bild):

Dieses Ant-Target sollte auf allen aktuellen Linux-Distributionen laufen, wenn Sie die das Paket „ xsltproc “ installiert haben. Weitere Informationen zum Schreiben von Ant-Targets finden Sie auf der folgenden Webseite: http://ant.apache.org

Damit das Ergebnis der Übersetzung begutachtet werden kann, muss Pauker nun mit der aktualisierten Übersetzung gestartet werden. Dazu muss wieder die Taste F6 gedrückt werden.

Damit die neue Übersetzung angezeigt wird, muss sie mit der Sprache des laufenden Systems übereinstimmen. Wenn Sie die Sprache ihres laufenden Systems nicht umstellen können oder wollen, müssen Sie Ihr Pauker-NetBeans-Projekt umkonfigurieren. Dazu klicken Sie mit der rechten Maustaste auf das Projekt „Pauker“ und wählen den Menüeintrag „ Properties “.

Im Projekteigenschaften-Dialog können Sie in der Kategorie „Run“ bereits existierende Sprachkonfigurationen in der Auswahlbox in oberen Teil des Dialoges auswählen. Falls Ihre Sprachkonfiguration noch nicht existiert, könne Sie eine neue Konfiguration hinzufügen und die VM-Optionen -Duser.language=<Sprachkürzel> und -Duser.country=<Länderkürzel> setzen.

Danach können Sie Pauker durch Drücken der Taste F6 starten.

Sie können mit der Konfigurationsauswahlbox in der NetBeans-Werkzeugleiste einfach zwischen verschiedenen Sprachkonfigurationen umschalten:

4.5.2. Übersetzungen hinzufügen

Möchte man jedoch nicht nur eine bereits bestehende Übersetzung erweitern oder korrigieren, sondern eine neue Übersetzung hinzufügen, so muss man mit der rechten Maustaste auf die Datei Strings.properties klicken und den Menüpunkt „ Add Locale... “ auswählen.

Damit die neue Übersetzung in möglichst allen Ländern verwendet werden kann, in denen diese Sprache gesprochen wird, sollte auf eine weitere Spezialisierung (besonderes Länderkennzeichen oder Variante) zunächst verzichtet werden.

Zusätzlich zur Datei Strings_<Sprachkürzel>.properties sollten Sie eine neue Übersetzung der Dankesliste mit folgenden Schritten erstellen:

  1. wählen Sie die Datei credits.html aus

  2. kopieren Sie die Datei, z.B. durch Drücken von Ctrl+C

  3. wählen Sie das Paket „pauker“ aus

  4. fügen Sie die Datein ein, z.B. durch Drücken von Ctrl+V

  5. benennen Sie die Datei credits_1.html um, z.B. indem Sie sie mit der rechten Maustaste anklicken und den Menüeintrag „ Rename... “ auswählen und den Dateinamen zu credits_<Sprachkürzel>.html ändern. (d.h. wenn Sie die Übersetzung für Italienisch hinzufügen, verwenden Sie credits_it.html)

In Ihrer neuen Datei Strings_<Sprachkürzel>.properties müssen Sie den Wert für „About_Message_File“ so anpassen, dass er auf Ihre neue Dankesliste credits_<Sprachkürzel>.html zeigt.

Die nächste Datei, die Sie hinzufügen sollten, ist eine Übersetzung der Softwarelizenz. Kopieren Sie die Datei license.html und benennen Sie sie für Ihre Sprache um (gleiche Arbeitsschritte wie bei der Dankesliste - siehe oben). Bitte beachten Sie, dass es auf der „Unofficial GNU License Translations Page“: http://www.gnu.org/licenses/translations.html bereits einige inoffizielle Übersetzungen der Softwarelizenz in verschiedene Sprachen gibt.

In Ihrer neuen Datei Strings_<Sprachkürzel>.properties müssen Sie den Wert für „License_File“ so anpassen, dass er auf Ihre neue Datei license_<Sprachkürzel>.html zeigt.

Zum Schluss sollten Sie eine Übersetzung dieser Hilfe hinzufügen:

  1. erstellen Sie ein neues Verzeichnis für Ihre Sprache im Verzeichnis doc/docbook/

  2. kopieren Sie die Datei Pauker.docbook von einer anderen Sprache in Ihr Verzeichnis

  3. übersetzen Sie Ihre Kopie von Pauker.docbook

  4. fügen Sie die Umwandlung zu JavaHelp zum Ant-Task „1_create-docs“ hinzu