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 arquivos – res/values/strings.xml.

Weblate does following escaping of strings:

  • If a strings is valid XML, it is inserted as XML to translation.

  • ? and @ are escaped with a \\ at the beginning of the string to avoid intepreting them as style or resource references.

  • In case string contains multiple spaces, it is quoted with double quotes (").

  • Newlines are escaped as \\n, but the actual newline is kept for readability as well.

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

Dica

Para evitar a tradução de alguns textos, eles podem ser marcados como não traduzíveis. Isso pode ser especialmente útil para referências de textos:

<string name="foobar" translatable="false">@string/foo</string>

Configuração do Weblate

Configuração de componente típica do Weblate

Máscara de 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