XLIFF¶
Bemerkung
Weblate unterstützt derzeit XLIFF 1.2. XLIFF 2.0 wird nicht unterstützt und ist nicht rückwärtskompatibel mit XLIFF 1.2.
XML-basiertes Format, das zur Vereinheitlichung von Übersetzungsdateien entwickelt wurde, aber letztlich nur einer von vielen Standards in diesem Bereich ist.
XML Localization Interchange File Format (XLIFF) wird normalerweise zweisprachig verwendet, aber Weblate unterstützt es auch einsprachig.
Weblate unterstützt XLIFF in mehreren Varianten:
- XLIFF-1.2-Übersetzungsdatei
Einfache XLIFF-Datei, in welcher der Inhalt der Elemente als reiner Text gespeichert ist (alle XML-Elemente sind maskiert).
- XLIFF 1.2 mit Platzhalterunterstützung
Standard-XLIFF mit Platzhalterunterstützung und anderen XML-Elementen.
- XLIFF 1.2 mit Gettext-Erweiterungen
XLIFF angereichert durch XLIFF 1.2 Representation Guide for Gettext PO zur Unterstützung von Pluralformen.
Siehe auch
XML Localization Interchange File Format (XLIFF)-Spezifikation, XLIFF 1.2 Representation Guide for Gettext PO, XLIFF auf Wikipedia, XLIFF
Übersetzungsstatus¶
Das Attribut state
in der Datei wird teilweise verarbeitet und in Weblate dem Status „Bearbeitungsbedürftig“ zugeordnet (die folgenden Status werden verwendet, um die Zeichenkette als bearbeitungsbedürftig zu markieren, wenn ein Ziel vorhanden ist: new
, needs-translation
, needs-adaptation
, needs-l10n
). Fehlt das Attribut state
, wird eine Zeichenkette als übersetzt betrachtet, sobald ein <target>
-Element vorhanden ist.
Wenn die Übersetzungszeichenkette approved="yes"
hat, wird sie auch in Weblate als „Genehmigt“ importiert, alles andere wird als „Überprüfung ausstehend“ importiert (dies entspricht der XLIFF-Spezifikation).
Beim Speichern fügt Weblate diese Attribute nur bei Bedarf hinzu:
Das Attribut
state
wird nur hinzugefügt, wenn die Zeichenkette als bearbeitungsbedürftig markiert ist.Das Attribut
approved
wird nur hinzugefügt, wenn die Zeichenkette genehmigt wurde.In anderen Fällen werden die Attribute nicht hinzugefügt, aber sie werden aktualisiert, falls sie vorhanden sind.
Das bedeutet, dass beim Verwenden des XLIFF-Formats dringend empfohlen wird, den Weblate-Überprüfungsprozess zu aktivieren, um den genehmigten Status von Zeichenketten zu sehen und zu ändern.
Ebenso sollten Sie beim Importieren solcher Dateien (im Upload-Formular) unter Verarbeitung von „Bearbeitungsbedürftig“-Zeichenketten die Option Als übersetzt importieren wählen.
Siehe auch
Leerzeichen und Zeilenumbrüche in XLIFF¶
Im Allgemeinen wird bei XML-Formaten nicht zwischen verschiedenen Arten oder Mengen von Leerzeichen unterschieden. Wenn Sie diese beibehalten wollen, müssen Sie die Markierung xml:space="preserve"
an die Zeichenkette anhängen.
Zum Beispiel:
<trans-unit id="10" approved="yes">
<source xml:space="preserve">hello</source>
<target xml:space="preserve">Hello, world!
</target>
</trans-unit>
Angabe von Übersetzungsmarkierungen¶
Sie können zusätzliche Übersetzungsmarkierungen (siehe Anpassen des Verhaltens mit Markierungen) angeben, indem Sie das Attribut weblate-flags
verwenden. Weblate versteht auch die Attribute maxwidth
und font
der XLIFF-Spezifikation:
<trans-unit id="10" maxwidth="100" size-unit="pixel" font="ubuntu;22;bold">
<source>Hello %s</source>
</trans-unit>
<trans-unit id="20" maxwidth="100" size-unit="char" weblate-flags="c-format">
<source>Hello %s</source>
</trans-unit>
Das Attribut font
wird nach Schriftfamilie, -größe und -gewicht analysiert, das obige Beispiel zeigt all das, obwohl nur die Schriftfamilie erforderlich ist. Jedes Leerzeichen in der Schriftfamilie wird in einen Unterstrich umgewandelt, so wird Source Sans Pro
zu Source_Sans_Pro
, bitte beachten Sie dies beim Benennen der Schriftgruppe (siehe Schriftarten verwalten).
Zeichenkettenschlüssel¶
Weblate identifiziert die Einheiten in der XLIFF-Datei anhand des Attributs resname
, falls es vorhanden ist, und greift auf id
zurück (zusammen mit dem Tag file
, falls vorhanden).
Das Attribut resname
soll ein benutzerfreundlicher Bezeichner für die Einheit sein, so dass es für Weblate besser geeignet ist als id
. resname
muss in der gesamten XLIFF-Datei eindeutig sein. Dies wird von Weblate gefordert und ist nicht durch den XLIFF-Standard abgedeckt – es gibt keine Einschränkungen für die Eindeutigkeit dieses Attributs.
Beispieldateien¶
XLIFF-Beispieldatei:
<?xml version='1.0' encoding='UTF-8'?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.1">
<file>
<body>
<trans-unit weblate-flags="c-format, max-length:100">
<source xml:space="preserve">Hello, world!
</source>
</trans-unit>
<trans-unit>
<source xml:space="preserve">Orangutan has %d banana.
</source>
</trans-unit>
<trans-unit>
<source xml:space="preserve">Try Weblate at <https://demo.weblate.org/>!
</source>
</trans-unit>
<trans-unit>
<source>Thank you for using Weblate.</source>
</trans-unit>
</body>
</file>
</xliff>
Weblate-Konfiguration¶
Typische Weblate-Komponentenkonfiguration für zweisprachiges XLIFF |
|
---|---|
Dateimaske |
|
Einsprachige Basissprachdatei |
Leer |
Vorlage für neue Übersetzungen |
|
Dateiformat |
XLIFF-Übersetzungsdatei |
Typische Weblate-Komponentenkonfiguration für einsprachiges XLIFF |
|
---|---|
Dateimaske |
|
Einsprachige Basissprachdatei |
|
Vorlage für neue Übersetzungen |
|
Dateiformat |
XLIFF-Übersetzungsdatei |