2.3 Konvertieren von TMX in Tabelle - mkappus1/DatenmanagementMTHS24 GitHub Wiki
In diesem Abschnitt erfahren Sie, wie Sie Translation Memorys im TMX-Standardformat in tabellarische Textdateien konvertieren. Diese tabellarischen Textdateien können dann problemlos für das Training von maschinellen Übersetzungsprogrammen verwendet werden.
Für diese Aufgabe werden wir die MTUOC-TMX2tabtxt Skripte und Programme von Antoni oliver von der UOC verwenden, obwohl es viele andere Programme gibt, mit denen wir diese Aktion durchführen können. Sie können die Programme direkt von der Seite von Antoni Oliver oder aus unserer Sammlung manuell herunterladen. Ich gehe davon aus, dass Sie sich in einem Unix-Terminal befinden und diese Programme direkt mit folgenden dem Befehl erhalten können:
git clone https://github.com/mtuoc/MTUOC-TMX2tabtxt.git
Alternativ können Sie auch eine Zip-Datei aus dem Menü herunterladen, das sich öffnet, wenn Sie auf die Schaltfläche Code klicken.
Für diese Aktivität können Sie entweder Ihre eigenen TMX-Dateien verwenden oder die, die wir Ihnen zur Verfügung stellen:
- Eine einzelne TMX-Datei: https://github.com/mtuoc/seminario_online_TAN/blob/main/semana_2/memo.tmx
- Eine Zip-Datei mit 5 TMX-Dateien: https://github.com/mtuoc/seminario_online_TAN/blob/main/semana_2/TMXs.zip
Laden Sie diese Dateien herunter und legen Sie sie in ein Verzeichnis neben den MTUOC-TMX2tabtxt-Skripten. Entpacken Sie die Datei TMXs.zip und es wird ein TMXs-Ordner mit den 5 Dateien darin erstellt.
Bevor Sie die Programme verwenden, vergessen Sie nicht, alle Voraussetzungen zu installieren und zu überlegen, ob Sie eine virtuelle Umgebung erstellen möchten oder nicht.
Um TMX in Text zu konvertieren, ist es wichtig zu wissen, welche Sprachen die TMX-Datei enthält und welche(n) Code(s) es für jede Sprache verwendet. Zu diesem Zweck stehen Ihnen die folgenden Skripte zur Verfügung.
Um die Codes einer einzelnen Datei zu kennen
Wir haben das Programm MTUOC-TMXdetectlanguages.py. Sie können herausfinden, wie Sie es mit -h verwenden:
Verwendung: MTUOC-TMXdetectlanguages.py [-h] -i INPUTFILE
MTUOC-Programm zur Ermittlung der Sprachcodes einer TMX-Datei.
Optionen:
-h, --help diese Hilfemeldung anzeigen und beenden
-i INPUTFILE, --in INPUTFILE
Die TMX-Eingabedatei.
Wenn wir wissen wollen, welche Sprachcodes in memo.tmx enthalten sind, geben wir ein:
python3 MTUOC-TMXdetectlanguages.py -i memo.tmx
en
es
en-US
es-ES
Dies wird für die Konvertierung nützlich sein, wie wir später sehen werden.
Wenn wir die Codes aller tmx-Dateien in einem Verzeichnis wissen wollen, verwenden wir das Programm MTUOC-TMXdetectlanguagesDIR.py, das auch die Option -h hat:
python3 MTUOC-TMXdetectlanguagesDIR.py -h
Verwendung: MTUOC-TMXdetectlanguagesDIR.py [-h] -d INPUTDIR
MTUOC-Programm zur Ermittlung des Sprachcodes aller TMX-Dateien in einem bestimmten Verzeichnis.
Optionen:
-h, --help diese Hilfemeldung anzeigen und beenden
-d INPUTDIR, --dir INPUTDIR
Das Eingabeverzeichnis, in dem sich die TMX-Dateien befinden.
Um nun die Codes der TMX-Dateien im TMXs-Verzeichnis zu erfahren (das sich unter dem Arbeitsverzeichnis befindet, falls nicht, müssen Sie den vollständigen Pfad angeben):
python3 MTUOC-TMXdetectlanguagesDIR.py -d TMXs/
file1.tmx
TMXs/Datei1.tmx
file2.tmx
TMXs/Datei2.tmx
file3.tmx
TMXs/Datei3.tmx
file4.tmx
TMXs/Datei4.tmx
file5.tmx
TMXs/Datei5.tmx
unter
de
en-US
en-US
Konvertierung einer einzelnen Datei
Um eine einzelne tmx-Datei in tabellarischen Text zu konvertieren, verwenden wir das Programm MTUOC-TMX2tabtxt.py:
python3 MTUOC-TMX2tabtxt.py -h
Verwendung: MTUOC-TMX2tabtxt.py [-h] -i INPUTFILE -o OUTPUTFILE -s SLCODE [SLCODE ...] -t TLCODE [TLCODE ...] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags]
[--simpleTags] [--noEntities] [--fixencoding] [--fixencoding] [--fixencoding] [--noEntities
MTUOC-Programm zur Konvertierung eines TMX in einen Tabulatortext.
Optionen:
-h, --help diese Hilfemeldung anzeigen und beenden
-i INPUTFILE, --in INPUTFILE
Die TMX-Eingabedatei.
-o OUTPUTFILE, --out OUTPUTFILE
Die Ausgabetextdatei.
-s SLCODE [SLCODE ...], --sl SLCODE [SLCODE ...] Der Code für die Ausgangssprache.
Der Code für die Ausgangssprache.
-t TLCODE [TLCODE ...], --tl TLCODE [TLCODE ...] Der Code für die Zielsprache.
Der Code für die Zielsprache.
--noTags Entfernt die internen Tags.
--simpleTags Ersetzt die Tags mit <t>, </t> oder <t/>.
--noEntities Ersetzt html/xml-Entities durch entsprechende Zeichen.
--fixencoding Versucht, Fehler in der Kodierung zu beheben.
Zusätzlich zur Konvertierung ermöglicht das Skript Ihnen, Tags zu entfernen, html-Entities in die entsprechenden Zeichen umzuwandeln und zu versuchen, Kodierungsprobleme zu beheben. Die grundlegende Konvertierung wird wie folgt durchgeführt:
python3 MTUOC-TMX2tabtxt.py -i memo.tmx -o memo-eng-spa.txt -s en-US -t es es-ES
Beachten Sie, dass wir für jede Sprache zwei Codes angegeben haben, da das Code-Erkennungsprogramm uns diese Information gegeben hat. Wenn Sie sich das Ergebnis mit mehr ansehen, werden Sie feststellen, dass es html-Entitäten gibt:
Kritiker forderten niedrigere Anzahlungen auf Wohnungsbaudarlehen und betonten die Notwendigkeit, verschiedene Sektoren bei der Schaffung von Arbeitsplätzen zu unterstützen.
Wir können diese Zeichen umwandeln und nebenbei die xml-Tags entfernen, indem wir eingeben:
python3 MTUOC-TMX2tabtxt.py -i memo.tmx -o memo-eng-spa.txt -s en-US -t es es-ES --noTags --noEntities
Und jetzt haben wir es:
Kritiker forderten niedrigere Anzahlungen auf Wohnungsbaudarlehen und betonten die Notwendigkeit, verschiedene Sektoren bei der Schaffung von Arbeitsplätzen zu unterstützen.
Alle Dateien in einem Verzeichnis konvertieren
Wenn wir nun alle TMX in einem Verzeichnis konvertieren wollen, verwenden wir das Programm MTUOC-TMX2tabtxtDIR.py.
python3 MTUOC-TMX2tabtxtDIR.py -h
Verwendung: MTUOC-TMX2tabtxtDIR.py [-h] -d INPUTDIR -o OUTPUTFILE -s SLCODE [SLCODE ...] -t TLCODE [TLCODE ...] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags] [--noTags]
[--simpleTags] [--noEntities] [--fixencoding] [--fixencoding] [--fixencoding] [--noEntities
MTUOC-Programm zur Konvertierung aller TMX-Dateien in einem bestimmten Verzeichnis in einen Tab-Text.
Optionen:
-h, --help diese Hilfemeldung anzeigen und beenden
-d INPUTDIR, --dir INPUTDIR
Das Eingabeverzeichnis, in dem sich die TMX-Dateien befinden.
-o OUTPUTFILE, --out OUTPUTFILE
Die Ausgabetextdatei.
-s SLCODE [SLCODE ...], --sl SLCODE [SLCODE ...]
Die Codes für die Ausgangssprache.
-t TLCODE [TLCODE ...], --tl TLCODE [TLCODE ...] Die Codes für die Zielsprache.
Die Codes für die Zielsprache.
--noTags Entfernt die internen Tags.
--simpleTags Ersetzt die Tags mit <t>, </t> oder <t/>.
--noEntities Ersetzt html/xml-Entities durch entsprechende Zeichen.
--fixencoding Versucht, Fehler in der Kodierung zu beheben.
So wird es gemacht:
python3 MTUOC-TMX2tabtxtDIR.py -d TMXs/ -o memos-eng-spa.txt -s en-US -t es es-ES --noTags --noEntities
TMXs/Datei1.tmx
TMXs/Datei2.tmx
TMXs/Datei3.tmx
TMXs/Datei4.tmx
TMXs/Datei5.tmx
Und wir werden den Inhalt aller tmx in einer einzigen Datei memos-eng-spa.txt haben
Diese Dateien können sich wiederholende Segmente enthalten, so dass es interessant sein kann, sie zu löschen:
cat memos-eng-spa.txt | sort | uniq | shuf > memos-uniq-eng-spa.txt
3.4 Konvertierung von SDLTM-Translation Memories Es ist auch möglich, Trados Studio Translation Memories (SDLTM) mit den Programmen aus demr Sammlung MTUOC-SDLTM2tabtxt in tabellarischen Text zu konvertieren.