Formatos de arquivos suportados¶
Weblate supports a wide range of translation formats. Each format is slightly different and provides a different set of capabilities.
Dica
Ao escolher um formato de arquivo para o seu aplicativo, é melhor colocar algum formato bem estabelecido no kit de ferramentas/plataforma que você usa. Dessa forma, seus tradutores podem usar adicionalmente todas as ferramentas que estão acostumados, e provavelmente contribuirão para o seu projeto.
- Recurso de textos do Android
- Apple iOS strings
- Arquivos de metadados da App Store
- Arquivo ARB
- Arquivos CSV
- Arquivos DTD
- Excel Open XML
- Arquivos XML simples
- Formato Fluent
- Arquivo Format.JS JSON
- GNU gettext PO (Portable Object)
- Arquivos JSON go-i18n
- Arquivos JSON gotext
- Propriedades GWT
- Arquivos HTML
- Arquivos JSON i18next
- Formato IDML
- Traduções de INI
- Traduções de Inno Setup INI
- Propriedades Java
- Traduções para Joomla
- Arquivos JSON
- Textos de PHP Laravel
- Arquivos de Markdown
- Arquivos lang mi18n
- Recursos Kotlin para dispositivos móveis
- Formato OpenDocument
- Textos de PHP
- .ts de Qt Linguist
- Arquivos de ResourceDictionary
- Arquivos de recursos .NET (RESX, RESW)
- Arquivos Ruby YAML
- Formato stringsdict
- Arquivos de legenda
- Formato TermBase eXchange
- Arquivos de texto
- JSON para WebExtension
- Arquivos RC do Windows
- XLIFF
- Arquivos YAML
Ver também
Detecção automática¶
Weblate tries to detect file format during Adicionando projetos e componentes de tradução. 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 arquivo is correct before creating the component.
Capacidades dos tipos de tradução¶
Formato |
Lingualidade [1] |
Plurais [2] |
Descrição [3] |
Contexto [4] |
Local [5] |
Marcadores [8] |
Estados adicionais [6] |
---|---|---|---|---|---|---|---|
bilíngue |
sim |
sim |
sim |
sim |
sim [9] |
necessita edição |
|
mono |
sim |
sim |
sim |
sim |
sim [9] |
necessita edição |
|
ambos |
sim |
sim |
sim |
sim |
sim |
necessita edição, aprovado |
|
ambos |
não |
sim |
não |
não |
não |
||
mono |
não |
sim |
não |
não |
não |
||
mono |
sim |
sim |
não |
não |
não |
||
mono |
não |
sim |
não |
sim |
não |
||
ambos |
sim |
sim |
não |
sim |
sim |
necessita edição |
|
mono |
sim |
sim [7] |
não |
não |
sim |
||
ambos |
não |
sim |
não |
não |
não |
||
mono |
não [10] |
sim |
não |
não |
não |
||
mono |
não |
não |
não |
não |
não |
||
mono |
sim |
não |
não |
não |
não |
||
mono |
sim |
sim |
não |
não |
não |
||
mono |
sim |
sim |
não |
sim |
não |
||
mono |
sim |
sim |
não |
não |
não |
||
mono |
sim |
sim |
não |
não |
não |
||
mono |
não |
sim |
não |
não |
sim |
||
mono |
não |
não |
não |
não |
sim |
||
ambos |
não |
sim |
sim |
sim |
não |
necessita edição |
|
mono |
não |
não |
não |
não |
não |
||
mono |
sim |
não |
não |
não |
não |
||
mono |
não |
não |
não |
não |
não |
||
mono |
não |
não |
não |
não |
sim |
||
mono |
não |
sim |
não |
não |
não |
||
mono |
não |
sim |
sim |
sim |
não |
necessita edição |
|
mono |
não |
não |
não |
não |
não |
||
mono |
não |
não |
não |
sim |
não |
||
mono |
não |
não |
não |
não |
não |
||
mono |
não |
não |
não |
não |
não |
||
mono |
não |
não |
não |
não |
não |
||
mono |
não |
não |
não |
não |
não |
||
mono |
não |
não |
não |
não |
não |
||
mono |
não |
não |
não |
não |
não |
||
bilíngue |
não |
sim |
não |
não |
sim |
||
mono |
não |
não |
não |
não |
não |
||
mono |
sim |
não |
não |
não |
não |
||
mono |
não [11] |
sim |
não |
não |
não |
Formatos bilíngues e monolíngues¶
Ambos os formatos monolingual e bilingual são suportados. Formatos bilíngues armazenam dois idiomas em um único arquivo e tradução (exemplos típicos são GNU gettext PO (Portable Object), XLIFF ou Apple iOS strings). Por outro lado, formatos monolíngues identificam o texto por ID, e cada arquivo de idioma contém apenas o mapeamento desses para qualquer idioma (tipicamente Recurso de textos do Android). Alguns formatos de arquivo são utilizados em ambas as variantes, veja a descrição detalhada abaixo.
Para o uso correto de arquivos monolíngues, Weblate requer acesso a um arquivo contendo uma lista completa de textos para traduzir com sua fonte – este arquivo é chamado de Arquivo de idioma da base monolíngue dentro do Weblate, embora a nomenclatura possa variar no seu paradigma.
Além disso este fluxo de trabalho pode ser estendido usando Arquivo de idioma intermediário para incluir textos fornecidos pelos desenvolvedores, mas não para ser usado como está nos textos finais.
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”.
Descrição do texto fonte¶
As descrições de textos fonte podem ser usadas para passar informações adicionais sobre o texto para traduzir.
Several formats have native support for providing additional info to translators (for example XLIFF, GNU gettext PO (Portable Object), JSON para WebExtension, Arquivos CSV, Excel Open XML, .ts de Qt Linguist, Arquivos JSON go-i18n, Arquivos JSON gotext, Arquivo ARB, Arquivos de recursos .NET (RESX, RESW)). Many other formats extract closest comment as source string description.
Explicação¶
The Explicação on strings can be stored and parsed from a few file formats.
Currently supported only in Formato TermBase eXchange.
Local do texto fonte¶
O local de um texto no código-fonte pode ajudar tradutores proficientes a descobrir como o texto é usado.
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 .ts de Qt Linguist.
Marcadores de tradução¶
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 Personalizando comportamento usando marcadores).
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 Especificando marcadores de tradução.
Contexto¶
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.
Dica
Pluralizing strings need proper support from the application framework as well. Choose native format of your platform such as GNU gettext PO (Portable Object), Recurso de textos do Android or Formato stringsdict.
Textos somente leitura¶
O textos de somente leitura dos arquivos de tradução serão incluídos, mas não podem ser editados no Weblate. Esse recurso é suportado nativamente por poucos formatos (XLIFF e Recurso de textos do Android), mas pode ser emulado em outros adicionando um marcador read-only
, consulte Personalizando comportamento usando marcadores.
Suportando outros formatos¶
A maioria dos formatos suportados pelo translate-toolkit que tem suporte a serialização pode ser facilmente suportado, mas eles não (ainda) receberam nenhum teste. Na maioria dos casos, alguma camada fina é necessária no Weblate para ocultar diferenças no comportamento de diferentes armazenamentos do translate-toolkit.
Para adicionar suporte para um novo formato, a abordagem preferida é primeiro implementar o suporte para ele no translate-toolkit.
Ver também