Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gettextizar documentação #198

Open
rffontenelle opened this issue Feb 23, 2024 · 0 comments
Open

Gettextizar documentação #198

rffontenelle opened this issue Feb 23, 2024 · 0 comments

Comments

@rffontenelle
Copy link

Já consideraram em traduzir strings em um arquivo PO (padrão Gettext) em vez de diretamente em arquivos Markdown?

Comumente usados em projetos de código aberto, arquivos PO são ótimos porque alterações no código-fonte são atualizadas nos exatos pontos, evitando o transtorno de ter que se preocupar com o que mudou no arquivo Markdown de uma versão para outra. Também tem a vantagem de de-duplicar parágrafos: traduz uma string, se aplica para todas as ocorrências.

Enquanto mdbook não tem suporte a internalização, mdbook-i18n-helpers traz ferramentas que resolve isso. Os detalhes e mais informações estão documentadas no USAGE.md, mas resumidamente os passos são:

  1. Instalar:
    cargo install mdbook-i18n-helpers

  2. Na raiz do projeto rust-lang/book, extrair mensagens e o modelo de catálogo de mensagens (arquivo POT):
    MDBOOK_OUTPUT='{"xgettext": {"pot-file": "messages.pot"}}' mdbook build -d po

  3. Somente primeira vez, gerar o arquivo de tradução (arquivo PO):
    msginit --no-translate -i po/messages.pot -o po/pt_BR.po

  4. Nas próximas vezes, basta atualizar a partir do POT:
    msgmerge --update --previous po/pt_BR.po po/messages.pot
    pt_BR.po está pronto para ser traduzido. Pode-se usar ferramentas locais, como poedit, ou ferramentas web colaborativas, como o Transifex. Todas gratuitas.

  5. Para gerar a documentação traduzida, antes precisa adicionar o seguinte ao 'book.toml' do projeto rust-lang/book:

[preprocessor.gettext]
after = ["links"]
  1. Para gerar a documentação traduzida:
    MDBOOK_BOOK__LANGUAGE=pt_BR mdbook build -d book/pt_BR
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant