GermanTranslateFastAndEfficient

Einleitung

Diese Wikiseite ist eine kurze Anleitung wie ihr mit Hilfe von OmegaT und anderen Werkzeugen relativ schnell ein Kit übersetzen könnt und dabei noch so akkurat wie irgendmöglich bleibt.
Es ist keine Anleitung für die Benutzung von OmegaT und es ist auch kein festgelegter Prozess. Es steht natürlich jedem frei es so zu handhaben, wie er es für richtig hält.

Alle Aussagen bezüglich OmegaT beziehen sich auf die Version 1.6.1.

Vorbereitung

Tools

Hier eine kleine Liste von Dingen die ihr haben solltet:

  • natürlich OmegaT. Einmalig fuer jede NetBeans-Version ein neues OmegaT-Projekt erstellen (File > New Project. Nennt es z.B. "nb65").
  • Den Translation memory (TMX-Datei). Die legt Ihr in das "tm" Verzeichnis Eures Projektes. (z.B. "/nb65/tm/mem.tmx")
  • Das zu übersetzende L10n-Kit von Masaki. Die Verzeichnisse aus dem Kit legt Ihr in das "source" Verzeichnis Eures Projektes. (z.B. "/nb65/source/platform9/"). Danach im Menü Project>Reload.
  • Zusätzlich ein Programm, das in der Lage ist, Zeichenketten in mehreren Dateien in einem Schritt zu ersetzen (u.a. NetBeans oder auch z.B. UltraEdit)

Einrichtung

Schritt 1

Bevor ihr das zu übersetzende Kit einrichtet, sollte ihr eine kleine Option in OmegaT ändern. Durch den Aufruf Optionen > Optionen... wird ein kleiner Dialog geöffnet. In diesem findet sich der Eintrag Besten Fuzzy Match einsetzen. Hier die Checkbox anwählen und dann bei Mindestähnlichkeit den Wert 100 eintragen.
Darunter befindet sich ein Feld Präfix:. Hier ist "[[[Fuzzy | [Fuzzy]] " vorgegeben (Achtung: es befindet sich ein Leerzeichen am Ende). Am Einfachsten ist es dieses Wort so stehen zu lassen. Am Ende der Übersetzung wird es noch eine entscheidende Rolle spielen.

Schritt 2

Am Einfachsten übersetzt es sich, wenn man ein Translation Memory (TMX) benutzt. Dieses muß immer im Verzeichnis tm eines Kits liegen. Im Normalfall besteht ein Kit aus den Verzeichnissen glossary, omegat, source, target und tm. In diesem Verzeichnis können natürlich auch mehrere TMX liegen.
(Achtung: Eventuell müßt ihr die Speichereinstellung für OmegaT ändern. Falls die Gesamtgröße der TMX zu groß wird, bekommt OmegaT Probleme beim Lesen).
OmegaT wird während der Übersetzung eines Kits weitere temporäre TMX anlegen. Falls ihr also mehrere Kits übersetzt, könnt ihr diese temporären TMX aus einem anderen Kit mit in das Verzeichnis "tm" des aktuellen Kits kopieren.

Schritt 3

Jetzt kann OmegaT für das zu übersetzende Kit eingerichtet werden. Eine ausführliche Anleitung gibt es hier.

OmegaT liest jetzt die Dateien und analysiert das Kit. Danach wird das(die) TMX in den Speicher geladen. Gebt dem Programm die Zeit diesen Vorgang zu beenden, auch wenn es nebenläufig ist und man theoretisch schon übersetzen könnte, hat es sich doch als besser erwiesen, zu warten, da oftmals die ersten Einträge einer Propertiesdatei kaum verändert werden und von OmegaT automatisch übersetzt werden können.

Übersetzen

Das eigentliche Übersetzen sollte kein Problem sein. An dieser Stelle zeigt sich jetzt aber, warum wir die Mindestähnlichkeit auf 100 gesetzt haben. Falls OmegaT eine Zeichenkette im TMX findet, die es genauso in der aktuell übersetzten Datei gibt, wird diese eingesetzt. Dadurch steht dann z.B. folgender Eintrag da:

[[[Fuzzy | [Fuzzy]] Übersetzte Zeichenkette
Lasst das "[[[Fuzzy | [Fuzzy]] " einfach so stehen - wir werden es später beseitigen.
Achtung: Bei dieser Art der Übersetzung lauern auch einige Gefahren. Hier ein paar Beispiele, was passieren kann.

Original Automatische Übersetzung Erklärung
The file {0} was modified [[[Fuzzy | [Fuzzy]] Die Datei wurde geändert in der Übersetzung fehlt {0}. Dieser Eintrag ist aber ziemlich wichtig, da er wahrscheinlich den Dateinname darstellt, welcher in dem Kontext wichtig sein könnte.
Sollte man es dennoch übersehen, wird die automatische serverseitige Validierung den Fehler aber auf jeden Fall finden.
The file was not found [[[Fuzzy | [Fuzzy]] Die Datei {0} wurde nicht gefunden hier hat OmegaT einen Platzhalter eingefügt, der dort nicht hingehört.
Auch das wird die Validierung höchstwahrscheinlich feststellen.
The file {0} is located in {1} [[[Fuzzy | [Fuzzy]] Die Datei {1} befindet sich in {0} Dies ist ein ganz schwerwiegender Fall, den auch die Validierung nicht beheben kann, denn diese prüft, ob alle Platzhalter da sind und das ist hier ja der Fall.
Wahrscheinlich hat der zuständige Entwickler einfach die Reihenfolge der Parameter geändert und dadurch hat sich die Nummerierung der Platzhalter mitgeändert.
&Open file [[[Fuzzy | [Fuzzy]] Datei öffnen Hier hat OmegaT das Tastaturkürzel (den Mnemonic) weggelassen.
Wahrscheinlich gibt es eine Übersetzung die das Zeichen "&" enthält, aber die steht nicht oben in der Liste, also wird sie nicht benutzt.
Cancel [[[Fuzzy | [Fuzzy]] ABBRECHEN auch hier gilt: Es gibt mehrere Übersetzungen mit 100%-iger Übereinstimmung, also setzt OmegaT die Erste aus der Liste ein.


Hinweis I: Vergeßt nicht zwischendurch zu speichern. Auf manchen Systemen ist OmegaT instabil und hängt sich schonmal auf. Also immer schön Translation Memory speichern (Strg-S) aufrufen.
Hinweis II: Zieldokumente erstellen muß nicht ständig aufgerufen werden. Es reicht einmal am Ende, wenn man fertig ist.

Nachbearbeitung

Jetzt kommt der interessante Teil.

Schritt 1

Wenn OmegaT die Zieldateien erstellt, werden die Namen normalerweise dahingehend geändert, dass sie das sogenannte "Locale" enthalten. Die "bundle.properties" wird aus dem Verzeichnis "source" in das Verzeichnis "target" kopiert, die Übersetzungen eingesetzt und im Zielverzeichnis nach "bundle_de.properties" umbenannt. Aber... für Dateien, die nicht die Endung "properties" haben, funktioniert das nicht.
Zum Beispiel heisst die Datei help.html im Zielverzeichnis immer noch help.html und nicht etwa - wie zu erwarten - help_de.html. Dieses Umbennung muß manuell erfolgen.

Schritt 2

Jetzt kommt das Programm ins Spiel, welches in der Lage ist, multiple Ersetzungen in Dateien durchzuführen. Durch das automatische Einsetzen existieren in den Zieldateiein jetzt einige Einträge die mit "[[[Fuzzy | [Fuzzy]] " beginnen. Diese müssen jetzt noch bereinigt werden, also einfach alle Vorkommen dieser Zeichenkette durch eine leere Zeichenkette ersetzen lassen.
Achtung: Der Eintrag für die zu ersetzende Zeichenkette muss unbedingt das Leerzeichen enthalten.



Fertig :)

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo