Localization file formats

Weblate supports a wide range of translation formats. Each format is slightly different and provides a different set of capabilities.

Ndihmëz

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.

Pikasje e vetvetishme

Weblate tries to detect file format during Adding translation projects and components. The detection might be wrong for different variants of the same serialization format (JSON, YAML, properties) or file encoding, so please verify that Format kartelash is correct before creating the component.

Translation types capabilities

Please refer to the documentation page of each individual file format for information about which features are supported in that format.

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 PO (Portable Object), XLIFF 1.1 and 1.2 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.

String states

Many file formats only differentiate «Untranslated» and «Translated» strings. With some formats it is possible to store more fine-grained state information, such as «Needs editing» or «Approved».

Përshkrim vargu burim

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

Several formats have native support for providing additional info to translators (for example XLIFF 1.1 and 1.2, GNU gettext PO (Portable Object), JSON WebExtension, Kartela CSV, Excel Open XML, Qt Linguist .ts, Kartela JSON go-i18n, Kartela JSON gotext, Kartelë ARB, Kartela burimesh .NET (RESX, RESW)). Many other formats extract closest comment as source string description.

Shpjegim

The Shpjegim on strings can be stored and parsed from a few file formats.

Currently supported only in Format TermBase eXchange.

Vendndodhje vargu burim

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

This information is typically available in bilingual formats where strings are extracted from the source code using tools. For example GNU gettext PO (Portable Object) and Qt Linguist .ts.

Flamurka përkthimi

Translation flags allow customizing Weblate behavior. Some formats support defining those in the translation file (you can always define them in the Weblate interface, see Customizing behavior using flags).

This feature is modelled on flags in GNU gettext PO (Portable Object).

Additionally, for all XML based format, the flags are extracted from the non-standard attribute weblate-flags. Additionally max-length:N is supported through the maxwidth attribute as defined in the XLIFF standard, see Specifying translation flags.

Kontekst

Context is used to differentiate identical strings in a bilingual format 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).

For monolingual formats the string identifier (often called key) can serve the same purpose and additional context is not necessary.

Pluralized strings

Plurals are necessary to properly localize strings with variable count. The rules depend on a target language and many formats follow CLDR specification for that.

Ndihmëz

Pluralizing strings need proper support from the application framework as well. Choose native format of your platform such as GNU gettext PO (Portable Object), Burime vargjesh Android or Format Stringsdict.

Vargje vetëm për lexim

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 1.1 and 1.2 and Burime vargjesh Android), but can be emulated in others by adding a read-only flag, see Customizing behavior using flags.

Supporting other formats

Most formats supported by translate-toolkit which support serializing can be easily supported, but they did not (yet) received any testing. In most cases, an additional thin layer is needed in Weblate to hide differences in behavior of different storages.

To add support for a new format, the preferred approach is to first implement support for it in the translate-toolkit.

Parametra formati kartelash

File format parameters provide a way to configure settings related to the file format. They are configured at component level and allow you to customize how file parsing and serialization are handled.

List of file format parameters

Parameter name

File formats

Label

Help text

csv_encoding

  • csv

  • csv-multi

Kodim kartelash

Kodim i përdorur për kartela CSV

Available choices:

auto

Vetëpikase

utf-8

UTF-8

csv_simple_encoding

  • csv-simple

Kodim kartelash

Kodim i përdorur për kartela të thjeshta CSV

Available choices:

auto

Vetëpikase

utf-8

UTF-8

iso-8859-1

ISO-8859-1

dos_eol

All file formats

Funde rreshtash DOS

Te vargjet, përdor funde rreshtash në stil DOS (rn), në vend se funde rreshtash në stil UNIX (n).

flatxml_key_name

  • flatxml

Emër kyçi FlatXML

flatxml_root_name

  • flatxml

Emër Rrënje FlatXML

flatxml_value_name

  • flatxml

Vlerë kyçi FlatXML

gwt_encoding

  • gwt

Kodim kartelash

Kodim i përdorur për kartela Vetish GWT

Available choices:

utf-8

UTF-8

iso-8859-1

ISO-8859-1

json_indent

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Hapësirë kryeradhe JSON

json_indent_style

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Stil hapësirash kryeradhe JSON

Available choices:

spaces

Hapësira

tabs

Skeda

json_sort_keys

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Rendit kyçe JSON

json_use_compact_separators

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Mos lejo hapësira pas ndarësish

line_max_length

  • markdown

  • mdx

Gjatësi maksimum rreshtash

Numri maksimum i shenjave për çdo rresht te kartela përfundim.

md_extract_code_blocks

  • markdown

  • mdx

Përfto blloqe kodi

Të përftohet apo jo lëndë e përkthyeshme nga blloqe kodi në kartela Markdown dhe MDX.

md_extract_frontmatter

  • markdown

  • mdx

Extract front matter

Whether to extract and translate YAML front matter blocks in Markdown and MDX files.

md_no_placeholders

  • markdown

  • mdx

Çaktivizo vendmbajtëse

Çaktivizon pikasje dhe përpunim vendmbajtësesh në kartela Markdown dhe MDX.

merge_duplicates

  • markdown

  • mdx

  • html

  • txt

  • dokuwiki

  • mediawiki

  • asciidoc

Çpërsëdyt vargje indetike

Konsolidon vargje burim identike në një njësi të vetme përkthimi. Parandalon humbje përkthimesh gjatë ristrukturimi kartelash, ose rirenditje tabelash, duke hequr kontekst të varur nga pozicioni.

po_fuzzy_matching

  • po

Përdor përputhje të turbullt

po_keep_previous

  • po

Mbaji msgid-e të mëparshëm të vargjeve të përkthyer

po_line_wrap

  • po

  • po-mono

Mbështjellje rreshtash të gjatë

By default, gettext wraps lines at 77 characters and at newlines. With the --no-wrap parameter, wrapping is only done at newlines.

Available choices:

77

Mbështill rreshtat pas 77 shenjash dhe në rreshta të rinj (parazgjedhja e xgettext-it)

65535

Only wrap lines at newlines (like xgettext --no-wrap)

-1

Pa mbështjellje rreshtash

po_no_location

  • po

Mos përfshini te kartela hollësi vendndodhjeje

po_report_msgid_bugs_to

  • po

  • po-mono

Njoftoni të meta msgid-esh te

Lets Weblate update the «Report-Msgid-Bugs-To» file header if Source string bug reporting address is set.

po_set_language_team

  • po

  • po-mono

Përditësoni kryet për ekip gjuhe

E lejon Weblate-in të përditësojë kryet «Language-Team» të kartelës.

po_set_last_translator

  • po

  • po-mono

Përditësoni krye “përkthyesi i fundit”

E lejon Weblate-in të përditësojë kryet «Last-Translator» të kartelës.

po_set_x_generator

  • po

  • po-mono

Përditësoni kryet X-Generator

E lejon Weblate-in të përditësojë kryet «X-Generator» të kartelës.

properties_encoding

  • properties

Kodim kartelash

Kodim i përdorur për kartela Java Properties

Available choices:

iso-8859-1

ISO-8859-1

utf-8

UTF-8

utf-16

UTF-16

strings_encoding

  • strings

Kodim kartelash

Kodim i përdorur për kartela vargjesh iOS

Available choices:

utf-8

UTF-8

utf-16

UTF-16

xml_closing_tags

  • ts

  • plainxliff

  • xliff

  • xliff2

  • xliff2-placeables

  • poxliff

  • apple-xliff

  • resx

  • aresource

  • moko-resource

  • cmp-resource

  • tbx

Përfshi etiketë mbyllëse për etiketa XML të zbrazëta

yaml_indent

  • yaml

  • ruby-yaml

Hapësirë kryeradhe YAML

yaml_line_break

  • yaml

  • ruby-yaml

Ndërprerje rreshtash

Available choices:

dos

DOS (\r\n)

unix

UNIX (\n)

mac

MAC (\r)

yaml_line_wrap

  • yaml

  • ruby-yaml

Mbështjellje rreshtash të gjatë

Available choices:

80

Mbështill rreshtat pas 80 shenjash

100

Mbështill rreshtat pas 100 shenjash

120

Mbështill rreshtat pas 120 shenjash

180

Mbështill rreshtat pas 180 shenjash

65535

Pa mbështjellje rreshtash