Obsługiwane formaty plików

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.

Informacja

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.

Formaty dwujęzyczne i jednojęzyczne

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 Ciągi Apple iOS). 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 resources). 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 Jednojęzyczny bazowy plik języka within Weblate, though the naming might vary in your paradigm.

Additionally this workflow can be extended by utilizing Plik języka pośredniego to include strings provided by developers, but not to be used as is in the final strings.

Automatyczne wykrywanie

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).

Możliwe typy tłumaczeń

Capabilities of all supported formats:

Format

Lingualność 1

Liczba mnoga 2

Opisy 3

Kontekst 4

Lokalizacja 5

Flagi 8

Dodatkowe stany 6

GNU gettext

dwujęzyczny

tak

tak

tak

tak

Tak 9

wymaga edycji

Jednojęzyczny gettext

mono

tak

tak

tak

tak

Tak 9

wymaga edycji

XLIFF

oba

tak

tak

tak

tak

tak 10

wymaga edycji, zatwierdzono

Właściwości Java

oba

nie

tak

nie

nie

nie

Pliki lang dla mi18n

mono

nie

tak

nie

nie

nie

Właściwości GWT

mono

tak

tak

nie

nie

nie

Tłumaczenia Joomli

mono

nie

tak

nie

tak

nie

Qt Linguist .ts

oba

tak

tak

nie

tak

tak 10

wymaga edycji

Android string resources

mono

tak

tak 7

nie

nie

tak 10

Ciągi Apple iOS

oba

nie

tak

nie

nie

nie

Ciągi PHP

mono

nie 11

tak

nie

nie

nie

Plik JSON

mono

nie

nie

nie

nie

nie

JSON i18następne pliki

mono

tak

nie

nie

nie

nie

go-i18n pliki JSON

mono

tak

nie

nie

nie

nie

Plik ARB

mono

tak

tak

nie

nie

nie

WebExtension JSON

mono

tak

tak

nie

nie

nie

Pliki zasobów .XML

mono

nie

tak

nie

nie

tak 10

Pliki ResourceDictionary

mono

nie

nie

nie

nie

tak 10

Pliki CSV

oba

nie

tak

tak

tak

nie

wymaga edycji

Pliki YAML

mono

nie

tak

nie

nie

nie

Pliki Ruby YAML

mono

tak

tak

nie

nie

nie

Pliki DTD

mono

nie

nie

nie

nie

nie

Jednolity plik XML

mono

nie

nie

nie

nie

tak 10

Pliki RC systemu Windows

mono

nie

tak

nie

nie

nie

Excel Open XML

mono

nie

tak

tak

tak

nie

wymaga edycji

Pliki metadanych sklepu z aplikacjami

mono

nie

nie

nie

nie

nie

Pliki napisów

mono

nie

nie

nie

tak

nie

Pliki HTML

mono

nie

nie

nie

nie

nie

Format OpenDocument

mono

nie

nie

nie

nie

nie

Format IDML

mono

nie

nie

nie

nie

nie

Tłumaczenia INI

mono

nie

nie

nie

nie

nie

Tłumaczenia Inno Setup INI

mono

nie

nie

nie

nie

nie

Format TermBase eXchange

dwujęzyczny

nie

tak

nie

nie

tak 10

Pliki tekstowe

mono

nie

nie

nie

nie

nie

Format stringsdict

mono

tak

tak

nie

nie

nie

Format Fluent

mono

nie 12

tak

nie

nie

nie

1

Zobacz Formaty dwujęzyczne i jednojęzyczne

2

Plurals are necessary to properly localize strings with variable count.

3

Source string descriptions can be used to pass additional info about the string to translate.

4

Context is used to differentiate identical strings used in different scopes (for example Sun can be used as an abbreviated name of the day „Sunday” or as the name of our closest star).

5

Location of a string in source code might help proficient translators figure out how the string is used.

6

Additional states supported by the file format in addition to „Untranslated” and „Translated”.

7

XML comment placed before the <string> element, parsed as a source string description.

8

Zobacz Dostosowywanie zachowania za pomocą flag

9(1,2)

The gettext type comments are used as flags.

10(1,2,3,4,5,6,7)

The flags are extracted from the non-standard attribute weblate-flags for all XML based formats. Additionally max-length:N is supported through the maxwidth attribute as defined in the XLIFF standard, see Określanie flag tłumaczenia.

11

The plurals are supported only for Laravel which uses in string syntax to define them, see Localization in Laravel.

12

Plurals are handled in the syntax of the strings and not exposed as plurals in Weblate.

Ciągi tylko do odczytu

Nowe w wersji 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 resources), but can be emulated in others by adding a read-only flag, see Dostosowywanie zachowania za pomocą flag.

GNU gettext

Najpopularniejszy format do tłumaczenia wolnego oprogramowania.

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ý"

Typowy Weblate Konfiguracja komponentu

Maska pliku

po/*.po

Jednojęzyczny bazowy plik języka

Puste

Szablon dla nowych tłumaczeń

po/messages.pot

Format pliku

Plik PO Gettext

Jednojęzyczny 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.

The monolingual gettext PO file typically looks like this:

#: 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"

Typowy Weblate Konfiguracja komponentu

Maska pliku

po/*.po

Jednojęzyczny bazowy plik języka

po/en.po

Szablon dla nowych tłumaczeń

po/messages.pot

Format pliku

Plik gettext PO (jednojęzyczny)

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 obsługuje XLIFF w kilku wariantach:

Plik tłumaczenia XLIFF

Simple XLIFF file where content of the elements is stored as plain text (all XML elements being escaped).

XLIFF with placeables support

Standard XLIFF supporting placeables and other XML elements.

XLIFF z rozszerzeniami gettext

XLIFF enriched by XLIFF 1.2 Representation Guide for Gettext PO to support plurals.

Stan tłumaczenia

Zmienione w wersji 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.

Zobacz także

Dedykowani recenzenci

Whitespace and newlines 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.

Na przykład:

    <trans-unit id="10" approved="yes">
        <source xml:space="preserve">hello</source>
        <target xml:space="preserve">Hello, world!
</target>
    </trans-unit>

Określanie flag tłumaczenia

You can specify additional translation flags (see Dostosowywanie zachowania za pomocą flag) 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>

The font attribute is parsed for font family, size and weight, the above example shows all of that, though only font family is required. Any whitespace in the font family is converted to underscore, so Source Sans Pro becomes Source_Sans_Pro, please keep that in mind when naming the font group (see Zarządzanie czcionkami).

Klucze ciągów znaków

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 Konfiguracja komponentu for bilingual XLIFF

Maska pliku

localizations/*.xliff

Jednojęzyczny bazowy plik języka

Puste

Szablon dla nowych tłumaczeń

localizations/en-US.xliff

Format pliku

Plik tłumaczeniowy XLIFF

Typical Weblate Konfiguracja komponentu for monolingual XLIFF

Maska pliku

localizations/*.xliff

Jednojęzyczny bazowy plik języka

localizations/en-US.xliff

Szablon dla nowych tłumaczeń

localizations/en-US.xliff

Format pliku

Plik tłumaczeniowy XLIFF

Właściwości Java

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.

Informacja

Loading escape sequences works in UTF-8 mode as well, so please be careful choosing the correct encoding set to match your application needs.

Typowy Weblate Konfiguracja komponentu

Maska pliku

src/app/Bundle_*.properties

Jednojęzyczny bazowy plik języka

src/app/Bundle.properties

Szablon dla nowych tłumaczeń

Puste

Format pliku

Właściwości Java (ISO-8859-1)

Pliki lang dla mi18n

Nowe w wersji 4.7.

File format used for JavaScript localization by mi18n. Syntactically it matches Właściwości Java.

Typowy Weblate Konfiguracja komponentu

Maska pliku

*.lang

Jednojęzyczny bazowy plik języka

en-US.lang

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik lang dla mi18n

Właściwości GWT

Native GWT format for translations.

GWT properties are usually used as monolingual translations.

Typowy Weblate Konfiguracja komponentu

Maska pliku

src/app/Bundle_*.properties

Jednojęzyczny bazowy plik języka

src/app/Bundle.properties

Szablon dla nowych tłumaczeń

Puste

Format pliku

Właściwości GWT

Tłumaczenia INI

Nowe w wersji 4.1.

INI file format for translations.

INI translations are usually used as monolingual translations.

Typowy Weblate Konfiguracja komponentu

Maska pliku

language/*.ini

Jednojęzyczny bazowy plik języka

language/en.ini

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik INI

Informacja

Weblate only extracts keys from sections within an INI file. In case your INI file lacks sections, you might want to use Tłumaczenia Joomli or Właściwości Java instead.

Tłumaczenia Inno Setup INI

Nowe w wersji 4.1.

Format pliku Inno Setup INI dla tłumaczeń.

Tłumaczenia Inno Setup INI są zwykle używane jako tłumaczenia jednojęzyczne.

Informacja

The only notable difference to Tłumaczenia INI is in supporting %n and %t placeholders for line break and tab.

Typowy Weblate Konfiguracja komponentu

Maska pliku

language/*.islu

Jednojęzyczny bazowy plik języka

language/en.islu

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik Inno Setup INI

Informacja

Only Unicode files (.islu) are currently supported, ANSI variant (.isl) is currently not supported.

Tłumaczenia Joomli

Nowe w wersji 2.12.

Native Joomla format for translations.

Joomla translations are usually used as monolingual translations.

Typowy Weblate Konfiguracja komponentu

Maska pliku

language/*/com_foobar.ini

Jednojęzyczny bazowy plik języka

language/en-GB/com_foobar.ini

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik językowy Joomla

Qt Linguist .ts

Translation format used in Qt based applications.

Qt Linguist files are used as both bilingual and monolingual translations.

Typical Weblate Konfiguracja komponentu when using as bilingual

Maska pliku

i18n/app.*.ts

Jednojęzyczny bazowy plik języka

Puste

Szablon dla nowych tłumaczeń

i18n/app.de.ts

Format pliku

Plik tłumaczenia języka Qt Linguist

Typical Weblate Konfiguracja komponentu when using as monolingual

Maska pliku

i18n/app.*.ts

Jednojęzyczny bazowy plik języka

i18n/app.en.ts

Szablon dla nowych tłumaczeń

i18n/app.en.ts

Format pliku

Plik tłumaczenia języka Qt Linguist

Android string resources

Android specific file format for translating applications.

Android string resources are monolingual, the Jednojęzyczny bazowy plik języka is stored in a different location from the other files – res/values/strings.xml.

Typowy Weblate Konfiguracja komponentu

Maska pliku

res/values-*/strings.xml

Jednojęzyczny bazowy plik języka

res/values/strings.xml

Szablon dla nowych tłumaczeń

Puste

Format pliku

Android String Resource

Informacja

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>

wygląda tak:

<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

Ciągi Apple iOS

File format typically used for translating Apple iOS applications, but also standardized by PWG 5100.13 and used on NeXTSTEP/OpenSTEP.

Ciągi Apple iOS są zwykle używane jako jednojęzyczne.

Typowy Weblate Konfiguracja komponentu

Maska pliku

Resources/*.lproj/Localizable.strings

Jednojęzyczny bazowy plik języka

Resources/en.lproj/Localizable.strings lub Resources/Base.lproj/Localizable.strings

Szablon dla nowych tłumaczeń

Puste

Format pliku

Ciągi iOS (UTF-8)

Ciągi PHP

PHP translations are usually monolingual, so it is recommended to specify a base file with (what is most often the) English strings.

Przykładowy plik:

<?php
$LANG['foo'] = 'bar';
$LANG['foo1'] = 'foo bar';
$LANG['foo2'] = 'foo bar baz';
$LANG['foo3'] = 'foo bar baz bag';

Typowy Weblate Konfiguracja komponentu

Maska pliku

lang/*/texts.php

Jednojęzyczny bazowy plik języka

lang/en/texts.php

Szablon dla nowych tłumaczeń

lang/en/texts.php

Format pliku

Ciągi PHP

Ciągi znaków Laravel PHP

Zmienione w wersji 4.1.

The Laravel PHP localization files are supported as well with plurals:

<?php
return [
    'welcome' => 'Welcome to our application',
    'apples' => 'There is one apple|There are many apples',
];

Zobacz także

PHP, Localization in Laravel

Plik JSON

Nowe w wersji 2.0.

Zmienione w wersji 2.16: Since Weblate 2.16 and with translate-toolkit at-least 2.2.4, nested structure JSON files are supported as well.

Zmienione w wersji 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 currently supports several variants of JSON translations:

JSON translations are usually monolingual, so it is recommended to specify a base file with (what is most often the) English strings.

Przykładowy plik:

{
  "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": ""
  }
}

Podpowiedź

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"
   }
}

Typowy Weblate Konfiguracja komponentu

Maska pliku

langs/translation-*.json

Jednojęzyczny bazowy plik języka

langs/translation-en.json

Szablon dla nowych tłumaczeń

Puste

Format pliku

JSON nested structure file

JSON i18następne pliki

Zmienione w wersji 2.17: Since Weblate 2.17 and with translate-toolkit at-least 2.2.5, i18next JSON files with plurals are supported as well.

i18next is an internationalization framework written in and for JavaScript. Weblate supports its localization files with features such as plurals.

i18next translations are monolingual, so it is recommended to specify a base file with (what is most often the) English strings.

Informacja

Weblate supports the i18next JSON v3 format. The v2 and v1 variants are mostly compatible, with exception of how plurals are handled.

The v4 variant uses different approach for storing plurals and is currently not supported.

Przykładowy plik:

{
  "hello": "Hello",
  "apple": "I have an apple",
  "apple_plural": "I have {{count}} apples",
  "apple_negative": "I have no apples"
}

Typowy Weblate Konfiguracja komponentu

Maska pliku

langs/*.json

Jednojęzyczny bazowy plik języka

langs/en.json

Szablon dla nowych tłumaczeń

Puste

Format pliku

i18next Plik JSON

go-i18n pliki JSON

Nowe w wersji 4.1.

go-i18n translations are monolingual, so it is recommended to specify a base file with (what is most often the) English strings.

Informacja

Weblate supports the go-i18n JSON v1 format, for flat JSON formats please use Plik JSON. The v2 format with hash is currently not supported.

Typowy Weblate Konfiguracja komponentu

Maska pliku

langs/*.json

Jednojęzyczny bazowy plik języka

langs/en.json

Szablon dla nowych tłumaczeń

Puste

Format pliku

go-i18n Plik JSON

Plik ARB

Nowe w wersji 4.1.

ARB translations are monolingual, so it is recommended to specify a base file with (what is most often the) English strings.

Typowy Weblate Konfiguracja komponentu

Maska pliku

lib/l10n/intl_*.arb

Jednojęzyczny bazowy plik języka

lib/l10n/intl_en.arb

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik ARB

WebExtension JSON

Nowe w wersji 2.16: This is supported since Weblate 2.16 and with translate-toolkit at-least 2.2.4.

File format used when translating extensions for Mozilla Firefox or Google Chromium.

Informacja

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.

Przykładowy plik:

{
  "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"
  }
}

Typowy Weblate Konfiguracja komponentu

Maska pliku

_locales/*/messages.json

Jednojęzyczny bazowy plik języka

_locales/en/messages.json

Szablon dla nowych tłumaczeń

Puste

Format pliku

WebExtension plik JSON

Pliki zasobów .XML

Nowe w wersji 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.

Typowy Weblate Konfiguracja komponentu

Maska pliku

Resources/Language.*.resx

Jednojęzyczny bazowy plik języka

Resources/Language.resx

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik zasobów .Net

Pliki ResourceDictionary

Nowe w wersji 4.13.

ResourceDictionary is a monolingual XML file format used to package localizable string resources for Windows Presentation Foundation (WPF) applications.

Typowy Weblate Konfiguracja komponentu

Maska pliku

Languages/*.xaml

Jednojęzyczny bazowy plik języka

Language/en.xaml

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik ResourceDictionary

Pliki CSV

Nowe w wersji 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 Jednojęzyczny bazowy plik języka when your files are monolingual (see Formaty dwujęzyczne i jednojęzyczne).

Podpowiedź

By default, the CSV format does autodetection of file encoding. This can be unreliable in some corner cases and causes performance penalty. Please choose file format variant with encoding to avoid this (for example CSV file (UTF-8)).

Ostrzeżenie

The CSV format currently automatically detects the dialect of the CSV file. In some cases the automatic detection might fail and you will get mixed results. This is especially true for CSV files with newlines in the values. As a workaround it is recommended to omit quoting characters.

Przykładowy plik:

Thank you for using Weblate.,Děkujeme za použití Weblate.

Typical Weblate Konfiguracja komponentu for bilingual CSV

Maska pliku

locale/*.csv

Jednojęzyczny bazowy plik języka

Puste

Szablon dla nowych tłumaczeń

locale/en.csv

Format pliku

Plik CSV

Typical Weblate Konfiguracja komponentu for monolingual CSV

Maska pliku

locale/*.csv

Jednojęzyczny bazowy plik języka

locale/en.csv

Szablon dla nowych tłumaczeń

locale/en.csv

Format pliku

Zwykły plik CSV

Multivalue CSV file

Nowe w wersji 4.13.

This variant of the CSV files allows storing multiple translations per string.

Zobacz także

CSV

Pliki YAML

Nowe w wersji 2.9.

The plain YAML files with string keys and values. Weblate also extract strings from lists or dictionaries.

Example of a YAML file:

weblate:
  hello: ""
  orangutan": ""
  try": ""
  thanks": ""

Typowy Weblate Konfiguracja komponentu

Maska pliku

translations/messages.*.yml

Jednojęzyczny bazowy plik języka

translations/messages.en.yml

Szablon dla nowych tłumaczeń

Puste

Format pliku

Pliki YAML

Zobacz także

YAML, Pliki Ruby YAML

Pliki Ruby YAML

Nowe w wersji 2.9.

Ruby i18n YAML files with language as root node.

Example Ruby i18n YAML file:

cs:
  weblate:
    hello: ""
    orangutan: ""
    try: ""
    thanks: ""

Typowy Weblate Konfiguracja komponentu

Maska pliku

translations/messages.*.yml

Jednojęzyczny bazowy plik języka

translations/messages.en.yml

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik Ruby YAML

Zobacz także

YAML, Pliki YAML

Pliki DTD

Nowe w wersji 2.18.

Przykładowy plik DTD:

<!ENTITY hello "">
<!ENTITY orangutan "">
<!ENTITY try "">
<!ENTITY thanks "">

Typowy Weblate Konfiguracja komponentu

Maska pliku

locale/*.dtd

Jednojęzyczny bazowy plik języka

locale/en.dtd

Szablon dla nowych tłumaczeń

Puste

Format pliku

Pliki DTD

Zobacz także

Mozilla DTD format

Jednolity plik XML

Nowe w wersji 3.9.

Example of a flat XML file:

<?xml version='1.0' encoding='UTF-8'?>
<root>
  <str key="hello_world">Hello World!</str>
  <str key="resource_key">Translated value.</str>
</root>

Typowy Weblate Konfiguracja komponentu

Maska pliku

locale/*.xml

Jednojęzyczny bazowy plik języka

locale/en.xml

Szablon dla nowych tłumaczeń

Puste

Format pliku

Jednolity plik XML

Zobacz także

Flat XML

Pliki RC systemu Windows

Zmienione w wersji 4.1: Support for Windows RC files has been rewritten.

Informacja

Support for this format is currently in beta, feedback from testing is welcome.

Przykładowy plik RC systemu Windows:

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

Typowy Weblate Konfiguracja komponentu

Maska pliku

lang/*.rc

Jednojęzyczny bazowy plik języka

lang/en-US.rc

Szablon dla nowych tłumaczeń

lang/en-US.rc

Format pliku

Pliki RC

Zobacz także

Windows RC files

Pliki metadanych sklepu z aplikacjami

Nowe w wersji 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.

Typowy Weblate Konfiguracja komponentu

Maska pliku

fastlane/android/metadata/*

Jednojęzyczny bazowy plik języka

fastlane/android/metadata/en-US

Szablon dla nowych tłumaczeń

fastlane/android/metadata/en-US

Format pliku

Pliki metadanych sklepu z aplikacjami

Podpowiedź

In case you don’t want to translate certain strings (for example changelogs), mark them read-only (see Dostosowywanie zachowania za pomocą flag). This can be automated by the Edycja zbiorcza.

Pliki napisów

Nowe w wersji 3.7.

Weblate może tłumaczyć różne pliki z napisami:

  • Plik napisów SubRip (*.srt)

  • Plik napisów MicroDVD (*.sub)

  • Advanced Substation Alpha subtitles file (*.ass)

  • Substation Alpha subtitle file (*.ssa)

Typowy Weblate Konfiguracja komponentu

Maska pliku

path/*.srt

Jednojęzyczny bazowy plik języka

path/en.srt

Szablon dla nowych tłumaczeń

path/en.srt

Format pliku

Plik z napisami SubRip

Zobacz także

Subtitles

Excel Open XML

Nowe w wersji 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.

Pliki HTML

Nowe w wersji 4.1.

Informacja

Support for this format is currently in beta, feedback from testing is welcome.

The translatable content is extracted from the HTML files and offered for the translation.

Zobacz także

HTML

Pliki tekstowe

Nowe w wersji 4.6.

Informacja

Support for this format is currently in beta, feedback from testing is welcome.

The translatable content is extracted from the plain text files and offered for the translation. Each paragraph is translated as a separate string.

Istnieją trzy odmiany tego formatu:

  • Zwykły plik tekstowy

  • Plik tekstowy DokuWiki

  • Plik tekstowy MediaWiki

Zobacz także

Simple Text Documents

Format OpenDocument

Nowe w wersji 4.1.

Informacja

Support for this format is currently in beta, feedback from testing is welcome.

The translatable content is extracted from the OpenDocument files and offered for the translation.

Zobacz także

OpenDocument Format

Format IDML

Nowe w wersji 4.1.

Informacja

Support for this format is currently in beta, feedback from testing is welcome.

The translatable content is extracted from the Adobe InDesign Markup Language files and offered for the translation.

Format TermBase eXchange

Nowe w wersji 4.5.

TBX is an XML format for the exchange of terminology data.

Typowy Weblate Konfiguracja komponentu

Maska pliku

tbx/*.tbx

Jednojęzyczny bazowy plik języka

Puste

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik TermBase eXchange

Zobacz także

TBX w Wikipedii, TBX, Słownik

Format stringsdict

Nowe w wersji 4.8.

Informacja

Support for this format is currently in beta, feedback from testing is welcome.

XML based format used by Apple which is able to store plural forms of a string.

Typowy Weblate Konfiguracja komponentu

Maska pliku

Resources/*.lproj/Localizable.stringsdict

Jednojęzyczny bazowy plik języka

Resources/en.lproj/Localizable.stringsdict lub Resources/Base.lproj/Localizable.stringsdict

Szablon dla nowych tłumaczeń

Puste

Format pliku

Plik stringsdict

Format Fluent

Nowe w wersji 4.8.

Informacja

Support for this format is currently in beta, feedback from testing is welcome.

Fluent is a monolingual text format that focuses on asymmetric localization: a simple string in one language can map to a complex multi-variant translation in another language.

Typowy Weblate Konfiguracja komponentu

Maska pliku

locales/*/messages.ftl

Jednojęzyczny bazowy plik języka

locales/en/messages.ftl

Szablon dla nowych tłumaczeń

Puste

Format pliku

`Plik Fluent `

Zobacz także

Strona Project Fluent

Obsługa innych formatów

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.