Formatos de arquivo de localização

O Weblate suporta uma ampla gama de formatos de tradução. Cada formato é ligeiramente diferente e fornece um conjunto diferente de capacidades.

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.

Detecção automática

O Weblate tenta detectar o formato do arquivo enquanto vai Adicionando projetos e componentes de tradução. A detecção pode estar errada para diferentes variantes do mesmo formato de serialização (JSON, YAML, propriedades) ou codificação de arquivo, então verifique se o Formato de arquivo está correto antes de criar o componente.

Capacidades dos tipos de tradução

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

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 (Objeto Portátil), XLIFF 1.1 and 1.2 ou Textos de Apple iOS). 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.

Status de textos

Muitos formatos de arquivo diferenciam apenas textos “Não traduzidos” e “Traduzidos”. Com alguns formatos, é possível armazenar informações de status mais refinadas, como “Necessita de edição” ou “Aprovado”.

Descrição do texto fonte

As descrições de textos fonte podem ser usadas para passar informações adicionais sobre o texto para traduzir.

Vários formatos têm suporte nativo para fornecer informações adicionais aos tradutores (por exemplo, XLIFF 1.1 and 1.2, GNU gettext PO (Objeto Portátil), 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)). Muitos outros formatos extraem o comentário mais próximo como descrição do texto fonte.

Explicação

A Explicação em textos pode ser armazenada e analisada a partir de alguns formatos de arquivo.

Atualmente suportada apenas em 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.

Essas informações geralmente estão disponíveis em formatos bilíngues, onde os textos são extraídos do código-fonte usando ferramentas. Por exemplo, GNU gettext PO (Objeto Portátil) e .ts de Qt Linguist.

Marcadores de tradução

Os sinalizadores de tradução permitem personalizar o comportamento do Weblate. Alguns formatos suportam a definição deles no arquivo de tradução (você sempre pode defini-los na interface do Weblate, consulte Personalizando comportamento usando marcadores).

Este recurso é modelado em sinalizadores em GNU gettext PO (Objeto Portátil).

Adicionalmente, para todo formato baseado em XML, os marcadores são extraídos do atributo não padrão weblate-flags. Adicionalmente, o max-length:N é suportado através do atributo maxwidth como definido no padrão XLIFF, consulte Especificando marcadores de tradução.

Contexto

O contexto é usado para diferenciar textos idênticos em um formato bilíngue usado em diferentes escopos (por exemplo, Sun pode ser usado como um nome abreviado do dia “Sunday” ou como o nome de nossa estrela mais próxima).

Para formatos monolíngues, o identificador de texto (geralmente chamado de chave) pode servir ao mesmo propósito e não é necessário contexto adicional.

Textos pluralizados

Os plurais são necessários para localizar adequadamente os textos com contagem variável. As regras dependem de um idioma de destino e muitos formatos seguem a especificação CLDR para isso.

Dica

Textos pluralizantes também precisam de suporte adequado da estrutura do aplicativo. Escolha o formato nativo da sua plataforma, como GNU gettext PO (Objeto Portátil), Recurso de textos do Android ou 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 1.1 and 1.2 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

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.

Para adicionar suporte para um novo formato, a abordagem preferida é primeiro implementar o suporte para ele no translate-toolkit.

Parâmetros de formato de arquivo

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

Formatos de arquivo

Label

Help text

csv_encoding

  • csv

  • csv-multi

Codificação de arquivo

Codificação utilizada para arquivos CSV

Escolhas disponíveis:

auto

Detecção automática

utf-8

UTF-8

csv_simple_encoding

  • csv-simple

Codificação de arquivo

Codificação utilizada para arquivos CSV simples

Escolhas disponíveis:

auto

Detecção automática

utf-8

UTF-8

iso-8859-1

ISO-8859-1

dos_eol

All file formats

Fins de linhas DOS

Use DOS line endings (rn) instead of UNIX line endings (n) in strings.

flatxml_key_name

  • flatxml

Nome da chave FlatXML

flatxml_root_name

  • flatxml

Nome da raiz FlatXML

flatxml_value_name

  • flatxml

Nome do valor FlatXML

gwt_encoding

  • gwt

Codificação de arquivo

Codificação usada para arquivos de propriedades GWT

Escolhas disponíveis:

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

Recuo do JSON

json_indent_style

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Estilo de recuo do JSON

Escolhas disponíveis:

spaces

Espaços

tabs

Tabulações

json_sort_keys

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Ordenar chaves JSON

json_use_compact_separators

  • json

  • json-nested

  • webextension

  • i18next

  • i18nextv4

  • arb

  • go-i18n-json

  • go-i18n-json-v2

  • formatjs

  • gotext

Evite espaços após os separadores

line_max_length

  • markdown

  • mdx

Maximum line length

The maximum number of characters for each line in the output file.

md_extract_code_blocks

  • markdown

  • mdx

Extract code blocks

Whether to extract translatable content from code blocks in Markdown and MDX files.

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

Disable placeholders

Disables detection and processing of placeholders in Markdown and MDX files.

merge_duplicates

  • markdown

  • mdx

  • html

  • txt

  • dokuwiki

  • mediawiki

  • asciidoc

Remover textos idênticos e duplicados

Consolido textos fontes idênticos em uma única unidade de tradução. Impede a perda de tradução durante a reestruturação de arquivos ou reordenação de tabelas, removendo o contexto dependente da posição.

po_fuzzy_matching

  • po

Usar correspondência aproximada

po_keep_previous

  • po

Manter “msgids” anteriores de textos traduzidos

po_line_wrap

  • po

  • po-mono

Quebra de linhas longas

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

Escolhas disponíveis:

77

Quebrar linhas em 77 caracteres e em novas linhas (padrão do xgettext)

65535

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

-1

Sem quebra de linhas

po_no_location

  • po

Não incluir informações de local no arquivo

po_report_msgid_bugs_to

  • po

  • po-mono

Report msgid bugs to

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

Update language team header

Lets Weblate update the “Language-Team” file header.

po_set_last_translator

  • po

  • po-mono

Update last translator header

Lets Weblate update the “Last-Translator” file header.

po_set_x_generator

  • po

  • po-mono

Update X-Generator header

Lets Weblate update the “X-Generator” file header.

properties_encoding

  • properties

Codificação de arquivo

Codificação usada para arquivos de propriedades Java

Escolhas disponíveis:

iso-8859-1

ISO-8859-1

utf-8

UTF-8

utf-16

UTF-16

strings_encoding

  • strings

Codificação de arquivo

Codificação usada para arquivos de textos do iOS

Escolhas disponíveis:

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

Incluir tag de fechamento para tags XML em branco

yaml_indent

  • yaml

  • ruby-yaml

Recuo do YAML

yaml_line_break

  • yaml

  • ruby-yaml

Quebra de linhas

Escolhas disponíveis:

dos

DOS (\r\n)

unix

UNIX (\n)

mac

MAC (\r)

yaml_line_wrap

  • yaml

  • ruby-yaml

Quebra de linhas longas

Escolhas disponíveis:

80

Quebrar linhas em 80 caracteres

100

Quebrar linhas em 100 caracteres

120

Quebrar linhas em 120 caracteres

180

Quebrar linhas em 180 caracteres

65535

Sem quebra de linhas