Howto - die OmegaT Textexport-Funktion benutzen (Skripts)

Seit Version 2.0.1 hat OmegaT eine Textexportfunktion. Dieses HOWTO beschreibt die Funktion und mögliche Anwendungen dafür. Zusätzlich enthält das Paket te-scripts.zip einige sehr einfache Tcl/Tk-Skripte, die die Verwendung der Funktion veranschaulichen sollen.

Zweck

Die Textexportfunktion exportiert Daten aus dem bestehenden OmegaT-Projekt in reine Textdateien. Derzeit sind die exportierten Daten:

- der Inhalt des Quelltexts des Segments, wenn das Segment geöffnet ist
- der Inhalt des Zieltextes des Segments, wenn das Segment geöffnet ist
- markierter Text im Zieltext, wenn das entsprechende Tastaturkürzel gedrückt ist

Programmierer und Skriptersteller können die Dateien, die diesen Text enthalten, nutzen, um OmegaT weitere Funktionen hinzuzufügen. Sie brauchen keine Java-Kenntnisse; Stattdessen können die meisten, wenn nicht gar alle Programmiersprachen benutzt werden und nützliche Funktionen sogar mit relativ begrenzten Programmierkenntnissen erreicht werden.

Nutzung der Textexportfunktion

Um die Textexportfunktion zu nutzen, müssen Sie diese zuerst in OmegaT aktivieren.

Optionen > Editierverhalten

Aktivieren Sie dann das Kästchen "Das Segment in eine Textdatei exportieren".

Die Dateien erscheinen im Unterordner /script im Ordner OmegaT-Benutzerdateien (für den Speicherort des Ordners OmegaT-Benutzerdateien auf Ihrem Betriebssystem, siehe das Benutzerhandbuch (F1 in OmegaT) > Dateien und Ordner > Benutzerdateien):

source.txt - enthält den Quelltext des Segments
target.txt - enthält den Zieltext des Elements
selection.txt - enthält den vom Benutzer markierten Text, wenn Strg + Umschalt + C gedrückt oder Bearbeiten > Auswahl exportieren ausgewählt wird.

Der Inhalt der Dateien wird überschrieben, entweder, wenn ein neues Segment geöffnet wird (source.txt und target.txt) oder wenn eine neue Auswahl exportiert wird (selection.txt). Die Dateien sind unformatierte reine Textdateien.

Nutzung der Beispielskripte

Zuerst muss Tcl/Tk installiert werden, wenn es das nicht schon ist. Tcl/Tk kann aus einer Reihe von Quellen erhalten werden; tcl.activestate.com ist eine beliebte Quelle. Mac OS X-Benutzer sollten Tcl/Tk von ihrem Systemmedium installieren und Linuxbenutzer sollten es in den Repositories ihrer Distribution finden, falls es nicht schon standardmäßig installiert ist. (Bemerkung für Ubuntu-Benutzer: Die Schriftimplementierung der Standard-Tcl/Tk-Installation in Ubuntu ist zur Zeit (Version 9.10) erschreckend, kann aber behoben werden.)

Um die Funktionsweise des Skriptcodes zu verdeutlichen, führt jedes Skript im Wesentlichen nur eine Funktion aus. Wenn mehrere Funktionen gleichzeitig in der Praxis verwendet würden, wäre es effizienter, sie in einer einzigen Skriptdatei zu kombinieren.

Die Beispielskripte hier starten alle ein Fenster, aber Skripte, die Funktionen im Hintergrund ausführen, sind durchaus denkbar.

Um ein Skript zu starten:

Kopieren Sie das Skript in den OmegaT-"Skriptordner", d. h. den Ordner, der source.txt usw. enthält. (Die Skripte können prinzipiell überall gespeichert werden, aber dann müssen sie unter Hinzufügen des Skriptpfades bearbeitet werden.

Abhängig davon, wie Ihr System konfiguriert ist, kann es möglich sein, die Skripte einfach durch Mausklick zu öffnen. Alternativ:

Öffnen Sie ein Kommandozeilenfenster (DOS-Prompt, Terminal, Konsole).

Ändern Sie den Ordner (das Verzeichnis) zum Skriptordner, z. B. (auf Windows XP-Systemen):

cd C:\Dokumente und Einstellungen\Benutzername\Anwendungsdaten\OmegaT\script

Starten Sie das Skript mit "wish" gefolgt vom Dateinamen des Skripts, z. B.:

wish te-basic-source.tcl

Beschreibung der einzelnen Skripts

te-basic-source

Dieses Skript zeigt den Quelltext in einem separaten Fenster an. Als solches tut es nichts, was nicht bereits im OmegaT-Editor getan wurde. Es soll verdeutlichen, wie der Text aus einer Skriptdatei extrahiert und für weitere Skripte zur Verfügung gestellt werden kann. Der Inhalt des Skriptfensters ist editierbar und kann kopiert und wieder in den OmegaT-Editorbereich eingefügt werden.

te-basic-target

Wie te-basic-source, aber für den Zieltext.

te-warning

Neben der Anzeige des Quelltexts bietet dieses Skript eine Eingabebox, in welche der Benutzer eine Zeichenkette eingeben kann (z. B. ein Wort). Wenn ein OmegaT-Segment geöffnet wird, das diese Zeichenkette enthält, gibt das Skript eine Warnung aus. Die Warnung hat die Form, dass der Text im Skriptfenster gelb hervorgehoben wird. Zusätzlich, wenn von der Hardware und vom Betriebssystem unterstützt (das ist nicht immer der Fall), ertönt ein Piepton.

Ein Beispiel für die Verwendung dieser Funktion ist wie folgt. Der Übersetzer hat einen Text, der den Ausdruck "abc" enthält, und hat einen ersten Entwurf davon abgeschlossen, der "abc" als "abc" übersetzt. Er entdeckt dann, dass "abc" als "def" übersetzt werden sollte. Anstatt alle Fälle von "abc" zu finden und sie vor dem Fortfahren zu korrigieren (was möglich ist, aber Nachteile hat), könnte er einfach entscheiden, sie im Laufe des nächsten Entwurfs zu korrigieren. In diesem Fall kann eine "Erinnerung" in jedem relevanten Segment hilfreich sein.

te-notags

Wie sein Name vermuten lässt, entfernt dieses Skript automatisch die Tags aus einem OmegaT (Ziel-)Segment. Dies ist nützlich, wenn taglastige Segmente auf dem Bildschirm überprüft werden, da beispielsweise fehlende oder doppelte Leerzeichen leicht übersehen werden.

te-tags

Dieses Skript zeigt das Zielsegment in einer bestimmten Schriftart (fest im Skript codiert, kann jedoch bearbeitet werden) anstelle der Standardschriftart an. Die Tags werden in einer anderen Schriftart angezeigt, um sie weniger aufdringlich zu machen. Im Gegensatz zu te-notags ist es möglich, dass der Übersetzer in diesem Fenster arbeitet und dann den Inhalt vollständig in den OmegaT-Editorbereich kopiert und dort einfügt.

te-gloss-highlight

Dieses Skript liest den Inhalt einer Glossardatei und markiert alle darin enthaltenen Begriffe im aktuellen (Quell-)Segment. Die Glossardatei muss aus zwei Spalten bestehen, den Namen GLOSS.utf8 haben und im /script-Ordner enthalten sein.

te-gloss-subst

Wie bei te-gloss-highlight, aber ersetzt die Quelltermina im Glossar durch die Zieltermina.

te-gloss-subst-highlight

Kombiniert die Ersetzungs- und Markierungsfunktion von te-gloss-highlight und te-gloss-subst.

In Tcl/Tk programmieren

Tcl/Tk hat eine Anzahl von Vorteilen als Skriptsprache:

- Es ist leicht zu lernen
- Es ist kostenlos
- Es ist weit verbreitet, so dass Hilfe im Internet gefunden werden kann.
- Die Tk-Komponente macht es leicht, grafische Benutzeroberflächen zu erstellen.
- Dafür sind viele gute Bücher und andere Ressourcen verfügbar (zumindest in Englisch).
- Es ist zeichenorientiert, so dass es sich besonders für Anwendungen eignet, die Text beinhalten.

Für Anfänger sind verschiedene Online-Tutorials verfügbar, so wie:

www.dci.clrc.ac.uk/Publications/Cookbook/index.html
www.tcl.tk/man/tcl8.5/tutorial/tcltutorial.html
www.tutorialspoint.com/tcl-tk/

Wenn es Ihnen ernst damit ist, Tcl/Tk zu lernen, ist "Practical Programming in Tcl and Tk" von Brent Welch, ISBN: 0-13-038560-3 sehr empfohlen. Dies ist wahrscheinlich ein wenig zu technisch für komplette Neulinge in der Programmierung, aber nachdem Sie eines der Online-Tutorials durchgearbeitet haben, sollten sie es nützlich finden.

Copyright Marc Prior 2009-2011