Capítulo 10. Traduções Weblate

Esta tradução pode estar desatualizada. Para ajudar com as traduções, acesse a ferramenta de traduções do FreeBSD.

10.1. Introdução

Este capítulo descreve alguns passos básicos para ingressar na equipe de tradutores do FreeBSD, traduzindo online no Weblate ou offline, e algumas sugestões simples sobre tradução, revisão e teste. O foco é na parte da tradução.

Os documentos originais (artigos e livros) estão no portal de documentação.

Weblate é um software web de código aberto com foco em idiomas; o projeto FreeBSD possui uma instância local.

10.2. Como se Tornar um Tradutor do FreeBSD

A seguir seguem os passos para começar a traduzir artigos e livros do Projeto de Documentação do FreeBSD.

  1. Crie uma conta na instância Weblate do FreeBSD com um endereço de e-mail ou sua conta GitHub.

  2. Inscreva-se na lista de discussão sobre as traduções do FreeBSD.

  3. Apresente-se e peça para participar de uma equipe de idiomas. Se a equipe de idiomas não existir, peça para criá-la. A auto-apresentação é essencial. Isso aumenta suas chances de ser aprovado para acesso de escrita.

  4. Acesse o Weblate com a nova conta.

  5. Encontre a equipe de idiomas e escolha um documento inicial para traduzir.

  6. Crie uma conta no Bugzilla para enviar as traduções depois de terminar um documento. O projeto de documentação também está aceitando Pull Requests do GitHub com envio de traduções.

Todos os arquivos de tradução e documentos devem seguir a Licença de Documentação do FreeBSD; se isso não for aceitável, por favor, não se inscreva ou envie patches ou traduções.

10.3. Apresente-se

Forneça uma breve auto-apresentação na lista de discussão sobre as traduções do FreeBSD para iniciar o processo de concessão de acesso. Isso permitirá que um coordenador ou administrador de idiomas forneça as permissões necessárias para que o novo usuário do Weblate comece a traduzir.

A seguir está um exemplo de como tal e-mail poderia parecer.

Subject: Self-Introduction: Name and language

Name:      Name (usar nome preferido)
Location:  City, country (opcional)
Login:     username or email (essencial)
Language:  Language to translate (essencial)
Profession or student status: (opcional)
About You: (formato livre -- informações com as quais você se sente à vontade para compartilhar
  others: empresa, escola, outra afiliação, habilitações históricas, outras
  projetos em que você trabalhou, nível e tipo de conhecimento de informática, outras habilidades relevantes,
  etc.)
You and the FreeBSD Project: (formato livre: outros projetos FreeBSD de interesse, comentários, etc.)

10.4. Entrar no Weblate

Login Weblate

Use um nome de usuário, endereço de e-mail ou conta do GitHub para fazer login.

O perfil do usuário contém suas preferências, nome e endereço de e-mail. O nome e o endereço serão usados nos commits; mantenha esta informação atualizada.

Na instância Weblate do FreeBSD, todas as traduções serão enviadas para o freebsd-doc-translate (um repositório intermediário no GitHub), e não diretamente para o freebsd-doc. Os tradutores devem pegar os arquivos PO gettext (.po), converte-los para .adoc e submete-los via Bugzilla ou GitHub para publicar ou atualizar o documento traduzido no portal de documentação. Veja mais nas seções a seguir.

O Weblate irá enviar os commits diariamente, pelo menos, para o freebsd-doc-translate, se quaisquer novas strings forem traduzidas.

10.5. Encontre uma Equipe de Idiomas para Participar

Clique em Projetos, escolha Documentação, depois clique em Idiomas e veja todos os idiomas disponíveis.

Idiomas Weblate

Observe que alguns idiomas e documentos traduzidos já existem no portal de documentação e repositórios.

Se o idioma desejado para tradução não estiver disponível no Weblate, entre em contato com os coordenadores de idiomas antes de solicitar a criação de um novo idioma. Se não houver resposta, entre em contato com a Equipe de Engenharia de Documentação <doceng@FreeBSD.org>.

10.6. Traduzindo Online no Weblate

Traduzir documentos online tende a ser o método mais fácil para tradução de documentos no FreeBSD, pois permite que os usuários trabalhem no mesmo arquivo, distribuindo a carga de trabalho.

Assim que um coordenador ou administrador conceder acesso a um idioma específico para um usuário, o botão salvar será habilitado para que esse usuário possa começar a traduzir.

Documentos Weblate
Weblate Translate

O Weblate possui um conjunto de links que levam à tradução. A tradução é dividida em verificações individuais, como Não traduzido ou Precisando de revisão. Se todo o documento estiver traduzido sem nenhum erro, o link Todas as traduções ainda estará disponível caso uma revisão seja necessária. Como alternativa, o campo de pesquisa pode ser usado para localizar uma string ou termo específico.

Na documentação do Weblate, há mais informações sobre traduções, como atalhos de teclado e outras dicas sobre a ferramenta de tradução.

10.7. Traduzindo Offline

O Weblate no FreeBSD usa arquivos PO gettext para traduções. Os usuários familiarizados com os arquivos PO gettext que desejam traduzir offline podem baixar e enviar as traduções através da página do documento no Weblate clicando na seção Arquivos.

Weblate Offline

10.8. Tradução baseada em Sugestões Automáticas

Os idiomas que usavam Weblate antes da migração para Hugo/Asciidoctor podem usar esse recurso do Weblate para economizar tempo.

Este recurso do Weblate usa a Memória de Tradução gerada pelos outros componentes e projetos no mesmo servidor. As antigas traduções do Weblate estão hospedadas no mesmo servidor como somente leitura por causa disso.

Strings que correspondem a 100/100 em similaridade podem ser copiadas e salvas diretamente. Outras strings precisarão de pelo menos um pequeno ajuste.

Alguns exemplos:

Weblate Sugestões Automáticas 01

Com a migração para Hugo/Asciidoctor, os documentos passaram a utilizar UTF-8. Algumas entidades HTML devem ser substituídas. Algumas strings, como links, requerem alterações na marcação.

Weblate Sugestões Automáticas 02

Links:

Weblate Sugestões Automáticas 03

10.9. Revisão e Verificações de Qualidade do Weblate

O dashboard do documento Projeto/Idioma/Documento mostra o status da tradução e o status das strings desse documento. Esta página é útil para revisão e verificações de qualidade.

Weblate Revisão 01

Neste exemplo, falta o ponto final em duas strings; clicando nesse link será mostrado apenas as strings a serem revisadas/traduzidas.

Weblate Revisão 02

Tradutores e revisores geralmente gostam da visualização das strings traduzidas em seu contexto.

10.10. Compilando o Documento Traduzido

O projeto não usa integração contínua e entrega contínua (CI/CD) para gerar as traduções. Existem estudos para a sua disponibilização.

O exemplo a seguir usa o GitHub, pois o Weblate também está no GitHub. Observe que este repositório é um espelho somente leitura, mas as Pull Requests são aceitas.

Para gerar a tradução localmente, siga estas etapas:

Procedimento: Clone os repositórios necessários
  1. Clone o repositório freebsd-doc:

    % git clone https://github.com/freebsd/freebsd-doc.git ~/freebsd-doc
  2. Clone o repositório freebsd-doc-translate:

    % git clone https://github.com/freebsd/freebsd-doc-translate.git ~/freebsd-doc-translate
Procedimento: Copie um arquivo de tradução para freebsd-doc

Com ambos os repositórios, copie a tradução de freebsd-doc-translate para freebsd-doc. Exemplo de tradução do artigo do Committer’s Guide em espanhol.

% cp ~/freebsd-doc-translate/documentation/content/es/articles/committers-guide/_index.po \
~/freebsd-doc/documentation/content/es/articles/committers-guide/
Procedimento: Converter um arquivo de tradução (.po) para .adoc

Vá para a raiz do freebsd-doc.

% cd ~/freebsd-doc

Traduzir (converter) o arquivo .po para .adoc

% ./tools/translate.sh documentation es articles/committers-guide

Por padrão: apenas arquivos com mais de oitenta por cento de strings traduzidas serão convertidos para .adoc.

Para ignorar esse limite:

% KEEP_ENV=0 ./tools/translate.sh documentation es articles/committers-guide

Alguns documentos, como livros, possuem muitos arquivos PO gettext. Sempre copie todos eles ao traduzir e compilar. Arquivos que não foram traduzidos serão convertidos com as strings de origem (inglês).

A estrutura de diretórios é fundamental. Siga sempre a estrutura de diretórios dos documentos em inglês.

Procedimento: Gerar o documento traduzido

Por último, a parte da compilação.

Entre no diretório de documentação porque não há necessidade de compilar o site do FreeBSD.

% cd documentation

E compile a documentação. Observe que en é sempre adicionado por padrão ao compilar qualquer outro idioma.

% DOC_LANG=es make

Este comando irá compilar apenas os documentos em inglês e espanhol do portal de documentação do FreeBSD. A saída estará no diretório public; abra-o em um navegador. Observe que alguns arquivos de índice podem redirecionar o navegador para a página online.

Outra boa opção é compilar e servir o conteúdo com o servidor web interno do Hugo:

% DOC_LANG=es make run

Por padrão, o servidor web escuta em localhost; Para substituir esse comportamento, especifique o endereço IP desejado no valor do parâmetro BIND.

% DOC_LANG=es make run BIND=192.168.15.10

Isso compila e serve o conteúdo com o servidor web interno de Hugo e deixa ele em espera, quando algum arquivo for alterado, ele o recompila automaticamente.

Para fazer os ajustes necessários na tradução, siga as etapas abaixo para sincronizar novamente todos os componentes:

  • Corrija a string de tradução em Weblate.

  • Force o Weblate a realizar o commit das alterações na aba Document/Manage/Commit.

  • Sincronize o repositório Weblate local freebsd-doc-translate com o comando git pull origin main.

  • Copie a tradução novamente para freebsd-doc.

  • Converta a tradução para .adoc com o script ./tools/translate.sh.

  • Hugo irá recompilar o arquivo e não todo o conjunto se make run foi utilizado; ou execute novamente o make.

Siga os passos anteriores quantas vezes forem necessárias até que o documento esteja pronto para ser publicado.

O capítulo Processo de Compilação da Documentação inclui informações sobre a renderização para HTML e PDF.

10.11. Enviando Traduções

Exemplo de envio de atualização do artigo Committer’s Guide em Português do Brasil.

Verifique o repositório

Depois de seguir os passos em Compilando o Documento Traduzido, vá para a raiz do freebsd-doc e visualize o que deve ser submetido. Para obter uma visão geral dos arquivos a serem alterados e das diferenças no conteúdo do arquivo:

% git status
% git diff

Revise a saída e, se algum arquivo não relacionado à atualização da tradução do Committer’s Guide foi alterado ou adicionado, tome a ação apropriada de revertê-lo ou removê-lo, respectivamente, antes de continuar.

Sempre inclua o arquivo PO gettext (.po) e o documento traduzido em Hugo/Asciidoctor (.adoc).

Crie uma nova branch e faça o commit

Crie outra branch para separar o trabalho, o que ajudará em futuras atualizações no repositório local.

% git checkout -b committers-guide_pt-br

Registre o commit local.

% git add .
% git commit

Exemplo de mensagens de commit para traduções:

pt-br/committers-guide: Sincronizar com en XXXXXXX

Onde XXXXXXX é a revisão git(1) armazenada no repositório Weblate ~/freebsd-doc-translate/revision.txt.

Se for a primeira tradução de um artigo:

Adicionar tradução Coreana do artigo Leap Seconds

Uma mensagem será exibida após o commit se o git(1) não tiver sido configurado anteriormente. Siga as instruções e forneça o nome e o endereço de e-mail usado no Weblate. Esta etapa é crucial para creditar o trabalho dos contribuidores.

Em seguida, verifique todo o commit, revise as alterações e o nome e e-mail do autor.

% git show
Gerar um patch

Em seguida, gere um arquivo git-format-patch(1).

% git format-patch main
0001-pt-br-committers-guide-Sync-with-en-XXXXXXX.patch

Anexe o patch 0001-pt-br-committers-guide-Sync-with-en-XXXXXXX.patch a um relatório de problema no Bugzilla do FreeBSD.

Inclua as seguintes informações no relatório:

Tabela 1. Campos do Bugzilla
CampoValor

produto

Documentação

Componente

Artigos e Livros

Resumo

O mesmo que o commit local

Descrição

Declare que as instruções deste guia foram seguidas, incluindo revisão e outras etapas necessárias. Inclua informações que podem ajudar na triagem e no progresso do relatório.

CC (Opcional)

Se o idioma tiver coordenadores, inclua seus endereços de e-mail no campo CC.

Para pessoas familiarizadas com git(1) e GitHub: em vez de enviar o patch através do Bugzilla, um pull request do GitHub pode ser usado (use o nome e o endereço de e-mail utilizado no Weblate).

https://github.com/freebsd/freebsd-doc/ é um espelho secundário. Alterações na árvore doc podem ser feitas apenas por pessoas que possuem um doc commit bit.

Quando os tradutores continuam enviando patches de boa qualidade, eles podem ser nomeados por outros committers para receber acesso de escrita (um doc commit bit para traduções), uma conta FreeBSD e todas as vantagens associadas.

A lista de Contribuidores Adicionais do FreeBSD inclui não-committers cujas contribuições são submetidas à árvore doc.

Em caso de dúvida sobre algum procedimento, escreva para a lista de discussão sobre as traduções do FreeBSD.

10.12. FAQ (Perguntas Frequentes)

10.12.1. É necessário traduzir todas as mensagens de Copyright?

Cada equipe de idiomas decide isso para o seu próprio idioma; na equipe pt-br (Português do Brasil), foi decidido não traduzir essas mensagens.


Última alteração em: 9 de março de 2024 por Danilo G. Baio