Automatisierte Übersetzungen mit Adobe InDesign

Wieder liegt eine anstrengende, aber erfolgreiche CUBE-Saison hinter uns. Wie jedes Jahr haben wir auch im Sommer 2015 versucht, unsere Arbeitsabläufe zu optimieren. Bei der Produktion der diesjährigen Workbooks konnten wir neues Wissen schöpfen, was die automatische Übersetzung von Texten in Adobe InDesign betrifft.

Das Problem

Die Herausforderung, die wir bei den Bike-Workbooks hatten, war das Datenhandling in drei Sprachen. Unsere InDesign-Dokumente, deren Inhalte zu großen Teilen über EasyCatalog bezogen wurden, hatten neben den Gestaltungs- und Bilderebenen auch drei Ebenen für deutsche, englische und italienische Texte. 

 Alle Spezifikationen der Räder werden zunächst auf deutsch aufgebaut. Anschließend wird die deutsche Sprachebene dupliziert, die EasyCatalog-Felder der deutschen mit denen der nächsten Sprache ersetzt. Fehlen nur noch die Bezeichner der Spezifikationen.

Der Gedanke

Wir wollten erreichen, dass nicht immer dann, wenn ein neues Rad ins Layout eingefügt wurde oder wenn sich an einem Rad Spezifikationen ändern, wir händisch die Bezeichner der Räder ändern müssen. Sei es über copy & paste oder die Suchen/Ersetzen-Funktion.

Die Lösung

Ganz ohne Suchen/Ersetzen geht es auch bei unserer Übersetzungs-Lösung nicht. Angelegt wird eine GREP-Abfrage: Im Suchen-Feld wird der deutsche Bezeichner eingetragen, im Ersetzen-Feld der der gewünschten Zielsprache - bei uns englisch. 

Beim Format wird noch der Stil des (zuvor angelegten) Absatzformates angeben. Dies bewirkt, dass auch nur dort der zu ersetzenende Begriff ausgetauscht wird, wo er ausgetauscht werden soll. Das Absatzformat sollte dementsprechend auch nur bei den Bezeichnern der Spezifikationen verwendet werden. 

 Anschließend wird die Suchabfrage über das Disketten-Symbol gespeichert. Wir verwenden hier den deutschen Begriff mit der Zielsprache als Kürzel, um den Überblick zu behalten. Probiert man nun die Abfrage aus so wird der gewünschte Begriff bei allen Vorkommnissen im Dokument geändert.

JavaScript kommt ins Spiel

Damit nicht für viele Suche/Ersetzen-Abfragen die Aktion ausgeführt werden muss haben wir uns über das ExtendScript Toolkit von Adobe eine JavaScript-Anfrage erstellt. Zwei Zeilen pro Suchbegriff reichen aus, um eine zuvor gespeicherte GREP-Abfrage auszuführen: 

 app.loadFindChangeQuery("Rahmen EN", SearchModes.GREP_SEARCH); app.activeDocument.changeGrep(); 

 In Zeile 1 muss nur der genaue Name der Suchabfrage eingegeben werden, der Rest wird automatisch gesteuert. In beliebiger Anzahl können nun weitere Suchabfragen zum JavaScript-Code hinzugefügt werden. Die .jsx-Datei wird danach in den Programmordner von InDesign im Unterordner Scripts > Script Panel gespeichert.

Die Show beginnt

Beim nächsten Start von InDesign befindet sich die erstellte JavaScript-Aktion bereits im Programm. Die Scripte sind unter dem Menüpunkt Fenster > Hilfsprogramme > Scripte zu finden. Mit einem Doppelklick auf die Aktion führt InDesign alle hinterlegten Suchabfragen im Dokument aus. 

 Ein letzter Tipp: Damit nicht in allen Sprachen die Bezeichner ersetzt werden sollten die Ebenen der anderen Sprachen gesperrt sein.