Idiomas

Max PrilutskiyCEO e cofundadorAtualizado em: há 2 meses · 1 min de leitura

O CLI traduz de um idioma de origem para um ou mais idiomas de destino, ambos definidos em .lingo/config.json:

json
{
  "sourceLocale": "en",
  "targetLocales": ["de", "fr", "es", "ja"]
}

Os ficheiros de origem são lidos, nunca alterados. Cada idioma de destino tem o seu próprio output, com o código do idioma substituído no padrão do ficheiro (content/en/app.jsoncontent/de/app.json). Consulte Configuration.

Códigos de idioma#

Utilize etiquetas BCP 47 padrão. Tanto um código de idioma simples (de) como uma etiqueta de idioma-região (de-CH) funcionam. O CLI não mantém uma lista fixa — targetLocales aceita qualquer etiqueta e passa-a ao seu motor. Os idiomas que são efetivamente traduzidos, e com que qualidade, dependem da gama de modelos do motor, não de uma limitação do CLI.

Exemplos comuns:

IdiomaCódigo
Inglêsen (ou en-US, en-GB)
Espanholes (ou es-ES, es-419, es-MX)
Francêsfr (ou fr-FR, fr-CA)
Alemãode (ou de-CH, de-AT)
Portuguêspt-BR, pt-PT
Chinêszh-Hans, zh-Hant
Japonêsja
Coreanoko

Variantes regionais#

Escolha uma região quando o dialeto fizer diferença — o motor produz ortografia e vocabulário adequados ao idioma:

json
{
  "sourceLocale": "en-US",
  "targetLocales": ["en-GB", "es-ES", "es-419", "pt-BR", "pt-PT", "fr-CA"]
}

en-USen-GB transforma "color" em "colour"; es-ESes-419 troca "ordenador" por "computadora". A qualidade destas distinções resulta da voz da marca e das regras do motor, não do CLI.

Idiomas da direita para a esquerda#

Os idiomas RTL (árabe ar, hebraico he, persa fa, urdu ur) traduzem-se como quaisquer outros. A direção do texto na sua aplicação é da responsabilidade do seu renderizador; o CLI limita-se a produzir as strings traduzidas.

Adicionar ou remover um idioma#

Basta editar targetLocales. Para preencher um idioma recém-adicionado, execute lingo push --backfill-missing — consulte Adding a locale. Para remover um, elimine-o e apague os respetivos ficheiros com lingo purge --locale.