Traduzir strings de Android e Apple
Traduza strings.xml do Android, .strings e .stringsdict do iOS e catálogos de strings do Xcode. As chaves, os comentários e os especificadores de formato são preservados, e as formas de plural são definidas para cada idioma.
As strings de aplicativos móveis são apresentadas aqui em quatro formatos: recursos do Android (.xml em res/values, até 12 MB), .strings e .stringsdict do iOS e macOS (até 4 MB) e catálogos de strings do Xcode (.xcstrings, até 8 MB). Os nomes e as chaves dos recursos fazem parte da estrutura e nunca são alterados. Especificadores de formato, como %1$s, %d e %@, são mantidos na string traduzida, e as formas de plural são escritas de acordo com as categorias usadas em cada idioma de destino.
O que é traduzido e o que não é alterado
| Formato | Traduzido | Mantido como está |
|---|---|---|
Android strings.xml | Strings, plurais e itens de string-array | Atributos name, strings translatable="false" e itens com marcação xliff:g |
iOS .strings | O valor de cada par | Chaves, comentários do desenvolvedor e sequências de escape (quebra de linha, tabulação, aspas, barra invertida) |
iOS .stringsdict | Todas as formas de plural | Chaves e estrutura do dicionário |
Xcode .xcstrings | Cada chave e entrada de idioma | Chaves, comentários, estados, substituições e variações de dispositivo |
O tratamento de plurais é a principal diferença em relação a uma ferramenta genérica. O russo usa também few e many, o polonês e o árabe têm suas próprias categorias, e o japonês mantém apenas other. Quantidades que um idioma nunca usa são removidas dos arquivos Android.
O que você pode pedir
Traduz strings, plurais e arrays sem alterar a ordem dos argumentos.
Traduza strings.xml para francês. Mantenha os especificadores de formato, como %1$s e %d, e não altere a string app_name.
Atualiza a versão sem mexer no trabalho já revisado.
Traduza somente as strings que estão faltando no arquivo em alemão e mantenha as traduções existentes em alemão.
Preserva os comentários do desenvolvedor e as sequências de escape.
Traduza os valores para espanhol. Mantenha %@ e %1$@ sem alterações e deixe os comentários como estão.
Para .stringsdict: escreve as categorias de plural do idioma de destino.
Traduza as regras de plural para polonês e inclua todas as categorias de plural necessárias nesse idioma.
Preenche o catálogo em alemão, japonês e português em uma única tarefa.
Preencha as traduções que faltam para alemão, japonês e português. Não altere as chaves, os comentários nem as strings que já estão traduzidas.
O que é bom saber
- Android,
.stringse.stringsdictarmazenam um idioma por arquivo: use um idioma de destino por envio. Se você pedir dois, o plano traduzirá para um deles e avisará. Execute o arquivo uma vez para cada pastavaluesou.lprojincluída no app: o glossário é mantido entre as tarefas. - Os catálogos de strings armazenam todos os idiomas em um único arquivo, por isso são uma exceção: vários idiomas podem ser preenchidos em uma só tarefa.
- Onde colocar o arquivo. O resultado do Android deve ser colocado em
res/values-fr/strings.xmlou no qualificador necessário; o arquivo.stringsdeve ir para o.lprojcorrespondente. - Especificadores de formato. Os posicionais, como
%1$s, mantêm o índice para que a frase possa ser reorganizada na tradução sem alterar a ordem dos argumentos. - Um arquivo
.xmlgenérico que não seja um recurso do Android é tratado como outro XML. - Filtro de saída. Não está disponível para estes formatos: o arquivo inteiro é retornado.
Relacionados
- JSON para Flutter ARB e gettext PO para outro formato de catálogo.
- .NET e Qt e XLIFF para outros arquivos de localização.
- Todos os formatos de arquivo