AnycubicSlicer: finalizando tradução para diferentes idiomas

Se o menu, botões ou dicas flutuantes em AnycubicSlicer ainda aparecem em inglês após a mudança de idioma no slicer, isso não é um bug. AnycubicSlicer foi feito baseado em PrusaSlicer/OrcaSlicer e usa o sistema padrão de localização gettext (arquivos .po/.mo). O traduzido é atualizado junto com os lançamentos, mas geralmente fica um pouco atrasado dos novos elementos do interface — adicionaram uma nova linha no código, mas ainda não conseguiram traduzir para todos os idiomas. Essa linha simplesmente aparece em inglês (original) enquanto ela ainda não tem tradução.

A seguir está o método funcional que você pode usar para fechar essas “falhas” de tradução por conta própria, sem esperar pela atualização oficial.

Onde está a tradução

O arquivo de tradução para seu idioma está na pasta de instalação do slicer:

resources/i18n/../AnycubicSlicer.mo

.mo é um arquivo binário compilado, não pode ser aberto e editado no bloco de notas. A versão editável é .po, um arquivo texto comuns com linhas do tipo:

msgid "Original string"
msgstr "Traduzida string"

Se msgstr estiver vazio, o idioma em vez da tradução aparece msgid, ou seja, o texto original. Isso é a falha que estamos procurando.

Método funcional: Editando através do Poedit

  1. Instale a ferramenta gratuita Poedit — é o editor padrão de .po/.mo arquivos, o mesmo usado pelos tradutores oficiais de PrusaSlicer/OrcaSlicer.
  2. Faça uma cópia de AnycubicSlicer.mo da pasta resources/i18n/.. — em caso de problemas, para recuperar a versão original com um clique.
  3. Abra diretamente o arquivo .mo copiado no Poedit — a ferramenta pode abrir arquivos compilados .mo diretamente, não precisa decompilá-los manualmente.
  4. No Poedit há um filtro “Untranslated” (não traduzido) — ative-o e verá exatamente as linhas que aparecem em inglês no interface. Em seguida, selecione a linha desejada e insira o texto de tradução na caixa abaixo.
  5. Se a linha já foi traduzida, mas está errada ou não faz sentido no contexto do slicer — edite-a também, apenas encontrando o msgid correto através da pesquisa no Poedit.
  6. Após as alterações, clique em Save (ou Ctrl+S) — o Poedit recompilará automaticamente o arquivo para .mo.
  7. Substitua o original AnycubicSlicer.mo na pasta resources/i18n/.. pelo corrigido e reinicie o slicer — a tradução será atualizada.

Este é o único método que realmente funcionou: ele não requer recompilar o slicer a partir do código-fonte e não toca em nada além do arquivo de idioma — você trabalha através da ferramenta padrão com interface, não pela linha de comando.

Importante detalhe

Se uma linha não estiver presente no .po/.mo arquivo (ou seja, ela nem foi marcada como não traduzida — simplesmente não está na lista), isso significa que ainda não chegou ao modelo de tradução do lado dos desenvolvedores. Uma linha assim através do Poedit não pode ser adicionada — aparecerá apenas com a nova versão .pot-arquivo da Anycubic. Em grande parte das vezes, o que parece estar em inglês no interface já traduzido é na verdade um msgstr vazio e não uma linha completamente ausente, então o método acima resolve quase todas essas situações.

Se preferir usar a mão — use o Claude AI sem assinatura

Ele pode trabalhar diretamente com .po/.mo arquivos: basta enviar o arquivo de tradução atual e ele encontrará todas as linhas vazias/não traduzidas, traduzirá-as considerando a terminologia da impressão 3D e retornará um arquivo pronto — só precisará colocar esse em resources/i18n/.. e reiniciar o slicer.