Das KDevelop-Programmierhandbuch: Leitfaden zur C++-Anwendungsentwicklung fr das K Desktop Environment (KDE) mit Hilfe der KDevelop-IDE in der Version 1.2 | ||
---|---|---|
Zurück | Kapitel 11. Internationalisierung | Vor |
Selbstverstndlich erleichtert KDevelop das Bereitstellen der Anwendung in verschiedenen Sprachen. Wenn Sie ein neues KDE-Projekt anlegen, wird ein Verzeichnis namens po in Ihrem Projekthauptverzeichnis erstellt. Dabei wird eine Datei namens &;anwendungsname&;.pot abgelegt. Dieses File enthlt alle vom i18n()-Makro umschlossenen Zeichenketten aus Ihrem Quellcode. Von Zeit zu Zeit bietet es sich an, die pot-Datei mit "Projekt"-"Meldungen erstellen und verbinden" zu aktualisieren.
Untersttzung fr eine Sprache fgt man ber den Menpunkt "Projekt"-"Neue bersetzung hinzufgen" ein. Im nun erscheinenden Sprachauswahldialog suchen Sie sich die passende Sprache aus und drcken OK. Damit wird das entsprechende &;sprache&;.po-File im po-Verzeichnis erstellt. Beginnen Sie mit der bersetzung der po-Datei, indem Sie sie in der Dateiansicht (RFV -- "Real File View") unterhalb des po-Directories oder aus dem LFV-Reiter unter "bersetzungen" anwhlen. Falls Sie KTranslator installiert haben, steht dieser nun im "Werkzeuge"-Fenster zur Verfgung, anderenfalls erscheint die Textdatei in der Karteikarte "Header/Ressource-Dateien". KTranslator vereinfacht die bersetzung insofern, als dass es in Ihrer lokalen KDE-Installation vorhandene bersetzungen scannt und Ihnen diese Zeichenketten zur Wiederverwendung zur Verfgung stellt.
Editieren Sie das po-File von Hand, so lohnt es sich, zunchst ein Beispiel anzusehen:
#: kscribble.cpp:619 msgid "Opens an existing document" msgstr "" |
Es zeigt eine Zeichenkette, die aus der Datei kscribble.cpp und dort aus Zeile 619 stammt. Die Tags msgid and msgstr enthalten das ganze Geheimnis der bersetzung: msgid bezeichnet den originalen, msgstr nimmt den bersetzten String auf. Achten Sie hier auf Escape-Sequenzen wie \n or \t, die auch in der bersetzung wieder auftauchen mssen. Nachdem ein deutscher bersetzer seine Arbeit getan hat, shen die obigen Zeilen folgendermaen aus:
#: kscribble.cpp:619 msgid "Opens an existing document" msgstr "Öffnet ein existierendes Dokument" |
Das wre schon alles, was es bei der bersetzung zu beachten gibt, solange Sie darauf achten, die genderte po-Datei auch abzuspeichern. Wenn make im po-Verzeichnis seine Arbeit verrichtet, wird auch diese Datei abgearbeitet. Fehlermeldungen treten an dieser Stelle auf, wenn die bersetzung nicht mit dem Original konsistent ist, sprich: wenn Escape-Sequenzen vergessen wurden. In diesem Fall berichtigen Sie die entsprechende Zeichenkette und prfen, dass make nun fehlerfrei luft.
Lassen Sie Vorsicht walten bei kaufmnnischen Und-Zeichen innerhalb von Zeichenketten. Der Buchstabe nach dem wird in Verbindung mit der ALT-Taste als Shortcut oder Keyboard-Akzellerator gebraucht, um den Tastaturfokus schneller zu einem ins Auge gefassten Menpunkt oder Button zu dirigieren. Wenn das Akzellerator-Zeichen mehr als einmal in Reichweite ein und desselben Keyboard-Fokus auftaucht (das wird von Fall zu Fall das Hauptwidget oder ein Dialog sein), kann auer dem ersten Ziel kein weiteres mehr ber den Shortcut angesprochen werden. Daher haben sogar bersetzer eine gewisse Verantwortung dafr, das die Anwendung in ihrer Sprache vernnftig verwendbar bleibt. Da es keinerlei Garantie dafr gibt, dass der Originalbuchstabe in der bersetzung berhaupt auftaucht, mssen bersetzer mit Bedacht einen passenden Shortcut aussuchen und die Anwendung in der bersetzung vor allem sehr sorgfltig auf Fehlfunktionen testen.