Acho que há um problema com MessageFormat e idiomas com mais ou menos plurais que o inglês

Continuando a discussão de Suporte ao formato de mensagem para localização:

Encontrei problemas ao testar meu texto com MessageFormat em diferentes idiomas, porque não funcionou em polonês.

Mas depois de olhar um texto existente, acho que o erro não é meu, mas sim que algo não está funcionando como esperado.

O exemplo que analisei está no modal de convite: js.user.invited.invite.link_validity_MF

Em inglês, tudo está correto:

Também funciona em alemão:

Mas não funciona em polonês:

E não funciona em chinês:

Com base no tópico da documentação, eu esperaria que todas essas traduções funcionassem, não apenas a tradução em alemão. Portanto, presumo que haja um bug em algum lugar que afeta idiomas que têm um número diferente de plurais do que o inglês.

5 curtidas

Sim, o mesmo problema, usando zh-CN.

Todas as strings de idioma que terminam com MF estão quebradas e exibidas no formato en-US.

Obrigado por relatar! Você acha que isso pode ter sido causado por uma mudança recente? Ou sempre foi assim? :thinking:

Eu não sei. O alemão funciona bem, então geralmente não vejo que algo está quebrado. Só percebi porque usei o messageFormat pela primeira vez ontem e escolhi polonês para testar. A seção de retroceder o chat fica oculta se não houver mensagens suficientes, então, para testar mais do que a parte “outra”, eu queria um idioma com múltiplos plurais.

Acabei de tentar uma instalação de desenvolvimento baseada no branch estável, e parece funcionar lá:

1 curtida

Acho que isto deve resolver:

Melhoria:

2 curtidas

Então eu tive muito azar ao escolher o polonês como idioma com um código de país enquanto estava testando, e se eu tivesse usado o ucraniano, tudo teria funcionado sem problemas :cry: Isso teria me poupado muito tempo.

1 curtida