Unterstützte Dateiformate
Weblate supports most translation format understood by translate-toolkit, however each format being slightly different, some issues with formats that are not well tested can arise.
Siehe auch
Bemerkung
When choosing a file format for your application, it’s better to stick some well established format in the toolkit/platform you use. This way your translators can additionally use whatever tools they are used to, and will more likely contribute to your project.
Zweisprachige und einsprachige Formate
Both monolingual and bilingual formats are supported. Bilingual formats store two languages in single file—source and translation (typical examples are GNU gettext, XLIFF or Apple iOS-Zeichenketten). On the other side, monolingual formats identify the string by ID, and each language file contains only the mapping of those to any given language (typically Android String-Ressourcen). Some file formats are used in both variants, see the detailed description below.
For correct use of monolingual files, Weblate requires access to a file containing complete list of strings to translate with their source—this file is called Einsprachige Basis-Sprachdatei within Weblate, though the naming might vary in your paradigm.
Additionally this workflow can be extended by utilizing Zwischensprachedatei to include strings provided by developers, but not to be used as is in the final strings.
Automatische Erkennung
Weblate can automatically detect several widespread file formats, but this detection can harm your performance and will limit features specific to given file format (for example automatic addition of new translations).
Fähigkeiten der Übersetzungstypen
Fähigkeiten aller unterstützten Formate:
Format |
Lingualität [1] |
Pluralformen [2] |
Beschreibungen [3] |
Kontext [4] |
Ort [5] |
Markierungen [8] |
Zusätzliche Status [6] |
---|---|---|---|---|---|---|---|
zweisprachig |
ja |
ja |
ja |
ja |
ja [9] |
Bearbeitung erforderlich |
|
einsprachig |
ja |
ja |
ja |
ja |
ja [9] |
Bearbeitung erforderlich |
|
beides |
ja |
ja |
ja |
ja |
ja [10] |
Bearbeitung erforderlich, genehmigt |
|
beides |
nein |
ja |
nein |
nein |
nein |
||
einsprachig |
nein |
ja |
nein |
nein |
nein |
||
einsprachig |
ja |
ja |
nein |
nein |
nein |
||
einsprachig |
nein |
ja |
nein |
ja |
nein |
||
beides |
ja |
ja |
nein |
ja |
ja [10] |
Bearbeitung erforderlich |
|
einsprachig |
ja |
ja [7] |
nein |
nein |
ja [10] |
||
beides |
nein |
ja |
nein |
nein |
nein |
||
einsprachig |
nein [11] |
ja |
nein |
nein |
nein |
||
einsprachig |
nein |
nein |
nein |
nein |
nein |
||
einsprachig |
ja |
nein |
nein |
nein |
nein |
||
einsprachig |
ja |
nein |
nein |
nein |
nein |
||
einsprachig |
ja |
ja |
nein |
ja |
nein |
||
einsprachig |
ja |
ja |
nein |
nein |
nein |
||
einsprachig |
ja |
ja |
nein |
nein |
nein |
||
einsprachig |
nein |
ja |
nein |
nein |
ja [10] |
||
einsprachig |
nein |
nein |
nein |
nein |
ja [10] |
||
beides |
nein |
ja |
ja |
ja |
nein |
Bearbeitung erforderlich |
|
einsprachig |
nein |
ja |
nein |
nein |
nein |
||
einsprachig |
ja |
ja |
nein |
nein |
nein |
||
einsprachig |
nein |
nein |
nein |
nein |
nein |
||
einsprachig |
nein |
nein |
nein |
nein |
ja [10] |
||
einsprachig |
nein |
ja |
nein |
nein |
nein |
||
einsprachig |
nein |
ja |
ja |
ja |
nein |
Bearbeitung erforderlich |
|
einsprachig |
nein |
nein |
nein |
nein |
nein |
||
einsprachig |
nein |
nein |
nein |
ja |
nein |
||
einsprachig |
nein |
nein |
nein |
nein |
nein |
||
einsprachig |
nein |
nein |
nein |
nein |
nein |
||
einsprachig |
nein |
nein |
nein |
nein |
nein |
||
einsprachig |
nein |
nein |
nein |
nein |
nein |
||
einsprachig |
nein |
nein |
nein |
nein |
nein |
||
zweisprachig |
nein |
ja |
nein |
nein |
ja [10] |
||
einsprachig |
nein |
nein |
nein |
nein |
nein |
||
einsprachig |
ja |
ja |
nein |
nein |
nein |
||
einsprachig |
no [12] |
ja |
nein |
nein |
nein |
Schreibgeschützte Zeichenketten
Neu in Version 3.10.
Read-only strings from translation files will be included, but
can not be edited in Weblate. This feature is natively supported by few formats
(XLIFF and Android String-Ressourcen), but can be emulated in others by adding a
read-only
flag, see Anpassen des Verhaltens mit Markierungen.
GNU gettext
Das am weitesten verbreitete Format für die Übersetzung von freier Software.
Contextual info stored in the file is supported by adjusting its headers or linking to corresponding source files.
The bilingual gettext PO file typically looks like this:
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Monday"
msgstr "Pondělí"
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Tuesday"
msgstr "Úterý"
#: weblate/accounts/avatar.py:163
msgctxt "No known user"
msgid "None"
msgstr "Žádný"
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
Leer |
Vorlage für neue Übersetzungen |
|
Dateiformat |
Gettext PO-Datei |
Siehe auch
Software mit GNU gettext übersetzen, Dokumentation mit Sphinx übersetzen, Gettext on Wikipedia, PO Files, Aktualisieren Sie die Variable ALL_LINGUAS in der „configure“-Datei, Ausgabe von Gettext anpassen, LINGUAS-Datei aktualisieren, MO-Dateien erzeugen, PO-Dateien auf POT aktualisieren (msgmerge)
Monolingual gettext
Some projects decide to use gettext as monolingual formats—they code just the IDs in their source code and the string then needs to be translated to all languages, including English. This is supported, though you have to choose this file format explicitly when importing components into Weblate.
Die einsprachige gettext PO-Datei sieht normalerweise wie folgt aus:
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Pondělí"
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Úterý"
#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "Žádný"
While the base language file will be:
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Monday"
#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Tuesday"
#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "None"
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
|
Dateiformat |
Gettext PO-Datei (einsprachig) |
XLIFF
XML-based format created to standardize translation files, but in the end it is one of many standards, in this area.
XML Localization Interchange File Format (XLIFF) is usually used as bilingual, but Weblate supports it as monolingual as well.
Weblate unterstützt XLIFF in mehreren Varianten:
- XLIFF-Übersetzungsdatei
Simple XLIFF file where content of the elements is stored as plain text (all XML elements being escaped).
- XLIFF mit Platzhalterunterstützung
Standard XLIFF supporting placeables and other XML elements.
- XLIFF mit Gettext-Erweiterungen
XLIFF enriched by XLIFF 1.2 Representation Guide for Gettext PO to support plurals.
Siehe auch
XML Localization Interchange File Format (XLIFF) specification, XLIFF 1.2 Representation Guide for Gettext PO
Übersetzungsstatus
Geändert in Version 3.3: Weblate ignored the state
attribute prior to the 3.3 release.
The state
attribute in the file is partially processed and mapped to the
„Needs edit“ state in Weblate (the following states are used to flag the string as
needing edit if there is a target present: new
, needs-translation
,
needs-adaptation
, needs-l10n
). Should the state
attribute be
missing, a string is considered translated as soon as a <target>
element
exists.
If the translation string has approved="yes"
, it will also be imported into Weblate
as „Approved“, anything else will be imported as „Waiting for review“ (which matches the
XLIFF specification).
While saving, Weblate doesn’t add those attributes unless necessary:
The
state
attribute is only added in case string is marked as needing edit.The
approved
attribute is only added in case string has been reviewed.In other cases the attributes are not added, but they are updated in case they are present.
That means that when using the XLIFF format, it is strongly recommended to turn on the Weblate review process, in order to see and change the approved state of strings.
Similarly upon importing such files (in the upload form), you should choose Import as translated under Processing of strings needing edit.
Siehe auch
Leerzeichen und Zeilenumbrüche in XLIFF
Generally types or amounts of whitespace is not differentiated between in XML formats.
If you want to keep it, you have to add the xml:space="preserve"
flag to
the string.
Zum Beispiel:
<trans-unit id="10" approved="yes">
<source xml:space="preserve">hello</source>
<target xml:space="preserve">Hello, world!
</target>
</trans-unit>
Specifying translation flags
You can specify additional translation flags (see Anpassen des Verhaltens mit Markierungen) by
using the weblate-flags
attribute. Weblate also understands maxwidth
and font
attributes from the XLIFF specification:
<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 bei der Benennung der Schriftgruppe (siehe Schriftarten verwalten).
Zeichenkettenschlüssel
Weblate identifies the units in the XLIFF file by resname
attribute in case
it is present and falls back to id
(together with file
tag if present).
The resname
attribute is supposed to be human friendly identifier of the
unit making it more suitable for Weblate to display instead of id
. The
resname
has to be unique in the whole XLIFF file. This is required by
Weblate and is not covered by the XLIFF standard - it does not put any
uniqueness restrictions on this attribute.
Typical Weblate Komponentenkonfiguration for bilingual XLIFF |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
Leer |
Vorlage für neue Übersetzungen |
|
Dateiformat |
XLIFF-Übersetzungsdatei |
Typical Weblate Komponentenkonfiguration for monolingual XLIFF |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
|
Dateiformat |
XLIFF-Übersetzungsdatei |
Java properties
Native Java format for translations.
Java properties are usually used as monolingual translations.
Weblate supports ISO-8859-1, UTF-8 and UTF-16 variants of this format. All of
them support storing all Unicode characters, it is just differently encoded.
In the ISO-8859-1, the Unicode escape sequences are used (for example zkou\u0161ka
),
all others encode characters directly either in UTF-8 or UTF-16.
Bemerkung
Loading escape sequences works in UTF-8 mode as well, so please be careful choosing the correct encoding set to match your application needs.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
Java Properties (ISO 8859-1) |
mi18n lang Dateien
Neu in Version 4.7.
Dateiformat, das für die JavaScript-Lokalisierung von mi18n verwendet wird. Syntaktisch entspricht es Java properties.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
mi18n lang file |
GWT-Eigenschaften
Natives GWT-Format für Übersetzungen.
GWT-Eigenschaften werden normalerweise als einsprachige Übersetzungen verwendet.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
GWT-Eigenschaften |
INI-Übersetzungen
Neu in Version 4.1.
INI-Dateiformat für Übersetzungen.
INI-Übersetzungen werden normalerweise als einsprachige Übersetzungen verwendet.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
INI-Datei |
Bemerkung
Weblate only extracts keys from sections within an INI file. In case your INI file lacks sections, you might want to use Joomla-Übersetzungen or Java properties instead.
Inno Setup INI-Übersetzungen
Neu in Version 4.1.
Inno Setup INI-Dateiformat für Übersetzungen.
Inno Setup INI-Übersetzungen werden normalerweise als einsprachige Übersetzungen verwendet.
Bemerkung
The only notable difference to INI-Übersetzungen is in supporting %n
and %t
placeholders for line break and tab.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
Inno Setup INI-Datei |
Bemerkung
Only Unicode files (.islu
) are currently supported, ANSI variant
(.isl
) is currently not supported.
Siehe auch
Joomla-Übersetzungen
Neu in Version 2.12.
Natives Joomla-Format für Übersetzungen.
Joomla-Übersetzungen werden normalerweise als einsprachige Übersetzungen verwendet.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
Joomla-Sprachdatei |
Qt Linguist .ts
In Qt-basierten Anwendungen verwendetes Übersetzungsformat.
Qt Linguist-Dateien werden sowohl als zweisprachige als auch als einsprachige Übersetzungen verwendet.
Typical Weblate Komponentenkonfiguration when using as bilingual |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
Leer |
Vorlage für neue Übersetzungen |
|
Dateiformat |
Qt Linguist-Übersetzungsdatei |
Typical Weblate Komponentenkonfiguration when using as monolingual |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
|
Dateiformat |
Qt Linguist-Übersetzungsdatei |
Android String-Ressourcen
Android-spezifisches Dateiformat zum Übersetzen von Anwendungen.
Android string resources are monolingual, the Einsprachige Basis-Sprachdatei is
stored in a different location from the other files – res/values/strings.xml
.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
Android String-Ressource |
Bemerkung
Android string-array structures are not currently supported. To work around this, you can break your string arrays apart:
<string-array name="several_strings">
<item>First string</item>
<item>Second string</item>
</string-array>
become:
<string-array name="several_strings">
<item>@string/several_strings_0</item>
<item>@string/several_strings_1</item>
</string-array>
<string name="several_strings_0">First string</string>
<string name="several_strings_1">Second string</string>
The string-array that points to the string elements should be stored in a different file, and not be made available for translation.
This script may help pre-process your existing strings.xml files and translations: https://gist.github.com/paour/11291062
Hinweis
To avoid translating some strings, these can be marked as non-translatable. This can be especially useful for string references:
<string name="foobar" translatable="false">@string/foo</string>
Apple iOS-Zeichenketten
File format typically used for translating Apple iOS applications, but also standardized by PWG 5100.13 and used on NeXTSTEP/OpenSTEP.
Apple iOS-Zeichenketten werden normalerweise einsprachig verwendet.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
iOS-Zeichenketten (UTF-8) |
PHP-Zeichenketten
PHP-Übersetzungen sind normalerweise einsprachig, daher ist es empfehlenswert, eine Basisdatei mit (meist) englischen Zeichenketten anzugeben.
Beispieldatei:
<?php
$LANG['foo'] = 'bar';
$LANG['foo1'] = 'foo bar';
$LANG['foo2'] = 'foo bar baz';
$LANG['foo3'] = 'foo bar baz bag';
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
|
Dateiformat |
PHP-Zeichenketten |
Laravel PHP-Zeichenketten
Geändert in Version 4.1.
Die Laravel-PHP-Lokalisierungsdateien mit Pluralformen werden auch unterstützt:
<?php
return [
'welcome' => 'Welcome to our application',
'apples' => 'There is one apple|There are many apples',
];
Siehe auch
JSON-Dateien
Neu in Version 2.0.
Geändert in Version 2.16: Seit Weblate 2.16 und mit translate-toolkit mindestens 2.2.4 werden auch JSON-Nested-Structure-Dateien unterstützt.
Geändert in Version 4.3: The structure of JSON file is properly preserved even for complex situations which were broken in prior releases.
JSON format is used mostly for translating applications implemented in JavaScript.
Weblate unterstützt derzeit mehrere Varianten von JSON-Übersetzungen:
Simple key / value files, used for example by vue-i18n or react-intl.
Files with nested keys.
JSON-Übersetzungen sind normalerweise einsprachig, daher ist es empfehlenswert, eine Basisdatei mit (meist) englischen Zeichenketten anzugeben.
Beispieldatei:
{
"Hello, world!\n": "Ahoj světe!\n",
"Orangutan has %d banana.\n": "",
"Try Weblate at https://demo.weblate.org/!\n": "",
"Thank you for using Weblate.": ""
}
Nested files are supported as well (see above for requirements), such a file can look like:
{
"weblate": {
"hello": "Ahoj světe!\n",
"orangutan": "",
"try": "",
"thanks": ""
}
}
Hinweis
The JSON file and JSON nested structure file can both handle same type of files. Both preserve existing JSON structure when translating.
The only difference between them is when adding new strings using Weblate.
The nested structure format parses the newly added key and inserts the new
string into the matching structure. For example app.name
key is inserted as:
{
"app": {
"name": "Weblate"
}
}
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
JSON-Nested-Structure-Datei |
JSON-i18next-Dateien
Geändert in Version 2.17: Seit Weblate 2.17 und mit translate-toolkit mindestens 2.2.5 werden auch i18next JSON-Dateien mit Pluralformen unterstützt.
Geändert in Version 4.15.1: Unterstützung für die v4-Variante dieses Formats hinzugefügt.
Hinweis
In case you use plurals, it is recommended to use v4 as that aligned plural handling with CLDR. Older versions have different plural rules for some languages which are not correct.
i18next is an internationalization framework written in and for JavaScript. Weblate supports its localization files with features such as plurals.
i18next-Übersetzungen sind einsprachig, daher ist es empfehlenswert, eine Basisdatei mit (meist) englischen Zeichenketten anzugeben.
Bemerkung
Weblate unterstützt die Varianten i18next JSON v3 und v4. Bitte wählen Sie das richtige Dateiformat für Ihre Einsatzumgebung.
Die Varianten v2 und v1 sind größtenteils kompatibel mit v3, mit Ausnahme der Behandlung von Pluralformen.
Beispieldatei:
{
"hello": "Hello",
"apple": "I have an apple",
"apple_plural": "I have {{count}} apples",
"apple_negative": "I have no apples"
}
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
i18next-JSON-Datei v3 |
go-i18n-JSON-Dateien
Neu in Version 4.1.
go-i18n-Übersetzungen sind einsprachig, daher ist es empfehlenswert, eine Basisdatei mit (meist) englischen Zeichenketten anzugeben.
Geändert in Version 4.16: Weblate unterstützt sowohl das v1- als auch das v2-Format, bitte bei der Auswahl des Dateiformats die entsprechende Version auswählen.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
go-i18n-JSON-Datei |
gotext-JSON-Dateien
Neu in Version 4.15.1.
gotext-Übersetzungen sind einsprachig, daher ist es empfehlenswert, eine Basisdatei mit (meist) englischen Zeichenketten anzugeben.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
gotext-JSON-Datei |
ARB-Datei
Neu in Version 4.1.
ARB-Übersetzungen sind einsprachig, daher ist es empfehlenswert, eine Basisdatei mit (meist) englischen Zeichenketten anzugeben.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
ARB-Datei |
WebExtension-JSON
Neu in Version 2.16: Dies wird seit Weblate 2.16 und mit translate-toolkit mindestens 2.2.4 unterstützt.
File format used when translating extensions for Mozilla Firefox or Google Chromium.
Bemerkung
While this format is called JSON, its specification allows to include comments, which are not part of JSON specification. Weblate currently does not support file with comments.
Beispieldatei:
{
"hello": {
"message": "Ahoj světe!\n",
"description": "Description",
"placeholders": {
"url": {
"content": "$1",
"example": "https://developer.mozilla.org"
}
}
},
"orangutan": {
"message": "Orangutan has $coUnT$ bananas",
"description": "Description",
"placeholders": {
"count": {
"content": "$1",
"example": "5"
}
}
},
"try": {
"message": "",
"description": "Description"
},
"thanks": {
"message": "",
"description": "Description"
}
}
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
WebExtension-JSON-Datei |
.XML-Ressourcen-Dateien
Neu in Version 2.3.
A .XML resource (.resx) file employs a monolingual XML file format used in Microsoft .NET applications. It is interchangeable with .resw, when using identical syntax to .resx.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
.NET-Ressourcen-Datei |
ResourceDictionary-Dateien
Neu in Version 4.13.
ResourceDictionary is a monolingual XML file format used to package localizable string resources for Windows Presentation Foundation (WPF) applications.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
ResourceDictionary-Datei |
CSV-Dateien
Neu in Version 2.4.
CSV files can contain a simple list of source and translation. Weblate supports the following files:
Files with header defining fields (
location
,source
,target
,ID
,fuzzy
,context
,translator_comments
,developer_comments
). This is the recommended approach, as it is the least error prone. Choose CSV file as a file format.Files with two fields—source and translation (in this order). Choose Simple CSV file as a file format.
Headerless files with fields in order defined by the translate-toolkit:
location
,source
,target
,ID
,fuzzy
,context
,translator_comments
,developer_comments
. Choose CSV file as a file format.Remember to define Einsprachige Basis-Sprachdatei when your files are monolingual (see Zweisprachige und einsprachige Formate).
Hinweis
Standardmäßig erkennt das CSV-Format die Dateikodierung automatisch. Dies kann in einigen Ausnahmefällen unzuverlässig sein und zu Leistungseinbußen führen. Bitte wählen Sie eine Dateiformatvariante mit Kodierung, um dies zu vermeiden (zum Beispiel CSV-Datei (UTF-8)).
Warnung
Das CSV-Format erkennt derzeit automatisch den Dialekt der CSV-Datei. In einigen Fällen kann die automatische Erkennung fehlschlagen und Sie erhalten gemischte Ergebnisse. Dies gilt insbesondere für CSV-Dateien mit Zeilenumbrüchen in den Werten. Als Abhilfe empfiehlt es sich, die Anführungszeichen wegzulassen.
Beispieldatei:
Thank you for using Weblate.,Děkujeme za použití Weblate.
Typical Weblate Komponentenkonfiguration for bilingual CSV |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
Leer |
Vorlage für neue Übersetzungen |
|
Dateiformat |
CSV-Datei |
Typical Weblate Komponentenkonfiguration for monolingual CSV |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
|
Dateiformat |
Einfache CSV-Datei |
Mehrwertige CSV-Datei (UTF-8)
Neu in Version 4.13.
This variant of the CSV files allows storing multiple translations per string.
Siehe auch
YAML-Dateien
Neu in Version 2.9.
The plain YAML files with string keys and values. Weblate also extract strings from lists or dictionaries.
Beispiel für eine YAML-Datei:
weblate:
hello: ""
orangutan": ""
try": ""
thanks": ""
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
YAML-Datei |
Siehe auch
Ruby YAML-Dateien
Neu in Version 2.9.
Ruby i18n YAML files with language as root node.
Beispiel für eine Ruby i18n YAML-Datei:
cs:
weblate:
hello: ""
orangutan: ""
try: ""
thanks: ""
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
Ruby YAML-Datei |
Siehe auch
DTD-Dateien
Neu in Version 2.18.
Beispiel für eine DTD-Datei:
<!ENTITY hello "">
<!ENTITY orangutan "">
<!ENTITY try "">
<!ENTITY thanks "">
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
DTD-Datei |
Siehe auch
Flat XML-Dateien
Neu in Version 3.9.
Beispiel für eine Flat XML-Datei:
<?xml version='1.0' encoding='UTF-8'?>
<root>
<str key="hello_world">Hello World!</str>
<str key="resource_key">Translated value.</str>
</root>
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
Flat XML-Datei |
Siehe auch
Windows RC-Dateien
Geändert in Version 4.1: Unterstützung für Windows RC-Dateien neu geschrieben.
Bemerkung
Die Unterstützung für dieses Format befindet sich derzeit in der Beta-Phase, Rückmeldungen aus der Testphase sind willkommen.
Beispiel für eine Windows RC-Datei:
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
IDS_MSG1 "Hello, world!\n"
IDS_MSG2 "Orangutan has %d banana.\n"
IDS_MSG3 "Try Weblate at http://demo.weblate.org/!\n"
IDS_MSG4 "Thank you for using Weblate."
END
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
|
Dateiformat |
RC-Datei |
Siehe auch
App-Store-Metadatendateien
Neu in Version 3.5.
Metadata used for publishing apps in various app stores can be translated. Currently the following tools are compatible:
The metadata consists of several textfiles, which Weblate will present as separate strings to translate.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
|
Dateiformat |
App-Store-Metadaten-Dateien |
Hinweis
Falls Sie bestimmte Zeichenketten (z. B. Änderungsprotokolle) nicht übersetzen wollen, markieren Sie diese als schreibgeschützt (siehe Anpassen des Verhaltens mit Markierungen). Dies kann durch die Massenbearbeitung automatisiert werden.
Untertiteldateien
Neu in Version 3.7.
Weblate kann verschiedene Untertiteldateien übersetzen:
SubRip-Untertiteldatei (
*.srt
)MicroDVD-Untertiteldatei (
*.sub
)Advanced Substation Alpha-Untertiteldatei (
*.ass
)Substation Alpha-Untertiteldatei (
*.ssa
)
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
|
Dateiformat |
SubRip-Untertiteldatei |
Siehe auch
Excel Open XML
Neu in Version 3.2.
Excel Open XML (.xlsx) files can be imported and exported.
When uploading XLSX files for translation, be aware that only the active
worksheet is considered, and there must be at least a column called source
(which contains the source string) and a column called target
(which
contains the translation). Additionally there should be the column called context
(which contains the context path of the translation string). If you use the XLSX
download for exporting the translations into an Excel workbook, you already get
a file with the correct file format.
HTML-Dateien
Neu in Version 4.1.
Bemerkung
Die Unterstützung für dieses Format befindet sich derzeit in der Beta-Phase, Rückmeldungen aus der Testphase sind willkommen.
The translatable content is extracted from the HTML files and offered for the translation.
Siehe auch
Textdateien
Neu in Version 4.6.
Bemerkung
Die Unterstützung für dieses Format befindet sich derzeit in der Beta-Phase, Rückmeldungen aus der Testphase sind willkommen.
The translatable content is extracted from the plain text files and offered for the translation. Each paragraph is translated as a separate string.
Dieses Format gibt es in drei Varianten:
Klartextdatei
DokuWiki-Textdatei
MediaWiki-Textdatei
Siehe auch
OpenDocument-Format
Neu in Version 4.1.
Bemerkung
Die Unterstützung für dieses Format befindet sich derzeit in der Beta-Phase, Rückmeldungen aus der Testphase sind willkommen.
The translatable content is extracted from the OpenDocument files and offered for the translation.
Siehe auch
IDML-Format
Neu in Version 4.1.
Bemerkung
Die Unterstützung für dieses Format befindet sich derzeit in der Beta-Phase, Rückmeldungen aus der Testphase sind willkommen.
The translatable content is extracted from the Adobe InDesign Markup Language files and offered for the translation.
TermBase eXchange-Format
Neu in Version 4.5.
TBX is an XML format for the exchange of terminology data.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
Leer |
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
TermBase eXchange-Format |
Siehe auch
Stringsdict-Format
Neu in Version 4.8.
Bemerkung
Die Unterstützung für dieses Format befindet sich derzeit in der Beta-Phase, Rückmeldungen aus der Testphase sind willkommen.
Ein von Apple verwendetes XML-basiertes Format, das mehrere Pluralformen einer Zeichenkette speichern kann.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
Stringsdict-Datei |
Siehe auch
Fluent-Format
Neu in Version 4.8.
Bemerkung
Die Unterstützung für dieses Format befindet sich derzeit in der Beta-Phase, Rückmeldungen aus der Testphase sind willkommen.
Fluent ist ein einsprachiges Textformat, das sich auf asymmetrische Lokalisierung konzentriert: Eine einfache Zeichenkette in einer Sprache kann in einer anderen Sprache eine komplexe Übersetzung mit mehreren Varianten ergeben.
Typical Weblate Komponentenkonfiguration |
|
---|---|
Dateimaske |
|
Einsprachige Basis-Sprachdatei |
|
Vorlage für neue Übersetzungen |
Leer |
Dateiformat |
Fluent-Datei |
Siehe auch
Unterstützung anderer Formate
Most formats supported by translate-toolkit which support serializing can be easily supported, but they did not (yet) receive any testing. In most cases some thin layer is needed in Weblate to hide differences in behavior of different translate-toolkit storages.
To add support for a new format, the preferred approach is to first implement support for it in the translate-toolkit.
Siehe auch