Benutzer-Werkzeuge

Webseiten-Werkzeuge


i18n

Internationalisierung

Um die graphische Oberfläche (GUI) von JAG3D sowie den Modulen in mehreren Sprachen betrieben zu können, wurden alle relevanten Bezeichnungen in einer Java-Properties-Datei ausgelagert. Beim Start von JAG3D wird die Systemsprache ausgelesen und - sofern vorhanden - die zugehörige Properties-Datei eingelesen. Die Rückfallebene (Default-Sprache) ist Deutsch. Sollte demnach eine Sprachdatei fehlen oder nicht vollständig übersetzt sein, wird auf die deutschen Phrasen zurückgegriffen. Diesen Umstand kann man ausnutzen, indem sprachübergreifende Bezeichnungen nur in der deutschen Datei vorgehalten werden. Beispiel 1 enthält bspw. die Instrumenten- und Zielpunkthöhe (ih und th), die in der englischen Übersetzung nicht enthalten sind.

Bearbeitung von Properties-Dateien

Properties-Dateien sind reine Textdateien und können mit jedem beliebigen Editor erzeugt und bearbeitet werden. Die inhaltliche Struktur dieser Dateien setzt sich aus Schlüssel-Wert-Paaren zusammen.

Beispiel 1: Auszug aus Properties-Datei mit Unicode

ObservationTableModel.col0 = Aktiv
ObservationTableModel.col1 = Standpunkt
ObservationTableModel.col2 = Zielpunkt
ObservationTableModel.col3 = ih [m]
ObservationTableModel.col4 = th [m]
ObservationTableModel.col6 = \u03c30

Um Probleme mit Umlauten und Sonderzeichen zu vermeiden, sollten diese mittels Unicode ausgedrückt werden. Im Auszugsbeispiel wird σ durch \u03c3 repräsentiert. Um für ein bestimmtest Zeichen den zugehörigen Unicode zu bekommen, kann unter Windows das mitgelieferte Programm CharMap verwendet werden (vgl. Abbildung 1) .

CharMap zur Unicode-Bestimmung unter Windows
Abbildung 1: CharMap zur Unicode-Bestimmung unter Windows

Nach Auswahl des gewünschten Zeichens wird unten links der zugehörige Code ausgeben und kann in der Properties-Datei verwendet werden. Für weitere Formatierungen wie Hoch- und Tiefgestellt erlaubt JAVA bei einigen Swing-Komponenten rudimentären HTML-Code.

Beispiel 2: Auszug aus Properties-Datei mit HTML-Code

DataManager.addPar3  = <html>a<sub>Add</sub> [m]</html>
DataManager.addPar4  = <html>k<sub>Ref</sub> [-]</html>

Der Text ist hierzu einfach in <html>-Tags einzuschließen. Für Sonderzeichen kann alternativ zum Unicode auch auf die entsprechenden HTML-Entities zurückgegriffen werden. Das im Beispiel 1 kodierte σ könnte demnach auch durch <html>&sigma;</html> ausgezeichnet werden.

Namenskonvention

Properties-Datei haben die Endung .properties. Der Dateiname beginnt mit dem Modulnamen als Präfix bspw. jag3d oder geotra. Übersetzungen müssen als Suffix das Länderkürzel nach ISO 639 enthalten bspw. jag3d_en.properties für die englische Übersetzung.

Ausgabesprache erzwingen

Unabhängig von den im System vorgegebene Spracheinstellungen kann die Ausgabesprache der GUI erzwungen werden. Hierfür muss beim Aufruf von JAG3D der Parameter -Duser.language=de (für Deutsch) gesetzt werden. Integrierte Module werden automatisch mit übersetzt, sofern eine Sprachdatei verfügbar ist.

Übersetzungen

i18n.txt · Zuletzt geändert: 25.10.2013 16:15 von Michael Loesler