Formate të mbuluar kartelash

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.

Shënim

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.

Formate dygjuhësh dhe njëgjuhësh

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 Vargje 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 Burime vargjesh Android). 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 Kartelë njëgjuhëshe gjuhe bazë within Weblate, though the naming might vary in your paradigm.

Additionally this workflow can be extended by utilizing Kartelë gjuhe ndërmjetëse to include strings provided by developers, but not to be used as is in the final strings.

Pikasje e vetvetishme

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

Translation types capabilities

Capabilities of all supported formats:

Format

Linguality 1

Shumësa 2

Descriptions 3

Kontekst 4

Vendndodhje 5

Flags 8

Additional states 6

GNU gettext

dygjuhëshe

po

po

po

po

po 9

lyp përpunim

Monolingual gettext

mono

po

po

po

po

po 9

lyp përpunim

XLIFF

të dyja

po

po

po

po

po 10

lyp përpunim, i miratuar

Veti Java

të dyja

no

po

no

no

no

mi18n lang files

mono

no

po

no

no

no

Veti GWT

mono

po

po

no

no

no

Përkthime Joomla

mono

no

po

no

po

no

Qt Linguist .ts

të dyja

po

po

no

po

po 10

lyp përpunim

Burime vargjesh Android

mono

po

po 7

no

no

po 10

Vargje Apple iOS

të dyja

no

po

no

no

no

Vargje PHP

mono

no 11

po

no

no

no

Kartela JSON

mono

no

no

no

no

no

Kartela JSON i18next

mono

po

no

no

no

no

go-i18n JSON files

mono

po

no

no

no

no

Kartelë ARB

mono

po

po

no

no

no

JSON WebExtension

mono

po

po

no

no

no

Kartela burimesh .XML

mono

no

po

no

no

po 10

ResourceDictionary files

mono

no

no

no

no

po 10

Kartela CSV

të dyja

no

po

po

po

no

lyp përpunim

Kartela YAML

mono

no

po

no

no

no

Kartela Ruby YAML

mono

po

po

no

no

no

Kartela DTD

mono

no

no

no

no

no

Kartelë XML e sheshtë

mono

no

no

no

no

po 10

Kartela Windows RC

mono

no

po

no

no

no

Excel Open XML

mono

no

po

po

po

no

lyp përpunim

Kartela tejtëdhënash shitoreje aplikacionesh

mono

no

no

no

no

no

Kartela titrash

mono

no

no

no

po

no

Kartela HTML

mono

no

no

no

no

no

Format OpenDocument

mono

no

no

no

no

no

Format IDML

mono

no

no

no

no

no

Përkthime INI

mono

no

no

no

no

no

Inno Setup INI translations

mono

no

no

no

no

no

TermBase eXchange format

dygjuhëshe

no

po

no

no

po 10

Kartela tekst

mono

no

no

no

no

no

Stringsdict format

mono

po

po

no

no

no

Fluent format

mono

no 12

po

no

no

no

1

Shihni Formate dygjuhësh dhe njëgjuhësh

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

Shihni Customizing behavior using flags

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 Specifying translation flags.

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.

Vargje vetëm për lexim

Të reja në versionin 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 Burime vargjesh Android), but can be emulated in others by adding a read-only flag, see Customizing behavior using flags.

GNU gettext

Most widely used format for translating libre 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 Component configuration

Maskë kartele

po/*.po

Kartelë njëgjuhëshe gjuhe bazë

Empty

Gjedhe për përkthime të reja

po/messages.pot

Format kartelash

Gettext PO file

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.

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"

Typical Weblate Component configuration

Maskë kartele

po/*.po

Kartelë njëgjuhëshe gjuhe bazë

po/en.po

Gjedhe për përkthime të reja

po/messages.pot

Format kartelash

Gettext PO file (monolingual)

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 supports XLIFF in several variants:

XLIFF translation file

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 with gettext extensions

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

Translation states

Ndryshuar në versionin 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.

Shihni edhe

Shqyrtues enkas

Hapësira të zbrazëta dhe rreshta të rinj në 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.

Për shembull:

    <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 Customizing behavior using flags) 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 Administrim shkronjash).

String keys

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 Component configuration for bilingual XLIFF

Maskë kartele

localizations/*.xliff

Kartelë njëgjuhëshe gjuhe bazë

Empty

Gjedhe për përkthime të reja

localizations/en-US.xliff

Format kartelash

Kartelë përkthimi XLIFF

Typical Weblate Component configuration for monolingual XLIFF

Maskë kartele

localizations/*.xliff

Kartelë njëgjuhëshe gjuhe bazë

localizations/en-US.xliff

Gjedhe për përkthime të reja

localizations/en-US.xliff

Format kartelash

Kartelë përkthimi XLIFF

Veti Java

Format i brendshëm Java për përkthimet.

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.

Shënim

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 Component configuration

Maskë kartele

src/app/Bundle_*.properties

Kartelë njëgjuhëshe gjuhe bazë

src/app/Bundle.properties

Gjedhe për përkthime të reja

Empty

Format kartelash

Veti Java (ISO-8859-1)

mi18n lang files

Të reja në versionin 4.7.

File format used for JavaScript localization by mi18n. Syntactically it matches Veti Java.

Typical Weblate Component configuration

Maskë kartele

*.lang

Kartelë njëgjuhëshe gjuhe bazë

en-US.lang

Gjedhe për përkthime të reja

Empty

Format kartelash

mi18n lang file

Veti GWT

Format i brendshëm GWT për përkthimet.

GWT properties are usually used as monolingual translations.

Typical Weblate Component configuration

Maskë kartele

src/app/Bundle_*.properties

Kartelë njëgjuhëshe gjuhe bazë

src/app/Bundle.properties

Gjedhe për përkthime të reja

Empty

Format kartelash

Veti GWT

Përkthime INI

Të reja në versionin 4.1.

Format kartele INI për përkthime.

INI translations are usually used as monolingual translations.

Typical Weblate Component configuration

Maskë kartele

language/*.ini

Kartelë njëgjuhëshe gjuhe bazë

language/en.ini

Gjedhe për përkthime të reja

Empty

Format kartelash

Kartelë INI

Shënim

Weblate only extracts keys from sections within an INI file. In case your INI file lacks sections, you might want to use Përkthime Joomla or Veti Java instead.

Inno Setup INI translations

Të reja në versionin 4.1.

Inno Setup INI file format for translations.

Inno Setup INI translations are usually used as monolingual translations.

Shënim

The only notable difference to Përkthime INI is in supporting %n and %t placeholders for line break and tab.

Typical Weblate Component configuration

Maskë kartele

language/*.islu

Kartelë njëgjuhëshe gjuhe bazë

language/en.islu

Gjedhe për përkthime të reja

Empty

Format kartelash

Inno Setup INI File

Shënim

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

Përkthime Joomla

Të reja në versionin 2.12.

Format i brendshëm Joomla për përkthime.

Joomla translations are usually used as monolingual translations.

Typical Weblate Component configuration

Maskë kartele

language/*/com_foobar.ini

Kartelë njëgjuhëshe gjuhe bazë

language/en-GB/com_foobar.ini

Gjedhe për përkthime të reja

Empty

Format kartelash

Kartelë Përkthimi Joomla

Qt Linguist .ts

Translation format used in Qt based applications.

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

Typical Weblate Component configuration when using as bilingual

Maskë kartele

i18n/app.*.ts

Kartelë njëgjuhëshe gjuhe bazë

Empty

Gjedhe për përkthime të reja

i18n/app.de.ts

Format kartelash

Kartelë Përkthimi Qt Linguist

Typical Weblate Component configuration when using as monolingual

Maskë kartele

i18n/app.*.ts

Kartelë njëgjuhëshe gjuhe bazë

i18n/app.en.ts

Gjedhe për përkthime të reja

i18n/app.en.ts

Format kartelash

Kartelë Përkthimi Qt Linguist

Burime vargjesh Android

Android specific file format for translating applications.

Android string resources are monolingual, the Kartelë njëgjuhëshe gjuhe bazë is stored in a different location from the other files – res/values/strings.xml.

Typical Weblate Component configuration

Maskë kartele

res/values-*/strings.xml

Kartelë njëgjuhëshe gjuhe bazë

res/values/strings.xml

Gjedhe për përkthime të reja

Empty

Format kartelash

Burim Vargu Android

Shënim

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

Ndihmëz

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>

Vargje Apple iOS

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

Apple iOS strings are usually used as monolingual.

Typical Weblate Component configuration

Maskë kartele

Resources/*.lproj/Localizable.strings

Kartelë njëgjuhëshe gjuhe bazë

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

Gjedhe për përkthime të reja

Empty

Format kartelash

Vargje iOS (UTF-8)

Vargje PHP

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

Shembull kartele:

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

Typical Weblate Component configuration

Maskë kartele

lang/*/texts.php

Kartelë njëgjuhëshe gjuhe bazë

lang/en/texts.php

Gjedhe për përkthime të reja

lang/en/texts.php

Format kartelash

PHP strings

Vargje PHP Lavarel

Ndryshuar në versionin 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',
];

Kartela JSON

Të reja në versionin 2.0.

Ndryshuar në versionin 2.16: Since Weblate 2.16 and with translate-toolkit at-least 2.2.4, nested structure JSON files are supported as well.

Ndryshuar në versionin 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.

Shembull kartele:

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

Ndihmëz

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 Component configuration

Maskë kartele

langs/translation-*.json

Kartelë njëgjuhëshe gjuhe bazë

langs/translation-en.json

Gjedhe për përkthime të reja

Empty

Format kartelash

JSON nested structure file

Kartela JSON i18next

Ndryshuar në versionin 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.

Shënim

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.

Shembull kartele:

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

Typical Weblate Component configuration

Maskë kartele

langs/*.json

Kartelë njëgjuhëshe gjuhe bazë

langs/en.json

Gjedhe për përkthime të reja

Empty

Format kartelash

kartelë JSON i18next

go-i18n JSON files

Të reja në versionin 4.1.

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

Shënim

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

Typical Weblate Component configuration

Maskë kartele

langs/*.json

Kartelë njëgjuhëshe gjuhe bazë

langs/en.json

Gjedhe për përkthime të reja

Empty

Format kartelash

go-i18n JSON file

Kartelë ARB

Të reja në versionin 4.1.

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

Typical Weblate Component configuration

Maskë kartele

lib/l10n/intl_*.arb

Kartelë njëgjuhëshe gjuhe bazë

lib/l10n/intl_en.arb

Gjedhe për përkthime të reja

Empty

Format kartelash

Kartelë ARB

JSON WebExtension

Të reja në versionin 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.

Shënim

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.

Shembull kartele:

{
  "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 Component configuration

Maskë kartele

_locales/*/messages.json

Kartelë njëgjuhëshe gjuhe bazë

_locales/en/messages.json

Gjedhe për përkthime të reja

Empty

Format kartelash

Kartelë WebExtension JSON

Kartela burimesh .XML

Të reja në versionin 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 Component configuration

Maskë kartele

Resources/Language.*.resx

Kartelë njëgjuhëshe gjuhe bazë

Resources/Language.resx

Gjedhe për përkthime të reja

Empty

Format kartelash

.NET resource file

ResourceDictionary files

Të reja në versionin 4.13.

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

Typical Weblate Component configuration

Maskë kartele

Languages/*.xaml

Kartelë njëgjuhëshe gjuhe bazë

Language/en.xaml

Gjedhe për përkthime të reja

Empty

Format kartelash

ResourceDictionary file

Kartela CSV

Të reja në versionin 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 Kartelë njëgjuhëshe gjuhe bazë when your files are monolingual (see Formate dygjuhësh dhe njëgjuhësh).

Ndihmëz

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

Sinjalizim

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.

Shembull kartele:

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

Typical Weblate Component configuration for bilingual CSV

Maskë kartele

locale/*.csv

Kartelë njëgjuhëshe gjuhe bazë

Empty

Gjedhe për përkthime të reja

locale/en.csv

Format kartelash

Kartelë CSV

Typical Weblate Component configuration for monolingual CSV

Maskë kartele

locale/*.csv

Kartelë njëgjuhëshe gjuhe bazë

locale/en.csv

Gjedhe për përkthime të reja

locale/en.csv

Format kartelash

Simple CSV file

Multivalue CSV file

Të reja në versionin 4.13.

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

Shihni edhe

CSV

Kartela YAML

Të reja në versionin 2.9.

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

Shembull kartele YAML:

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

Typical Weblate Component configuration

Maskë kartele

translations/messages.*.yml

Kartelë njëgjuhëshe gjuhe bazë

translations/messages.en.yml

Gjedhe për përkthime të reja

Empty

Format kartelash

Kartelë YAML

Shihni edhe

YAML, Kartela Ruby YAML

Kartela Ruby YAML

Të reja në versionin 2.9.

Ruby i18n YAML files with language as root node.

Shembull kartele Ruby i18n YAML:

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

Typical Weblate Component configuration

Maskë kartele

translations/messages.*.yml

Kartelë njëgjuhëshe gjuhe bazë

translations/messages.en.yml

Gjedhe për përkthime të reja

Empty

Format kartelash

Kartelë Ruby YAML

Shihni edhe

YAML, Kartela YAML

Kartela DTD

Të reja në versionin 2.18.

Shembull kartele DTD:

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

Typical Weblate Component configuration

Maskë kartele

locale/*.dtd

Kartelë njëgjuhëshe gjuhe bazë

locale/en.dtd

Gjedhe për përkthime të reja

Empty

Format kartelash

Kartelë DTD

Shihni edhe

Mozilla DTD format

Kartelë XML e sheshtë

Të reja në versionin 3.9.

Shembull kartele XML të sheshtë:

<?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 Component configuration

Maskë kartele

locale/*.xml

Kartelë njëgjuhëshe gjuhe bazë

locale/en.xml

Gjedhe për përkthime të reja

Empty

Format kartelash

Kartelë XML e sheshtë

Shihni edhe

Flat XML

Kartela Windows RC

Ndryshuar në versionin 4.1: Support for Windows RC files has been rewritten.

Shënim

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

Shembull kartele Windows RC:

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 Component configuration

Maskë kartele

lang/*.rc

Kartelë njëgjuhëshe gjuhe bazë

lang/en-US.rc

Gjedhe për përkthime të reja

lang/en-US.rc

Format kartelash

Kartelë RC

Shihni edhe

Windows RC files

Kartela tejtëdhënash shitoreje aplikacionesh

Të reja në versionin 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 Component configuration

Maskë kartele

fastlane/android/metadata/*

Kartelë njëgjuhëshe gjuhe bazë

fastlane/android/metadata/en-US

Gjedhe për përkthime të reja

fastlane/android/metadata/en-US

Format kartelash

Kartela tejtëdhënash shitoreje aplikacionesh

Ndihmëz

In case you don’t want to translate certain strings (for example changelogs), mark them read-only (see Customizing behavior using flags). This can be automated by the Përpunim në masë.

Kartela titrash

Të reja në versionin 3.7.

Weblate can translate various subtitle files:

  • Kartelë titrash SubRip (*.srt)

  • Kartelë titrash MicroDVD (*.sub)

  • Advanced Substation Alpha subtitles file (*.ass)

  • Kartelë titrash SubStation Alpha (*.ssa)

Typical Weblate Component configuration

Maskë kartele

path/*.srt

Kartelë njëgjuhëshe gjuhe bazë

path/en.srt

Gjedhe për përkthime të reja

path/en.srt

Format kartelash

Kartelë titrash SubRip

Shihni edhe

Subtitles

Excel Open XML

Të reja në versionin 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.

Kartela HTML

Të reja në versionin 4.1.

Shënim

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.

Shihni edhe

HTML

Kartela tekst

Të reja në versionin 4.6.

Shënim

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.

There are three flavors of this format:

  • Kartelë tekst i thjeshtë

  • Kartelë tekst DokuWiki

  • Kartelë tekst MediaWiki

Shihni edhe

Simple Text Documents

Format OpenDocument

Të reja në versionin 4.1.

Shënim

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.

Shihni edhe

OpenDocument Format

Format IDML

Të reja në versionin 4.1.

Shënim

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.

TermBase eXchange format

Të reja në versionin 4.5.

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

Typical Weblate Component configuration

Maskë kartele

tbx/*.tbx

Kartelë njëgjuhëshe gjuhe bazë

Empty

Gjedhe për përkthime të reja

Empty

Format kartelash

TermBase eXchange file

Shihni edhe

TBX on Wikipedia, TBX, Fjalorth

Stringsdict format

Të reja në versionin 4.8.

Shënim

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.

Typical Weblate Component configuration

Maskë kartele

Resources/*.lproj/Localizable.stringsdict

Kartelë njëgjuhëshe gjuhe bazë

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

Gjedhe për përkthime të reja

Empty

Format kartelash

Stringsdict file

Fluent format

Të reja në versionin 4.8.

Shënim

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.

Typical Weblate Component configuration

Maskë kartele

locales/*/messages.ftl

Kartelë njëgjuhëshe gjuhe bazë

locales/en/messages.ftl

Gjedhe për përkthime të reja

Empty

Format kartelash

Fluent file

Supporting other formats

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.