Formatos de arquivos suportados

O Weblate tem suporte à maioria dos formatos de tradução compreendidos pelo translate-toolkit, porém cada formato sendo ligeiramente diferente, alguns problemas com formatos que não são bem testados podem surgir.

Nota

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.

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, XLIFF 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 de 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.

Detecção automática

O Weblate pode detectar automaticamente vários formatos de arquivos generalizados, mas essa detecção pode prejudicar seu desempenho e limitará recursos específicos para o formato de arquivo dado (por exemplo, a adição automática de novas traduções).

Capacidades dos tipos de tradução

Capacidades de todos os formatos suportados:

Formato

Lingualidade 1

Plurais 2

Comentários 3

Contexto 4

Localização 5

Marcadores 8

Estados adicionais 6

GNU gettext

bilíngue

sim

sim

sim

sim

sim 9

necessita edição

Gettext monolíngue

mono

sim

sim

sim

sim

sim 9

necessita edição

XLIFF

ambos

sim

sim

sim

sim

sim 10

necessita edição, aprovado

Propriedades Java

ambos

não

sim

não

não

não

Arquivos lang mi18n

mono

não

sim

não

não

não

Propriedades GWT

mono

sim

sim

não

não

não

Traduções para Joomla

mono

não

sim

não

sim

não

.ts de Qt Linguist

ambos

sim

sim

não

sim

sim 10

necessita edição

Recurso de textos de Android

mono

sim

sim 7

não

não

sim 10

Textos de Apple iOS

bilíngue

não

sim

não

não

não

Textos do PHP

mono

não 11

sim

não

não

não

Arquivos JSON

mono

não

não

não

não

não

Arquivos i18next do JSON

mono

sim

não

não

não

não

Arquivos JSON go-i18n

mono

sim

não

não

não

não

Arquivo ARB

mono

sim

sim

não

não

não

JSON WebExtension

mono

sim

sim

não

não

não

Arquivos de recursos .XML

mono

não

sim

não

não

sim 10

Arquivos CSV

ambos

não

sim

sim

sim

não

necessita edição

Arquivos YAML

mono

não

sim

não

não

não

Arquivos Ruby YAML

mono

sim

sim

não

não

não

Arquivos DTD

mono

não

não

não

não

não

Arquivos XML simples

mono

não

não

não

não

sim 10

Arquivos RC do Windows

mono

não

sim

não

não

não

Excel Open XML

mono

não

sim

sim

sim

não

necessita edição

Arquivos de metadados de loja de aplicativos

mono

não

não

não

não

não

Arquivos de legenda

mono

não

não

não

sim

não

Arquivos HTML

mono

não

não

não

não

não

Formato OpenDocument

mono

não

não

não

não

não

Formato IDML

mono

não

não

não

não

não

Traduções de INI

mono

não

não

não

não

não

Traduções de Inno Setup INI

mono

não

não

não

não

não

Formato TermBase eXchange

bilíngue

não

sim

não

não

sim 10

Arquivos texto

mono

não

não

não

não

não

Stringsdict format

mono

sim

sim

não

não

não

Fluent format

mono

no 12

sim

não

não

não

1

Veja Formatos bilíngues e monolíngues

2

Os plurais são necessários para localizar adequadamente os textos com contagem variável.

3

Os comentários podem ser usados para passar informações adicionais sobre o texto para traduzir.

4

O contexto é usado para diferenciar textos idênticos usados 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).

5

A localização de um texto no código-fonte pode ajudar tradutores proficientes a descobrir como o texto é usado.

6

Estados adicionais suportados pelo formato do arquivo, além de “Não traduzido” e “Traduzido”.

7

Comentário XML colocado antes do elemento <string>, analisado como um comentário do desenvolvedor.

8

Veja Personalizando comportamento usando marcadores

9(1,2)

Os comentários do tipo gettext são usados como marcadores.

10(1,2,3,4,5,6)

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

11

Os plurais são suportados apenas para Laravel, que usa em sintaxe de textos para defini-los, veja Localização em Laravel`_.

12

Plurals are handled in the syntax of the strings and not exposed as plurals in Weblate.

Textos somente leitura

Novo na versão 3.10.

O textos somente leitura dos arquivos de tradução serão incluídos, mas não podem ser editadas no Weblate. Esse recurso é suportado nativamente por poucos formatos (XLIFF e Recurso de textos de Android), mas pode ser emulado em outros adicionando um marcador read-only, consulte Personalizando comportamento usando marcadores.

GNU gettext

O formato mais usado para traduzir software livre.

As informações contextuais armazenadas no arquivo são suportadas ajustando seus cabeçalhos ou vinculando-se a arquivos fonte correspondentes.

O arquivo de PO de texto bilíngue normalmente se parece com este:

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Monday"
msgstr "Pondělí"

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "Tuesday"
msgstr "Úterý"

#: weblate/accounts/avatar.py:163
msgctxt "No known user"
msgid "None"
msgstr "Žádný"

Configuração de componente típica do Weblate

Máscara do arquivo

po/*.po

Arquivo de idioma da base monolíngue

Vazio

Modelo para novas traduções

po/messages.pot

Formato de arquivo

Arquivo Gettext PO

Gettext monolíngue

Alguns projetos decidem usar o gettext como formatos monolíngues – eles codificam apenas os IDs em seu código-fonte e o texto então precisa ser traduzido para todos os idiomas, incluindo o inglês. Isso é suportado, embora você tenha que escolher este formato de arquivo explicitamente ao importar componentes para o Weblate.

O arquivo gettext PO monolíngue normalmente se parece com este:

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Pondělí"

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Úterý"

#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "Žádný"

Enquanto o arquivo de idioma base será:

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-monday"
msgstr "Monday"

#: weblate/media/js/bootstrap-datepicker.js:1421
msgid "day-tuesday"
msgstr "Tuesday"

#: weblate/accounts/avatar.py:163
msgid "none-user"
msgstr "None"

Configuração de componente típica do Weblate

Máscara do arquivo

po/*.po

Arquivo de idioma da base monolíngue

po/en.po

Modelo para novas traduções

po/messages.pot

Formato de arquivo

Arquivo Gettext PO (monolíngue)

XLIFF

Formato baseado em XML criado para padronizar arquivos de tradução, mas no final é um dos muitos padrões, nesta área.

XML Localization Interchange File Format (XLIFF) é normalmente utilizado como bilíngue, mas Weblate também o suporta como monolíngue.

Ver também

Especificação do `XML Localization Interchange File Format (XLIFF)

Estados de tradução

Alterado na versão 3.3: Weblate ignorava o atributo state antes da versão 3.3.

O atributo state no arquivo é parcialmente processado e mapeado para o estado “Necessita edição” no Weblate (os seguintes estados são utilizados para marcar o texto como necessitando editar se houver um alvo presente: new, needs-translation, needs-adaptation, needs-l10n). Caso o atributo state esteja faltando, um texto é considerado traduzido assim que um elemento <target> existir.

Se o texto de tradução tiver approved="yes", ela também será importada para a Weblate como “Aprovado”, qualquer outra coisa será importada como “Aguardando revisão” (que corresponde à especificação XLIFF).

Ao salvar, o Weblate não adiciona esses atributos a menos que seja necessário:

  • O atributo state só é adicionado no caso de texto ser marcado como necessitando de edição.

  • O atributo approved só é adicionado no caso de texto ter sido revisto.

  • Em outros casos os atributos não são adicionados, mas são atualizados no caso de estarem presentes.

Isso significa que, ao utilizar o formato XLIFF, é fortemente recomendado ativar o processo de revisão do Weblate, a fim de ver e alterar o estado aprovado de textos.

Da mesma forma, ao importar tais arquivos (no formulário de envio), você deve escolher Importador como traduzido em Processando os textos que necessitam edição.

Ver também

Revisores dedicados

Espaços em branco e novas linhas em XLIFF

Geralmente os tipos ou quantidades de espaços em branco não são diferenciados entre si nos formatos XML. Se você quiser mantê-los, você tem que adicionar o marcador xml:space="preserve" ao texto.

Por exemplo:

    <trans-unit id="10" approved="yes">
        <source xml:space="preserve">hello</source>
        <target xml:space="preserve">Hello, world!
</target>
    </trans-unit>

Especificando marcadores de tradução

Você pode especificar marcadores de tradução adicionais (veja Personalizando comportamento usando marcadores) utilizando o atributo weblate-flags. Weblate também entende os atributos maxwidth e font da especificação XLIFF:

<trans-unit id="10" maxwidth="100" size-unit="pixel" font="ubuntu;22;bold">
   <source>Hello %s</source>
</trans-unit>
<trans-unit id="20" maxwidth="100" size-unit="char" weblate-flags="c-format">
   <source>Hello %s</source>
</trans-unit>

O atributo fonte é analisado para a família de fontes, tamanho e peso, o exemplo acima mostra tudo isso, embora apenas a família de fontes seja necessária. Qualquer espaço em branco na família de fontes é convertido para sublinhado, então Source Sans Pro torna-se Source_Sans_Pro, por favor tenha isso em mente ao nomear o grupo de fontes (veja Gerenciando fontes).

Chaves de textos

Weblate identifica as unidades no arquivo XLIFF pelo atributo resname no caso de estar presente e, do contrário, recorre a id (junto com a tag file se presente).

O atributo resname deveria ser um identificador humanamente amigável da unidade, tornando-a mais adequada para a exibição de Weblate em vez de id. O resname tem de ser único em todo o arquivo XLIFF. Isto é exigido pelo Weblate e não é coberto pelo padrão XLIFF – não coloca nenhuma restrição de exclusividade neste atributo.

Configuração de componente típica do Weblate para XLIFF bilíngue

Máscara do arquivo

localizations/*.xliff

Arquivo de idioma da base monolíngue

Vazio

Modelo para novas traduções

localizations/en-US.xliff

Formato de arquivo

Arquivo de tradução XLIFF

Configuração de componente típica do Weblate para XLIFF monolíngue

Máscara de arquivo

localizations/*.xliff

Arquivo de idioma da base monolíngue

localizations/en-US.xliff

Modelo para novas traduções

localizations/en-US.xliff

Formato de arquivo

Arquivo de tradução XLIFF

Propriedades Java

Formato nativo do Java para traduções.

As propriedades Java são geralmente usadas como traduções monolíngues.

Weblate é compatível com as variantes ISO-8859-1, UTF-8 e UTF-16 deste formato. Todos eles suportam o armazenamento de todos os caracteres Unicode, mas são codificados de forma diferente. No ISO-8859-1, as sequências de escape Unicode são usadas (por exemplo, zkou\u0161ka), todas as outras codificam caracteres diretamente em UTF-8 ou UTF-16.

Nota

Carregar sequências de escape também funciona no modo UTF-8, por isso, tenha cuidado ao escolher o conjunto de codificação correto para corresponder às necessidades do aplicativo.

Configuração de componente típica do Weblate

Máscara do arquivo

src/app/Bundle_*.properties

Arquivo de idioma da base monolíngue

src/app/Bundle.properties

Modelo para novas traduções

Vazio

Formato de arquivo

Propriedades Java (ISO-8859-1)

Arquivos lang mi18n

Novo na versão 4.7.

File format used for JavaScript localization by mi18n. Syntactically it matches Propriedades Java.

Configuração de componente típica do Weblate

Máscara do arquivo

*.lang

Arquivo de idioma da base monolíngue

en-US.lang

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo lang mi18n

Propriedades GWT

Formato nativo de GWT para traduções.

As propriedades GWT são geralmente usadas como traduções monolíngues.

Configuração de componente típica do Weblate

Máscara do arquivo

src/app/Bundle_*.properties

Arquivo de idioma da base monolíngue

src/app/Bundle.properties

Modelo para novas traduções

Vazio

Formato de arquivo

Propriedades GWT

Traduções de INI

Novo na versão 4.1.

Formato de arquivo INI para traduções.

As traduções de INI são geralmente usadas como traduções monolíngues.

Configuração de componente típica do Weblate

Máscara do arquivo

language/*.ini

Arquivo de idioma da base monolíngue

language/en.ini

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo INI

Nota

O Weblate só extrai chaves de seções dentro de um arquivo INI. Caso seu arquivo INI não tenha seções, você pode querer usar Traduções para Joomla ou Propriedades Java.

Traduções de Inno Setup INI

Novo na versão 4.1.

Formato de arquivo Inno Setup INI para traduções.

As traduções de Inno Setup INI são geralmente usadas como traduções monolíngues.

Nota

A única diferença notável para Traduções de INI é ter suporte aos espaços reservados %n and %t para quebra de linha e tabulação.

Configuração de componente típica do Weblate

Máscara do arquivo

language/*.islu

Arquivo de idioma da base monolíngue

language/en.islu

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo Inno Setup INI

Nota

Apenas arquivos Unicode (.islu) são suportados atualmente, a variante ANSI (.isl) não é suportada atualmente.

Traduções para Joomla

Novo na versão 2.12.

Formato nativo de Joomla para traduções.

As traduções de Joomla são geralmente usadas como traduções monolíngues.

Configuração de componente típica do Weblate

Máscara do arquivo

language/*/com_foobar.ini

Arquivo de idioma da base monolíngue

language/en-GB/com_foobar.ini

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo de idioma Joomla

.ts de Qt Linguist

Formato de tradução usado em aplicativos baseados em Qt.

Os arquivos Qt Linguist são usados como traduções bilíngues e monolíngues.

Configuração de componente típica do Weblate ao usar como bilíngue

Máscara do arquivo

i18n/app.*.ts

Arquivo de idioma da base monolíngue

Vazio

Modelo para novas traduções

i18n/app.de.ts

Formato de arquivo

Arquivo de tradução Qt Linguist

Configuração de componente típica do Weblate ao usar como monolíngue

Máscara do arquivo

i18n/app.*.ts

Arquivo de idioma da base monolíngue

i18n/app.en.ts

Modelo para novas traduções

i18n/app.en.ts

Formato de arquivo

Arquivo de tradução Qt Linguist

Recurso de textos de Android

Formato de arquivo específico do Android para traduzir aplicativos.

Os recursos de texto do Android são monolíngues, o Arquivo de idioma da base monolíngue é armazenado em um local diferente dos outros res/values/strings.xml.

Configuração de componente típica do Weblate

Máscara do arquivo

res/values-*/strings.xml

Arquivo de idioma da base monolíngue

res/values/strings.xml

Modelo para novas traduções

Vazio

Formato de arquivo

Recurso de textos de Android

Nota

As estruturas de `string-array`do Android não são atualmente suportadas. Para contornar isso, você pode quebrar seus vetores de textos:

<string-array name="several_strings">
    <item>First string</item>
    <item>Second string</item>
</string-array>

se torna:

<string-array name="several_strings">
    <item>@string/several_strings_0</item>
    <item>@string/several_strings_1</item>
</string-array>
<string name="several_strings_0">First string</string>
<string name="several_strings_1">Second string</string>

O string-array que aponta para os elementos string deve ser armazenado em um arquivo diferente e não ser disponibilizado para tradução.

Este script pode ajudar a preprocessar seus arquivos strings.xml e traduções existentes: https://gist.github.com/paour/11291062

Textos de Apple iOS

Formato de arquivo específico da Apple para traduzir aplicativos, utilizado tanto para traduções de aplicativos de iOS quanto de iPhone/iPad.

Os textos de Apple iOS geralmente são usados como traduções bilíngues.

Configuração de componente típica do Weblate

Máscara do arquivo

Resources/*.lproj/Localizable.strings

Arquivo de idioma da base monolíngue

Resources/en.lproj/Localizable.strings ou Resources/Base.lproj/Localizable.strings

Modelo para novas traduções

Vazio

Formato de arquivo

Textos do iOS (UTF-8)

Textos do PHP

As traduções PHP são geralmente monolíngues, por isso é recomendável especificar um arquivo base com (o que é mais frequentemente os) textos em inglês.

Exemplo de arquivo:

<?php
$LANG['foo'] = 'bar';
$LANG['foo1'] = 'foo bar';
$LANG['foo2'] = 'foo bar baz';
$LANG['foo3'] = 'foo bar baz bag';

Configuração de componente típica do Weblate

Máscara do arquivo

lang/*/texts.php

Arquivo de idioma da base monolíngue

lang/en/texts.php

Modelo para novas traduções

lang/en/texts.php

Formato de arquivo

Textos do PHP

Textos do PHP de Laravel

Alterado na versão 4.1.

Os arquivos de localização do PHP de Laravel também são suportados com plurais:

<?php
return [
    'welcome' => 'Welcome to our application',
    'apples' => 'There is one apple|There are many apples',
];

Arquivos JSON

Novo na versão 2.0.

Alterado na versão 2.16: Desde o Weblate 2.16 e com translate-toolkit pelo menos 2.2.4, os arquivos JSON de estrutura aninhada também são suportados.

Alterado na versão 4.3: A estrutura de arquivo JSON é devidamente preservada mesmo para situações complexas que foram quebradas em versões anteriores.

O formato JSON é usado principalmente para traduzir aplicativos implementados no JavaScript.

O Weblate atualmente suporta várias variantes das traduções JSON:

As traduções JSON são geralmente monolíngues, por isso é recomendável especificar um arquivo base com (o que é mais frequentemente os) textos em inglês.

Exemplo de arquivo:

{
  "Hello, world!\n": "Ahoj světe!\n",
  "Orangutan has %d banana.\n": "",
  "Try Weblate at https://demo.weblate.org/!\n": "",
  "Thank you for using Weblate.": ""
}

Os arquivos aninhados também são suportados (veja acima para os requisitos), tal arquivo pode parecer:

{
  "weblate": {
    "hello": "Ahoj světe!\n",
    "orangutan": "",
    "try": "",
    "thanks": ""
  }
}

Dica

O arquivo JSON e Arquivo de estrutura JSON aninhada podem ambos lidar com o mesmo tipo de arquivos. Ambos preservam a estrutura JSON existente ao traduzir.

A única diferença entre eles é ao adicionar novos textos usando Weblate. O formato de estrutura aninhada analisa a tecla recém-adicionada e insere o novo texto na estrutura de correspondência. Por exemplo, a tecla app.name está inserida como:

{
   "app": {
      "name": "Weblate"
   }
}

Configuração de componente típica do Weblate

Máscara do arquivo

langs/translation-*.json

Arquivo de idioma da base monolíngue

langs/translation-en.json

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo de estrutura JSON aninhada

Arquivos i18next do JSON

Alterado na versão 2.17: Desde o Weblate 2.17 e com translate-toolkit pelo menos 2.2.5, os arquivos I18next do JSON com plurais também são suportados.

i18next é uma estrutura de internacionalização escrita dentro e para JavaScript. O Weblate suporta seus arquivos de localização com recursos como plurais.

As traduções i18next são monolíngues, por isso é recomendável especificar um arquivo base com (o que é mais frequentemente os) textos em inglês.

Nota

Weblate suporta o formato v3 de I18next do JSON. As variantes V2 e V1 são em sua maioria compatíveis, com exceção de como os plurais são manuseados.

Exemplo de arquivo:

{
  "hello": "Hello",
  "apple": "I have an apple",
  "apple_plural": "I have {{count}} apples",
  "apple_negative": "I have no apples"
}

Configuração de componente típica do Weblate

Máscara do arquivo

langs/*.json

Arquivo de idioma da base monolíngue

langs/en.json

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo JSON i18next

Arquivos JSON go-i18n

Novo na versão 4.1.

As traduções go-i18n são monolíngues, por isso é recomendável especificar um arquivo base com (o que é mais frequentemente os) textos em inglês.

Nota

Weblate tem suporte ao formato go-i18n JSON v1, para formatos JSON simples, use Arquivos JSON. O formato v2 com hash não é suportado no momento.

Configuração de componente típica do Weblate

Máscara do arquivo

langs/*.json

Arquivo de idioma da base monolíngue

langs/en.json

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo JSON go-i18n

Arquivo ARB

Novo na versão 4.1.

As traduções ARB são monolíngues, por isso é recomendável especificar um arquivo base com (o que é mais frequentemente os) textos em inglês.

Configuração de componente típica do Weblate

Máscara do arquivo

lib/l10n/intl_*.arb

Arquivo de idioma da base monolíngue

lib/l10n/intl_en.arb

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo ARB

JSON WebExtension

Novo na versão 2.16: Isto é suportado desde Weblate 2.16 e com o translate-toolkit pelo menos 2.2.4.

Formato de arquivo usado ao traduzir extensões para Mozilla Firefox ou Google Chromium.

Nota

Embora este formato se chame JSON, sua especificação permite incluir comentários, que não fazem parte da especificação JSON. O Weblate atualmente não suporta arquivo com comentários.

Exemplo de arquivo:

{
  "hello": {
    "message": "Ahoj světe!\n",
    "description": "Description",
    "placeholders": {
      "url": {
        "content": "$1",
        "example": "https://developer.mozilla.org"
      }
    }
  },
  "orangutan": {
    "message": "",
    "description": "Description"
  },
  "try": {
    "message": "",
    "description": "Description"
  },
  "thanks": {
    "message": "",
    "description": "Description"
  }
}

Configuração de componente típica do Weblate

Máscara do arquivo

_locales/*/messages.json

Arquivo de idioma da base monolíngue

_locales/en/messages.json

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo JSON WebExtension

Arquivos de recursos .XML

Novo na versão 2.3.

Um arquivo de rescurso .XML (.resx) emprega um formato de arquivo XML monolíngue usado nos aplicativos Microsoft .NET. É intercambiável com .resw, quando usa sintaxe idêntica ao .resx.

Configuração de componente típica do Weblate

Máscara do arquivo

Resources/Language.*.resx

Arquivo de idioma da base monolíngue

Resources/Language.resx

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo de recurso .NET

Arquivos CSV

Novo na versão 2.4.

Os arquivos CSV podem conter uma simples lista de origem e tradução. O Weblate suporta os seguintes arquivos:

  • Arquivos com campos de definição de cabeçalho (location, source, target, ID, fuzzy, context, translator_comments, developer_comments). Esta é a abordagem recomendada, pois é a menos sujeita a erros. Escolha Arquivo CSV como um formato de arquivo.

  • Arquivos com dois campos – fonte e tradução (nesta ordem). Escolha Arquivo CSV simples como um formato de arquivo.

  • Arquivos sem cabeçalhos com campos na ordem definida pelo translate-toolkit: location, source, target, ID, fuzzy, context, translator_comments, developer_comments. Escolha Arquivo CSV como formato de arquivo.

  • Lembre-se de definir o Arquivo de idioma da base monolíngue quando seus arquivos são monolíngues (veja Formatos bilíngues e monolíngues).

Aviso

O formato CSV detecta automaticamente o dialeto do arquivo CSV. Em alguns casos, a detecção automática pode falhar e você terá resultados mistos. Isso é especialmente verdadeiro para arquivos CSV com linhas novas nos valores. Como solução alternativa, recomenda-se omitir caracteres entre aspas.

Exemplo de arquivo:

Thank you for using Weblate.,Děkujeme za použití Weblate.

Configuração de componente típica do Weblate para CSV bilíngue

Máscara do arquivo

locale/*.csv

Arquivo de idioma da base monolíngue

Vazio

Modelo para novas traduções

locale/en.csv

Formato de arquivo

Arquivo CSV

Configuração de componente típica do Weblate para CSV monolíngue

Máscara do arquivo

locale/*.csv

Arquivo de idioma da base monolíngue

locale/en.csv

Modelo para novas traduções

locale/en.csv

Formato de arquivo

Arquivo CSV simples

Ver também

CSV

Arquivos YAML

Novo na versão 2.9.

Os arquivos YAML simples com chaves de textos e valores. Weblate também extrai textos de listas ou dicionários.

Exemplo de um arquivo YAML:

weblate:
  hello: ""
  orangutan": ""
  try": ""
  thanks": ""

Configuração de componente típica do Weblate

Máscara do arquivo

translations/messages.*.yml

Arquivo de idioma da base monolíngue

translations/messages.en.yml

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo YAML

Ver também

YAML, Arquivos Ruby YAML

Arquivos Ruby YAML

Novo na versão 2.9.

Arquivos YAML de i18n do Ruby com idioma como nó raiz.

Exemplo de arquivo YAML de i18n do Ruby:

cs:
  weblate:
    hello: ""
    orangutan: ""
    try: ""
    thanks: ""

Configuração de componente típica do Weblate

Máscara do arquivo

translations/messages.*.yml

Arquivo de idioma da base monolíngue

translations/messages.en.yml

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo Ruby YAML

Ver também

YAML, Arquivos YAML

Arquivos DTD

Novo na versão 2.18.

Exemplo de arquivo DTD:

<!ENTITY hello "">
<!ENTITY orangutan "">
<!ENTITY try "">
<!ENTITY thanks "">

Configuração de componente típica do Weblate

Máscara do arquivo

locale/*.dtd

Arquivo de idioma da base monolíngue

locale/en.dtd

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo DTD

Ver também

Mozilla DTD format

Arquivos XML simples

Novo na versão 3.9.

Exemplo de um arquivo XML simples:

<?xml version='1.0' encoding='UTF-8'?>
<root>
  <str key="hello_world">Hello World!</str>
  <str key="resource_key">Translated value.</str>
</root>

Configuração de componente típica do Weblate

Máscara do arquivo

locale/*.xml

Arquivo de idioma da base monolíngue

locale/en.xml

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo XML simples

Ver também

Flat XML

Arquivos RC do Windows

Alterado na versão 4.1: O suporte para arquivos RC do Windows foi reescrito.

Nota

O suporte para este formato está atualmente em beta, feedback de testes é bem-vindo.

Exemplo de arquivo RC do Windows:

LANGUAGE LANG_CZECH, SUBLANG_DEFAULT

STRINGTABLE
BEGIN
    IDS_MSG1                "Hello, world!\n"
    IDS_MSG2                "Orangutan has %d banana.\n"
    IDS_MSG3                "Try Weblate at http://demo.weblate.org/!\n"
    IDS_MSG4                "Thank you for using Weblate."
END

Configuração de componente típica do Weblate

Máscara do arquivo

lang/*.rc

Arquivo de idioma da base monolíngue

lang/en-US.rc

Modelo para novas traduções

lang/en-US.rc

Formato de arquivo

Arquivo RC

Ver também

Windows RC files

Arquivos de metadados de loja de aplicativos

Novo na versão 3.5.

Metadados usados para publicar aplicativos em várias lojas de aplicativos podem ser traduzidos. Atualmente, as seguintes ferramentas são compatíveis:

Os metadados consistem em vários arquivos de texto, que o Weblate apresentará como textos separados para traduzir.

Configuração de componente típica do Weblate

Máscara do arquivo

fastlane/android/metadata/*

Arquivo de idioma da base monolíngue

fastlane/android/metadata/en-US

Modelo para novas traduções

fastlane/android/metadata/en-US

Formato de arquivo

Arquivos de metadados de loja de aplicativos

Dica

Caso você não queira traduzir certos textos (por exemplo, changelogs), marque-as como somente leitura (veja Personalizando comportamento usando marcadores). Isto pode ser automatizado por Editor em massa.

Arquivos de legenda

Novo na versão 3.7.

Weblate pode traduzir vários arquivos de legenda:

  • Arquivo de legenda SubRip (*.srt)

  • Arquivo de legenda MicroDVD (*.sub)

  • Arquivo de legenda Advanced Substation Alpha (*.ass)

  • Arquivo de legenda Substation Alpha (*.ssa)

Configuração de componente típica do Weblate

Máscara do arquivo

path/*.srt

Arquivo de idioma da base monolíngue

path/en.srt

Modelo para novas traduções

path/en.srt

Formato de arquivo

Arquivo de legenda SubRip

Ver também

Subtitles

Excel Open XML

Novo na versão 3.2.

Os arquivos Excel Open XML (.xlsx) podem ser importados e exportados.

Ao enviar arquivos XLSX para tradução, esteja ciente de que apenas a planilha ativa é considerada, e deve haver pelo menos uma coluna chamada source (que contém o texto fonte) e uma coluna chamada target (que contém a tradução). Além disso, deve haver a coluna chamada context (que contém o caminho de contexto do texto de tradução). Se você usar o download XLSX para exportar as traduções em uma pasta de trabalho do Excel, você já terá um arquivo com o formato de arquivo correto.

Arquivos HTML

Novo na versão 4.1.

Nota

O suporte para este formato está atualmente em beta, feedback de testes é bem-vindo.

O conteúdo traduzível é extraído dos arquivos HTML e oferecido para a tradução.

Ver também

HTML

Arquivos texto

Novo na versão 4.6.

Nota

O suporte para este formato está atualmente em beta, feedback de testes é bem-vindo.

O conteúdo traduzível é extraído dos arquivos texto simples e oferecido para a tradução. Cada parágrafo é traduzido como um texto separado.

Há três sabores desse formato:

  • Arquivo texto simples

  • Arquivo texto DokuWiki

  • Arquivo texto MediaWiki

Ver também

Simple Text Documents

Formato OpenDocument

Novo na versão 4.1.

Nota

O suporte para este formato está atualmente em beta, feedback de testes é bem-vindo.

O conteúdo traduzível é extraído dos arquivos OpenDocument e oferecido para a tradução.

Ver também

OpenDocument Format

Formato IDML

Novo na versão 4.1.

Nota

O suporte para este formato está atualmente em beta, feedback de testes é bem-vindo.

O conteúdo traduzível é extraído dos arquivos Adobe InDesign Markup Language e oferecido para a tradução.

Formato TermBase eXchange

Novo na versão 4.5.

TBX é um formato XML para a troca de dados de terminologia.

Configuração de componente típica do Weblate

Máscara do arquivo

tbx/*.tbx

Arquivo de idioma da base monolíngue

Vazio

Modelo para novas traduções

Vazio

Formato de arquivo

Arquivo TermBase eXchange

Stringsdict format

Novo na versão 4.8.

Nota

O suporte para este formato está atualmente em beta, feedback de testes é bem-vindo.

XML based format used by Apple which is able to store plural forms of a string.

Configuração de componente típica do Weblate

Máscara do arquivo

Resources/*.lproj/Localizable.stringsdict

Arquivo de idioma da base monolíngue

Resources/en.lproj/Localizable.stringsdict or Resources/Base.lproj/Localizable.stringsdict

Modelo para novas traduções

Vazio

Formato de arquivo

Stringsdict file

Fluent format

Novo na versão 4.8.

Nota

O suporte para este formato está atualmente em beta, feedback de testes é bem-vindo.

Fluent is a monolingual text format that focuses on asymmetric localization: a simple string in one language can map to a complex multi-variant translation in another language.

Configuração de componente típica do Weblate

Máscara do arquivo

locales/*/messages.ftl

Arquivo de idioma da base monolíngue

locales/en/messages.ftl

Modelo para novas traduções

Vazio

Formato de arquivo

Fluent file

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.

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