Formatos de archivo admitidos#

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

Consejo

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.

Detección automática#

Weblate tries to detect file format during Añadir proyectos y componentes de traducción. The detection might be wrong for different variants of the same serialization format (JSON, YAML, properties) or file encoding, so please verify that Formato de archivo is correct before creating the component.

Translation types capabilities#

Capabilities of all supported formats#

Formato

Linguality [1]

Plurales [2]

Descriptions [3]

Contexto [4]

Ubicación [5]

Flags [8]

Estados adicionales [6]

gettext de GNU

bilingual

yes

yes

yes

yes

yes [9]

needs editing

gettext monolingüe

mono

yes

yes

yes

yes

yes [9]

needs editing

XLIFF

both

yes

yes

yes

yes

yes

needs editing, approved

Propiedades de Java

both

no

yes

no

no

no

mi18n lang files

mono

no

yes

no

no

no

Propiedades GWT

mono

yes

yes

no

no

no

Traducciones para Joomla

mono

no

yes

no

yes

no

.ts de Qt Linguist

both

yes

yes

no

yes

yes

needs editing

Recursos de cadenas de Android

mono

yes

yes [7]

no

no

yes

Cadenas de iOS de Apple

both

no

yes

no

no

no

Cadenas de PHP

mono

no [10]

yes

no

no

no

Archivos JSON

mono

no

no

no

no

no

i18next JSON files

mono

yes

no

no

no

no

Archivos JSON de go-i18n

mono

yes

yes

no

no

no

gotext JSON files

mono

yes

yes

no

yes

no

Archivo ARB

mono

yes

yes

no

no

no

JSON para WebExtension

mono

yes

yes

no

no

no

RESX .NET resource files

mono

no

yes

no

no

yes

ResourceDictionary files

mono

no

no

no

no

yes

Archivos CSV

both

no

yes

yes

yes

no

needs editing

YAML files

mono

no

no

no

no

no

Ruby YAML files

mono

yes

no

no

no

no

DTD files

mono

no

no

no

no

no

Flat XML files

mono

no

no

no

no

yes

Archivos RC de Windows

mono

no

yes

no

no

no

Open XML de Excel

mono

no

yes

yes

yes

no

needs editing

Archivos de metadatos de tiendas de aplicaciones

mono

no

no

no

no

no

Archivos de subtítulos

mono

no

no

no

yes

no

Archivos HTML

mono

no

no

no

no

no

Formato OpenDocument

mono

no

no

no

no

no

Formato IDML

mono

no

no

no

no

no

Traducciones en INI

mono

no

no

no

no

no

Traducciones INI de Inno Setup

mono

no

no

no

no

no

TermBase eXchange format

bilingual

no

yes

no

no

yes

Archivos de texto

mono

no

no

no

no

no

Stringsdict format

mono

yes

yes

no

no

no

Fluent format

mono

no [11]

yes

no

no

no

Formatos bilingües y monolingües#

Both monolingual and bilingual formats are supported. Bilingual formats store two languages in single file—source and translation (typical examples are gettext de GNU, XLIFF or Cadenas de iOS de Apple). 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 Recursos de cadenas de 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 Archivo de base monolingüe within Weblate, though the naming might vary in your paradigm.

Additionally this workflow can be extended by utilizing Archivo de idioma intermediario to include strings provided by developers, but not to be used as is in the final strings.

Indicadores de traducción#

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 Personalizar el comportamiento mediante indicadores).

This feature is modelled on flags in gettext de GNU.

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 Especificar indicadores de traducción.

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.

Consejo

Pluralizing strings need proper support from the application framework as well. Choose native format of your platform such as gettext de GNU, Recursos de cadenas de Android or Stringsdict format.

Cadenas de solo lectura#

Nuevo en la versión 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 Recursos de cadenas de Android), but can be emulated in others by adding a read-only flag, see Personalizar el comportamiento mediante indicadores.

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.