Diretrizes para Tradutores
No Discourse, todas as strings do Message Format têm uma chave que termina com “_MF”. O Editor Crowdin tem uma pré-visualização que permite experimentar vários valores, o que é bastante útil para verificar suas traduções.
Importante: Você precisa modificar as formas plurais da sua tradução se o seu idioma usar formas além de “one” (um) e “other” (outro). Você pode adicionar ou remover formas dentro de um bloco { FOO, plural, ... } para que funcione para os seus idiomas. A pré-visualização no Editor Crowdin mostrará um “Erro de sintaxe” quando houver um problema com a sua tradução.
As formas plurais disponíveis são:
- zero
- one
- two
- few
- many
- other (obrigatório — forma plural geral — também usado para idiomas sem distinção entre formas singular e plural)
Às vezes, você pode ver um bloco vazio =0 {} em uma string de origem em inglês, o que significa que a variável não pode ter o valor 0.
Diretrizes para Desenvolvedores
As strings do Message Format estão atualmente disponíveis apenas para traduções do lado do cliente. Elas são úteis se sua string contiver mais de um número ou muitas variáveis, o que levaria a uma grande quantidade de permutações.
-
As chaves das strings do Message Format precisam terminar com “_MF”
-
Use o seguinte formato para números (
#será substituído pelo número):{ variable_name, plural, one: {# texto singular} other: {# texto plural} } -
Use o seguinte formato para escolhas (select):
{ variable_name, select, foo: {Isto é foo} bar: {Isto é bar} baz: {Isto é baz} } -
Veja como usá-lo em JavaScript:
I18n.messageFormat("key_MF", { variable1: "foo", variable2: 42, }); -
Recomendação: Se possível, use argumentos complexos como a estrutura mais externa de uma mensagem e escreva frases completas em suas submensagens. Se você tiver argumentos selectepluralaninhados, coloque os argumentosselect(com seus conjuntos fixos de escolhas) no exterior e aninhe os argumentosplural(esperançosamente no máximo um) dentro. Veja Formatting Messages | ICU Documentation -
Torne-os legíveis – veja exemplos existentes em client.en.yml
RuimThere {currentTopics, plural, one {is <strong>#</strong> topic} other {are <strong>#</strong> topics}}. Visitors need more to read and reply to – we recommend at least { requiredTopics, plural, one {<strong>#</strong> topic} other {<strong>#</strong> topics}}. Only staff can see this message.
BomThere { currentTopics, plural, one {is <strong>#</strong> topic} other {are <strong>#</strong> topics} }. Visitors need more to read and reply to – we recommend at least { requiredTopics, plural, one {<strong>#</strong> topic} other {<strong>#</strong> topics} }. Only staff can see this message.
Ferramentas e informações adicionais
-
Online ICU Message Editor permite que você teste uma string do Message Format caso haja um problema com o Editor Crowdin. Por favor, desative a opção “Parse simple xml/html tags”, caso contrário, você poderá ver uma mensagem de erro.
Este documento é controlado por versão - sugira alterações no github.
