Übersetzen

Hier kommen wir endlich zum wichtigsten Teil. Eine einfache Distribution von GNOME in der Version 2.4 enthält mehr als 17000 einzelne Zeichenketten. Diese Zahl beinhaltet nicht Evolution, Galeon, eine Messaging-Anwendung oder andere Dinge, die möglicherweise als notwendig angesehen werden. Es gibt eine Vielzahl von Taktiken und Methoden, die hier angewendet werden können. Letztlich laufen aber alle auf die Übersetzung dieser Zeichenketten hinaus.

Verschiedene Ansätze

Es gibt mehrere Möglichkeiten zur Übersetzung. Einige Gruppen arbeiten direkt an den .po-Dateien, entweder mit einem einfachen Texteditor oder mit speziellen, GUI-basierenden Werkzeugen. Die fertigen Dateien werden dann in das GNOME CVS eingepflegt. Andere Gruppen arbeiten mit web-basierenden Systemen. Alle diese Möglichkeiten habe Vor- und Nachteile.

Eine ausführliche Beschreibung der .po Dateien befindet sich am Ende dieses Abschnitts und ist der längste Teil. Sollten Sie nicht beabsichtigen, etwas anderes zu nutzen, können Sie auch direkt zum Abschnitt .po-Dateien springen.

Web-Schnittstellen

Eine Web-Schnittstelle stellt eine Liste von Zeichenketten zur Verfügung und ermöglicht dadurch die Übersetzung. In bestimmten Zeitabständen werden die gesammelten Übersetzungen zurück in das CVS geschrieben. Der Vorteil hierbei ist, dass nur der Koordinator und der Verantwortliche für die Web-Schnittstelle wissen müssen, wie .po-Dateien erstellt werden. Außerdem lässt diese Lösung auch Hilfe von Leuten zu, die weder GNOME noch einen passenden Editor zur Verfügung haben. Ein Nachteil ist, dass die Beitragenden nicht den Rest der Dateien zu sehen bekommen. Das könnte zu Inkonsistenzen zwischen den einzelnen Übersetzungen führen. Ein weiteres Problem sind Kommentare zu einzelnen Zeichenketten, die der Entwickler an den Übersetzer richtet, da sie nicht immer angezeigt werden.

Zu bereits vorhandenen Web-Schnittstellen zählen folgende:

Prevod
Kyfieithu
Das System der chinesischen Gruppe. Login: „i18n“, kein Passwort

po Dateien

Es gibt eine exzellente Anleitung, die beschreibt wie man Verzeichnisse aus dem CVS auscheckt, .pot-Dateien erstellt, diese in .po-Dateien umwandelt und wieder in das CVS eincheckt: Using GNOME CVS as a Translator. Sie erklärt alle Einzelheiten zur Benutzung der gettext Werkzeuge. Weil sie ca. 90% der Arbeiten mit .po-Dateien beschreibt, sollte sie auf jeden Fall gelesen werden. Die Beschreibungen werden an dieser Stelle nicht wiederholt. Stattdessen folgen hier einige zusätzliche Kommentare, die diese Anleitung keinesfalls ersetzen.

.po-Dateien sind auch über die Statusseite des GNOME Übersetzungsprojekts für die jeweilige Sprache erhältlich. Manchmal werden dabei allerdings spezielle Zeichen, die nicht im ASCII-Zeichensatz enthalten sind, entstellt. Es ist aber eine nützliche Alternative zum CVS.

Eine .po-Datei ist eine Liste von ursprünglichen Zeichenketten der Anwendung und Freiraum für die übersetzte Version. Zusätzlich dazu enthält sie noch einen Kopf mit folgenden Daten:

Project-Id-Version

Hier steht der Name des Pakets und gegebenenfalls die Version, für die die Übersetzung gültig ist.

POT-Creation-Date, PO-Revision-Date

Das „POT-Creation-Date“ ist das Datum, an dem die Vorlage erstellt wurde. Dieses Feld wird automatisch ausgefüllt. Das „PO-Revision-Date“ ist das Datum der letzten Änderung und muss von Hand geändert werden.

Language-Team

Dieses Feld sollte die Sprache und am besten auch eine Kontaktadresse der Übersetzergruppe enthalten.

Content-Type

Dieses Feld beschreibt den Zeichensatz und muss auf UTF-8 gesetzt werden. Es ist auch zwingend notwendig, dass die fertige Datei im UTF-8 Format vorliegt. Auf Rechnern mit UNIX oder UNIX-verwandten Betriebssystemen gibt file Auskunft darüber, welches Format eine Datei hat. Sollte die vollständige gettext-Umgebung auf Ihrem System installiert sein, können Sie auch msgfmt -cv -o /dev/null dateiname.po zum überprüfen verwenden. Sollte die Datei nicht im UTF-8 Format vorliegen, wird msgfmt -cv eine entsprechende Fehlermeldung ausgeben.

Auch Kommentare sind in der Datei enthalten. Diese sind durch das Zeichen # am Zeilenanfang gekennzeichnet. Ein Kommentar wie z.B. #,c-format weist darauf hin, dass die Zeichenkette Teile enthält, die von der Anwendung selbst ausgefüllt werden. Ein Beispiel dafür ist das Uhr-Applet aus gnome-panel. Dort gibt es eine Zeichenkette „%H:%M“. Diese kann einfach durch kopieren „übersetzt“ werden. Sie wird zur Darstellung der Systemzeit benötigt, wobei %H für die Stunde und %M für die Minuten steht.

In diesem Artikel gibt es einen separaten Anhang zu allgemeinen C-Format Zeichen.

Möglicherweise sind auch Kommentare des Programmieres für die Übersetzer enthalten. In gnome-panel zum Beispiel steht folgender Kommentar kurz nach der oben erwähnten Zeichenkette:

#. translators: reverse the order of these arguments
#. *              if the time should come before the
#. *              date on a clock in your locale.

Ebenso sind Kennzeichnungen für Zugriffstasten, im folgenden Hotkeys genannt, zu ersetzen. Durch diese Hotkeys können Menüs und andere Elemente über die Tastatur bedient werden, ohne die Maus zu benutzen. Sie sind mit einem Unterstrich vor dem Buchstaben markiert, der zusammen mit der Alt-Taste den Hotkey bildet. Das wird anfangs zu Widersprüchen und Kollisionen führen, weshalb es möglicherweise sehr wichtig ist, die Hotkeys für gtk+ als erstes zu übersetzen. Diese wirken sich auf jede einzelne GNOME-Anwendung aus. Danach können Sie die übrig gebliebenen Zeichen benutzen und die beste Kombination für den jeweiligen Fall suchen. Sollten trotzdem einmal zwei oder mehrere Menüeinträge den gleichen Hotkey besitzen, ist das nicht weiter tragisch. Ab Version 2.4 lässt es GNOME zu, zwischen diesen Einträgen durch mehrmaliges Betätigen des Hotkeys zu springen.

Beschreibungen von GConf-Schlüsseln können auch enthalten sein. Normalerweise hat jeder Schlüssel eine kurze und eine detailliertere Beschreibung. Zeichenketten dieser Art erkennen Sie an ihrer Herkunft. Sie sind üblicherweise in Dateien mit der Endung .schemas.in.h enthalten.

Bei der Übersetzung von Schlüsselbeschreibungen sollten Sie Beispielausdrücke für den Schlüssel, eingeschlossen in doppelten Anführungszeichen, nicht mit übersetzen. Ein Beispiel:

#: src/gnome-terminal.schemas.in.h:70
msgid ""
"Default color of terminal background, as a color specification (can be HTML-"
"style hex digits, or a color name such as \"red\")."
msgstr ""
"Die voreingestellte Hintergrundfarbe des Terminals als Farbangabe (kann als "
"HTML-artige Hex-Zahl oder einer Schriftfarbe wie »red« angegeben werden)."

Hier ist red der Beispielausdruck und muss unverändert in die Übersetzung übernommen werden. Da doppelte Anführungszeichen in .po-Dateien eine besondere Bedeutung haben, werden diese mit einem Backslash maskiert. Bei deutschen Übersetzungen hat man sich dazu entschieden, statt der doppelten Anführungszeichen die umgekehrten französischen Anführungszeichen (AltGr-x bzw. AltGr-y) zu verwenden.

Falls einmal englische Beschreibungen auftauchen, die unverständlich sind, sollte ein Fehlerbericht für die entsprechende Anwendung erstellt werden. Auch wenn eine Beschreibung nicht sinnvoll übersetzt werden kann sollte das getan werden. Übersetzer im Ganzen erstellen viele solcher Meldungen, da sie in der Regel die Ersten sind, denen so etwas auffällt. Je eher solche Probleme angezeigt werden, desto besser. Falls Sie den Sinn der Beschreibung doch noch erkennen, werden Sie es möglicherweise vergessen. Solche Fehler zu melden, bewahrt andere Übersetzer davor, die gleichen Probleme zu haben.

Auf keinen Fall die msgid-Zeilen verändern

Die englischen Zeichenketten in der Datei dürfen Sie nicht verändern. Geänderte msgid-Zeichenketten werden durch die Programme, die die Übersetzung in die Anwendung integrieren, nicht abgefangen. Die Änderungen an der ursprünglichen Zeichenkette gehen verloren und die Übersetzung wird möglicherweise nicht eingefügt.