In nächster Zeit wird die Ausgabe von museum-digital vorraussichtlich in einige zusätzliche Sprachen übersetzt. Aus diesem Anlass möchte ich hier den Prozess des Übersetzens von museum-digital vorstellen.
Die Übersetzungen müssen derzeit an mehreren Stellen geschehen. Für alle Textstücke, die im serverseitig ablaufenden Code verwendet werden, haben wir ein eigenes Übersetzungstool. Zusätzlich gibt es (weniger) Übersetzungsvariablen, die in JavaScript-Dateien verwendet werden, die im Browser des Seitenbenutzers ausgeführt werden. Diese müssen noch direkt im JSON-Format bearbeitet werden.
Das Übersetzungstool
Zum Beginn des Übersetzens erhält jeder Übersetzer einen Account in unserem Übersetzungstool. Mit diesem Account sind dem Nutzer zwei Sprachen zugeordnet: Einerseits die Ausgangssprache, aus der heraus übersetzt wird, und andererseits die Zielsprache, in die Übersetzt wird.
Nach dem Einloggen erreicht man zuerst eine Übersicht der übersetzbaren Dateien, in Kacheln gruppiert nach ihrem Anwendungsfeld („Backend“, „Frontend“). Jede Kachel enthält eine Liste von Dateinamen. Durch einen Klick auf einen dieser erhält man die Möglichkeit, die jeweilige Datei in einer Tabelle zu bearbeiten. Die Dateien sind dabei grob ihrem Anwendungszweck nach benannt: home.json im Bereich „Frontend“ enthält Variablen, die auf der Startseite der Ausgabe von museum-digital verwendet werden.
Die Tabellen in denen nun eine Datei übersetzt wird sind immer gleich aufgebaut. In der linken Spalte steht der Name der jeweiligen Übersetzungsvariable. In der Mittigen steht der Inhalt der Variable in der Ausgangssprache. Rechts befindet sich ein Textfeld, in das die Übersetzung eingetragen werden kann. Direkt unter der Tabelle befindet sich ein „Save“-Button, mit dem die Übersetzungen dann auch final eingetragen sind.
Meine Übersetzungen sind nicht gleich sichtbar?
Übersetzungen, die so gemacht wurden, sind nicht sofort sichtbar. Weil die Übersetzungsdateien auch HTML-Markup enthalten können, das falsch geschrieben die Darstellung der Seite stören könnte, haben wir eine Überprüfungsphase zwischengeschaltet.
Sind einige Dateien übersetzt, gibt der oder die Übersetzende einem Administrator bescheid. Dieser kann die neuen Übersetzungen dann in einem gesonderten Administrationsbereich freischalten. Technisch gesehen bedeutet das, dass die .json-Dateien in .php-Dateien überführt werden, die dann direkt durch das Programm aufgeführt werden können. Um einen Überblick über die Änderungen zu erhalten, werden diese dem Administrator im „Freischalt-Bereich“ angezeigt.
Weitere Übersetzungen
Nach der Übersetzung mit unserem Übersetzungstool verbleiben einige Textstücke, die in browserseitig ausgeführtem Code verwendet werden. In diesem verwenden wir eine andere Struktur für das Laden der Übersetzungen: Statt immer nur die Sprache zu laden, die gerade benötigt wird, werden immer alle verfügbaren Sprachvarianten geladen. Statt in eigenen Dateien befinden sich die Übersetzungen in demselben Script, wie der Code, der sie verwendet. Deshalb können diese Textstücke bisher noch nicht mit dem Übersetzungstool übersetzt werden. Stattdessen müssen diese direkt im Code übersetzt werden.
Damit dies geschehen kann, sendet ein Administrator den Übersetzenden die jeweiligen Code-Schnipsel per Mail zu, in die die Übersetzung eingetragen werden muss. Nachdem diese zurückgeschickt und in den Code eingefügt wurden, ist die Übersetzung beendet.