Mais string em inglês no Discourse francês

Olá, há cada vez mais strings em inglês sem tradução para o francês na instalação do Discourse em francês. Você sabe o motivo? Obrigado.

Oi, Patrick

Imagino que ainda não haja uma tradução para isso. Se você quiser contribuir e traduzir isso você mesmo, saiba mais sobre tradução aqui.

Na verdade, essa string, como muitas outras, estava em francês na versão anterior do Discourse, mas não mais desde que atualizei para a última.

Eu também tenho uma mistura de ambas as línguas:

I run an instance in Brazilian Portuguese and I feel the same. There’s a recent topic about this and I mentioned a suspicion of mine.
https://meta.discourse.org/t/2-7-0-beta4-translation/181023/2?u=renato

I just found an example:

Notice that on Feb 12, 2021 the Bot removed the old translation because the english string had a “these” changed to a “this”.

I think ideally we’d keep old translations if the change isn’t significant, like gettext does. A wrong plural is better than the whole string in English.

I went ahead and looked further about the string on your screenshot, and its key has been renamed because of a code refactory. I assume this is an exception, I guess most missing translation cases that existed previously are caused by a change of the original text.

@gerhard, essa opção já foi investigada? Sei que há algumas chaves em que uma tradução antiga pode ser desastrosa (como nos modelos de e-mail), mas, em geral, começar com a tradução antiga pode ser melhor do que nada. Não tenho certeza… há tanta nuance aqui.

Bem, vamos ver, há vários casos aqui:

  • Chave de tradução alterada: Tentamos evitar isso, mas às vezes simplesmente não é possível. Se a string em inglês não mudar, poderíamos usar a Memória de Tradução ™ para reutilizar automaticamente as traduções existentes. O Crowdin possui uma etapa de fluxo de trabalho chamada “Pré-tradução por TM” que faz exatamente isso.

    Pré-traduzir arquivos com Memória de Tradução ™ para acelerar a tradução de strings iguais ou semelhantes…

    Infelizmente, isso impede que os tradutores façam alterações na tradução posteriormente, pois uma string traduzida pela Memória de Tradução não pode passar pela etapa de fluxo de trabalho “Crowdsource”. Relatei isso há muito tempo, mas parece que ainda não foi corrigido. Por isso, não estamos usando “Pré-tradução por TM” no momento. cc @Andriy_Crowdin

  • String em inglês modificada: O que conta como uma mudança menor? Essa é uma decisão difícil de tomar e pode até variar para diferentes idiomas. Vamos dar um passo para trás. O que acontece quando modificamos uma string existente em inglês?

    • Enviamos uma string modificada para o GitHub
    • O tradutor-bot a captura e a envia para o Crowdin
    • Isso invalida todas as traduções dessa string no Crowdin, mas não afeta as traduções no Discourse ainda
    • Toda terça-feira, buscamos as traduções atuais do Crowdin e as enviamos para o GitHub.
      • Traduções ausentes serão removidas
      • Novas traduções serão adicionadas

    Portanto, a menos que tenhamos modificado a string logo antes de terça-feira, deve haver tempo suficiente para fornecer uma nova tradução no Crowdin. As sugestões no Crowdin geralmente facilitam muito a tradução da string modificada.

  • Modificações que não devem afetar traduções existentes: Geralmente tentamos manter as traduções existentes quando fazemos alterações em massa insignificantes nas strings em inglês. Por exemplo, fizemos isso no passado quando alteramos o placeholder {{count}} para %{count} ou durante o renomeação do locale em inglês. Existem comandos especiais que podemos adicionar às mensagens de commit:

    @discourse-translator-bot keep_translations_and_approvals
    @discourse-translator-bot keep_translations
    

Estou feliz em implementar melhorias em nosso fluxo de trabalho se forem viáveis. No entanto, não existe o conceito de tradução fuzzy no Crowdin. Ou está traduzida ou não. E acho que isso é bom, caso contrário, apenas complicaria as coisas. Como tradutor, você é notificado sobre strings novas e modificadas, o que deve ajudar os tradutores a se manterem atualizados.

@patrickemin Adicionei a tradução francesa ausente da Memória de Tradução. Ela será incluída na atualização de hoje.

Li em algum lugar que o gettext usa um limite padrão de 0,85 ao calcular a distância de Jaro para medir a similaridade. Entendo que não existe uma solução perfeita; foi apenas uma sugestão porque tem sido difícil acompanhar essas mudanças. Não sou tradutor e ajudo sempre que percebo algum texto faltando na minha instância, e mesmo assim sou o “top” tradutor para o meu idioma no Crowdin, por falta de contribuições.

Infelizmente, a maioria dos idiomas carece de contribuidores ativos e acho que uma semana é pouco tempo para uma nova tradução. Tento dar uma olhada sempre que recebo um e-mail do Crowdin, mas meu idioma já está com cerca de 11 mil palavras faltando e tem sido difícil acompanhar.

Pré-traduzir arquivos com Memória de Tradução ™ para acelerar a tradução de strings iguais ou similares

Isso pode realmente melhorar o fluxo de trabalho se a correção mencionada for implementada em algum momento; também parece que ela aborda o cenário de strings difusas.

O que acontece se o usuário estiver personalizando as strings localmente? Isso não já é um problema nesse caso?

Outra alternativa possível seria não invalidar por padrão e ter um fluxo de trabalho diferente quando todo o significado tiver mudado, talvez alterando a chave de tradução ou incluindo um @discourse-translator-bot invalidate_translations na mensagem do commit, por exemplo, assumindo – o que pode estar totalmente errado – que mudar o significado de uma chave de tradução é uma exceção.

Dito tudo isso, o Crowdin é realmente um prazer de trabalhar; nenhum desses seria um problema se mais pessoas estivessem contribuindo para ele. Acredito que muitos estão usando o recurso de personalização de texto como recurso de tradução.

Estamos cientes disso. Podemos contar com tradutores profissionais para ajudar com alguns idiomas em um futuro próximo, e acho que o português do Brasil está nessa lista. :wink:

Além disso, estou pensando em adicionar links para o Crowdin na interface de administração em “Personalizar Texto” e na configuração de local padrão. Isso também pode orientar alguns tradutores da comunidade na direção certa.

Sim, é.