Formate de fișiere acceptate

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

Sugestie

Atunci când alegeți un format de fișier pentru aplicația voastră, este mai bine să folosiți un format bine stabilit în setul de instrumente/platforma pe care o utilizați. În acest fel, traducătorii voștri pot folosi în plus orice instrumente cu care sunt obișnuiți și vor contribui mai probabil la proiectul dumneavoastră.

Detecție automată

Weblate tries to detect file format during Adăugarea de proiecte și componente de traducere. The detection might be wrong for different variants of the same serialization format (JSON, YAML, properties) or file encoding, so please verify that Format fișier is correct before creating the component.

Capabilități ale tipurilor de traducere

Capabilities of all supported formats

Formatul

Lingvistică [1]

Pluralurile [2]

Descrieri [3]

Contextul [4]

Locație [5]

Indicatori [8]

State suplimentare [6]

GNU gettext PO (Portable Object)

bilingv

da

da

da

da

da [9]

are nevoie de editare

Gettext monolingv

mono

da

da

da

da

da [9]

are nevoie de editare

XLIFF

ambele

da

da

da

da

da

necesită editare, aprobat

Proprietăți Java

ambele

nu

da

nu

nu

nu

mi18n lang fișiere

mono

nu

da

nu

nu

nu

Proprietăți GWT

mono

da

da

nu

nu

nu

Traduceri Joomla

mono

nu

da

nu

da

nu

Qt Linguist .ts

ambele

da

da

nu

da

da

are nevoie de editare

Resurse de șiruri Android

mono

da

da [7]

nu

nu

da

Șiruri Apple iOS

ambele

nu

da

nu

nu

nu

Șiruri PHP

mono

nu [10]

da

nu

nu

nu

Fișiere JSON

mono

nu

nu

nu

nu

nu

Fișiere i18next JSON

mono

da

nu

nu

nu

nu

fișiere JSON go-i18n

mono

da

da

nu

nu

nu

Fișiere gotext JSON

mono

da

da

nu

da

nu

Fișier ARB

mono

da

da

nu

nu

nu

WebExtensiune JSON

mono

da

da

nu

nu

nu

Fișiere resurse .NET (RESX, RESW)

mono

nu

da

nu

nu

da

Fișiere ResourceDictionary

mono

nu

nu

nu

nu

da

Fișiere CSV

ambele

nu

da

da

da

nu

are nevoie de editare

Fișiere YAML

mono

nu

nu

nu

nu

nu

Fișiere Ruby YAML

mono

da

nu

nu

nu

nu

Fișiere DTD

mono

nu

nu

nu

nu

nu

Fișiere XML plane

mono

nu

nu

nu

nu

da

Fișiere Windows RC

mono

nu

da

nu

nu

nu

Excel Open XML

mono

nu

da

da

da

nu

are nevoie de editare

Fișiere de metadate magazin de aplicații

mono

nu

nu

nu

nu

nu

Fișiere de subtitrare

mono

nu

nu

nu

da

nu

Fișiere HTML

mono

nu

nu

nu

nu

nu

Fișiere Markdown

mono

nu

nu

nu

nu

nu

Formatul OpenDocument

mono

nu

nu

nu

nu

nu

Formatul IDML

mono

nu

nu

nu

nu

nu

Traduceri INI

mono

nu

nu

nu

nu

nu

Traduceri Inno Setup INI

mono

nu

nu

nu

nu

nu

Formatul TermBase eXchange

bilingv

nu

da

nu

nu

da

Fișiere text

mono

nu

nu

nu

nu

nu

Formatul Stringsdict

mono

da

nu

nu

nu

nu

Format fluent

mono

nu [11]

da

nu

nu

nu

Formate bilingve și monolingve

Sunt acceptate atât formatul monolingual, cât și bilingual. Formatele bilingve stochează două limbi într-un singur fișier-sursă și traducere (exemple tipice sunt GNU gettext PO (Portable Object), XLIFF sau Șiruri Apple iOS). Pe de altă parte, formatele monolingve identifică șirul de caractere prin ID, iar fiecare fișier de limbă conține doar maparea acestora într-o anumită limbă (tipic Resurse de șiruri Android). Unele formate de fișiere sunt utilizate în ambele variante, a se vedea descrierea detaliată de mai jos.

Pentru utilizarea corectă a fișierelor monolingve, Weblate are nevoie de acces la un fișier care să conțină lista completă a șirurilor de caractere care trebuie traduse împreună cu sursa lor - acest fișier se numește Fișier de limbă de bază monolingvă în Weblate, deși denumirea poate varia în paradigma dumneavoastră.

În plus, acest flux de lucru poate fi extins prin utilizarea Fișier de limbă intermediar pentru a include șiruri de caractere furnizate de dezvoltatori, dar care să nu fie utilizate ca atare în șirurile finale.

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

Descriere șir sursă

Descrierile șirului sursă pot fi utilizate pentru a transmite informații suplimentare despre șirul de tradus.

Several formats have native support for providing additional info to translators (for example XLIFF, GNU gettext PO (Portable Object), WebExtensiune JSON, Fișiere CSV, Excel Open XML, Qt Linguist .ts, fișiere JSON go-i18n, Fișiere gotext JSON, Fișier ARB, Fișiere resurse .NET (RESX, RESW)). Many other formats extract closest comment as source string description.

Explicație

The Explicație on strings can be stored and parsed from a few file formats.

Currently supported only in Formatul TermBase eXchange.

Locație șir sursă

Localizarea unui șir de caractere în codul sursă ar putea ajuta traducătorii pricepuți să își dea seama cum este utilizat acel șir.

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.

Indicarori traducere

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 Personalizarea comportamentului cu ajutorul stegulețelor).

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 Specificarea indicatoarelor de traducere.

Context

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.

Sugestie

Pluralizing strings need proper support from the application framework as well. Choose native format of your platform such as GNU gettext PO (Portable Object), Resurse de șiruri Android or Formatul Stringsdict.

Șiruri numai pentru citire

Șirurile de caractere numai pentru citire din fișierele de traducere vor fi incluse, dar nu pot fi editate în Weblate. Această caracteristică este susținută nativ de câteva formate (XLIFF și Resurse de șiruri Android), dar poate fi emulată în altele prin adăugarea unui indicator read-only, a se vedea Personalizarea comportamentului cu ajutorul stegulețelor.

Sprijinirea altor formate

Majoritatea formatelor acceptate de translate-toolkit care acceptă serializarea pot fi acceptate cu ușurință, dar nu au fost (încă) testate. În cele mai multe cazuri este nevoie de un strat subțire în Weblate pentru a ascunde diferențele de comportament ale diferitelor stocări translate-toolkit.

Pentru a adăuga suport pentru un nou format, abordarea preferată este de a implementa mai întâi suportul pentru acesta în translate-toolkit.