Arquivos históricos do BR-Linux.org apresenta:

Lidando com ferramentas de tradução (Kbabel e outros) para o Mozilla

Caio Begotti (entercaio@uol.com.br) nos enviou mais um artigo complementar sobre o assunto de traduções. Neste ele mostra melhor como usar ferramentas como o Kbabel e outras mais comuns.

Lidando com ferramentas de tradução (Kbabel e outros) para o Mozilla

Suponhamos que você esteja sendo bombardeado por informações sobre arquivos do tipo PO, que eles são o jeito mais clássico e fácil de se traduzir um software, e que você irá trabalhar com eles a partir de agora, mas, você não faz a mínima idéia de como! Tomando por base outros artigos que escrevi sobre isso, pensando no projeto Mozilla Brasil, resolvi fazer esse micro-guia de como usar o Kbabel e também outras ferramentas comuns de tradução. Em certas partes o texto será um tanto superficial, mas não me bata, divirta-se.

É interessante que, para poder entender melhor esse texto, você já tenha lido um outro artigo sobre o assunto chamado "Mozilla em Klingon, Sindarin e até em Português", cuja URL coloquei no fim desse texto como referência, caso você não o tenha feito ainda. Incluí também alguns endereços úteis pra consulta sobre a suíte Kbabel e outros - afinal fiz esse texto do
zero, e muitos documentes existentes devem abordar seu uso de um jeito melhor.

Recapitulando...

Arquivos PO (Objetos Portáveis, em inglês) são documentos que possuem trechos de texto da interface dos programas com uma marcação indicando qual é o texto original (90% em inglês) e qual é a parte que se deve traduzir. No entanto, o Mozilla não suporta a Gnu/Gettext, biblioteca responsável por esses arquivos, mas sim documentos DTD (exatamente como aquelas declarações XHTML que você vê em sites), o que nos obriga a convertê-los para o formato PO. Uma vez convertidos, e isso foi abordado no artigo inicialmente mencionado, é preciso que sejam manipulados através de uma ferramenta produtiva, e colaborativa, principalmente. É aqui que o Kbabel entra.

A suíte Kbabel

Não vou explicar os passos necessários para se ter a suíte Kbabel instalada na sua distribuição, mesmo porque você deve possuir ferramentas próprias pra instalá-la facilmente. Enfim, quando se fala da suíte Kbabel, quer-se dizer sobre o editor Kbabel, o gerenciador de catálogos e também do dicionário do Kbabel, todos extremamente úteis no processo de tradução. Essa suíte é a nave-mãe das traduções do KDE e até mesmo de outros projeto, devido à sua qualidade.

Basicamente, se usa o editor Kbabel para... traduzir arquivos! O gerenciador de catálogos serve pra você organizar os arquivos traduzidos e se poder ter uma noção do andamento do projeto e, por fim, o Kbabeldict, o dicionário do Kbabel, serve para, além de se realizar buscas
nos arquivos, obter dicas de tradução com base em bibliotecas compiladas e até mesmo para automatizar algumas traduções.

Coloquei no final desse documento um link para a KIO slave da Ajuda do Kbabel, com muito mais informações úteis, inclusive com screenshots das telas. Agora, as funções da suíte Kbabel que interessa ao Mozilla e à nós:

Identidade: assim que abrir o Kbabel, através do menu Settings (usarei os nomes originais em inglês, pois meu KDE está em transição para o 3.2 ainda, sem a localização em português), escolha Configure Kbabel e o item Identity deverá estar na tela. Configure seu nome, seu e-mail (o que usa pra traduções em grupo), código da língua (pt_BR) e e-mail de contato da lista de tradutores que participa. Por enquanto isso basta.

Banco de Dados: pra facilitar a vida dos tradutores, existe um jeito de automatizar traduções ou mesmo de dar dicas sobre qual termo deverá ser usado. Vá no menu Settings e escolha Configure Dictionary e então Translation Database. Aparecerão 4 abas, escolha Database e clique no botão Scan Folder & Subfolders - aqui você deve selecionar o diretório pai que contém os arquivos tipo PO tanto com mensagens em inglês, quanto em português, para ele criar uma base de dados a partir desses arquivos com conteúdo mesclado. O arquivo com tal diretório pai mencionado está listado na seção de links desse texto, mais abaixo. Você não precisa fazer isso sempre, basta que alguém do time de tradutores faça e disponibilize à você.

Procura Automática: é possível ir processando as mensagens dos arquivos .po enquanto o Kbabel lhe indica possíveis traduções pra elas. Pra tal, abra novamente a tela Configure Kbabel mas dessa vez escolha o item Search e marque a opção Automatically Start Search. Em Default Dictionary, escolha Translation Database. De agora em diante, sempre que uma mensagem for exibida, o Kbabel irá indicar possíveis traduções, desde que você tenha feito os passos do item anterior desse texto.

Para testar tudo isso, abra um arquivo .po qualquer do Mozilla (que deverá ser obtido junto ao time local do Mozilla Brasil) e veja que imediatamente o Kbabel exibe uma lista de possíveis traduções, no lado inferior direito da tela, junto com uma pontuação de cada sugestão, pra que você escolha a mais adequada. Você pode apertar as teclas PageUp e PageDown pra alternar entre os termos a serem traduzidos, significando respectivamente, Voltar e Avançar. Ok, agora você já escolheu o melhor termo e quer usá-lo, certo? Basta pressionar simultaneamente as teclas Ctrl, Alt e a barra de espaço, ou usar o menu de contexto sobre o termo desejado.

Pode ser que por algum motivo você precise traduzir todo o arquivo de uma só vez, automaticamente, tomando como base o Banco de Dados de Tradução comentado no texto. Ainda que eu não recomende esse tipo de atitude, provavelmente em algum momento isso será necessário, em caso de emergência ou seja lá qual for o motivo. Abra o menu Tools e selecione o item Rough Translation. Uma caixa de diálogo aparecerá pedindo alguns ajustes.
Deixe os valores no padrão e apenas certifique-se de ter na lista direita do quadro Dictionaries o item Translation Database (a tal lista possui uma legenda chamada Use). Então basta clicar no botão Start e o Kbabel fará tudo por você e no fim exibirá algumas estatísticas.

Como eu disse, esse método está longe de ser uma maravilha, e é extremamente necessário que você revise todo o arquivo após tal operação. Mas no final das contas: evite ao máximo usar esse tipo de tradução automática, os usuários merecem uma maior qualidade!

Se for necessário (de qualquer forma é bom forçar para que seja), use o sistema de validação de texto e checagem do Kbabel através do menu Tools e do item Validation. Se preferir, aperte a combinação Ctrl+E para efetuar todas as checagens de uma vez. E, uma vez que nenhum erro tenha sido acusado e tudo esteja aparentemente bem, salve a sua tradução e
envie ao seu coordenador.

O dicionário KbabelDict

O KbabelDict na verdade é um módulo à parte da suíte Kbabel mas que já fora comentado no texto. Se você abrí-lo, verá todas as funções mencionadas acima em uma única janela, pra fácil pesquisa e localização, permitindo inclusive que se altere entre banco de dados instantaneamente. A diferença maior é que aqui você só tem acesso ao dicinário e pesquisas; caso queira arrumar um termo ou outra coisa, use o menu de contexto no termo desejado para iniciar o editor Kbabel.

O gerenciador de catálogos do Kbabel

Assim que você abre o gerenciador de catálogos pela primeira vez, é pedido que você especifique o diretório base dos arquivos tipo PO. Basta escolher o diretório apropriado, mencionado no trecho sobre a suíte Kbabel e esperar as informações serem processadas. Após isso serão mostradas na tela algumas informações sobre a quantidade de mensagens traduzidas, confusas e não-traduzidas em cada diretório e arquivo. Alguns ícones são usados para exibir essas informações também, que são:

Marca Verde: todas as mensagens foram traduzidas corretamente.

Exclamação Azul: diz que algumas mensagens ou estão confusas, ou não-traduzidas ainda. Cheque as mensagens assim nos arquivos, talvez você só tenha cometido um pequeno erro de concordância...

Interrogação Preta: indica que o arquivo possui erros de sintaxe.


Outras Ferramentas de Tradução

Particularmente acredito que usar a suíte Kbabel é o modo mais apropriado e produtivo de se traduzir os arquivos .po do Mozilla, mas pra evitar comentários azedos, resolvi listar outros programas que fazem a mesma coisa, ainda que não tenham as mesmas funções. São eles:

GTranslator

Esse é o tradutor de arquivos tipo PO do GNOME, mas que sinceramente não atende a todas as necessidades mais comuns, como as listadas inicialmente. Apesar da interface bastante simplificada, ele faz um ótimo trabalho. Senti a falta de algo similar ao KbabelDict ou mesmo de algo parecido ao gerenciador de catálogos da suíte Kbabel.

Tirando tudo isso e o fato de nem sequer me permitir digitar o e-mail do meu time de tradução (só conseguia escolher entre alguns poucos de uma lista padrão, na tela Preferências), o GTranslator é um ótimo programa.

Referência: http://gtranslator.sourceforge.net/features.html
Screenshot: http://gtranslator.sourceforge.net/screenshots/gtranslator-general.jpg

Emacs PO-mode

Infelizmente nunca tive muito contato com o Gnu/Emacs, então o máximo que posso fazer é reproduzir a opinião de um usuário sobre o mesmo e sobre o tal modo de edição de arquivos PO. Ele comenta sobre a curva de aprendizado do Gnu/Emacs ser reconhecidamente fechada, mas nada que não compense o seu uso:

"As always with Emacs, it takes some time to get used to it. But for people who are used to Emacs or are willing to learn its ways, this mode can be a big help. Another factor might be that Emacs is apparently still one of the best ways to edit DocBook SGML which is also the format of KDE documentation"

Referência 1: http://i18n.kde.org/translation-howto/gui-specialized-apps.html
Referência 2: http://www.gnu.org/software/gettext/manual/html_node/gettext_10.html
Screenshot: http://xcin.linux.org.tw/i18n/pc2000/p5/img3.png

VI

Jihads geeks à parte, o VI é sem dúvida um editor poderosíssimo e apesar de não possuir tantas ferramentas como o Kbabel (justamente por ser genérico e não uma suíte específica), pode ser um bom jeito de editar seus .po, ainda mais se se usar a função de highlight de sintaxe, que colore partes específicas do documento, dependendo da sua forma e propriedade. Coloquei também aqui a URL de um arquivo de configuração feito pelo pessoal do time L10N do Mandrake, que facilita a tradução de arquivos tipo PO.

Referência: http://www.vim.org e http://vimdoc.sourceforge.net/
Arquivo de Configuração: http://www.mandrakelinux.com/l10n/po.vim

poEdit

Para quem não pode, ou por algum motivo absurdo, não quer usar um sistema Linux/Unix para traduzir arquivos tipo PO, existe o poEdit. Ele funciona tanto em Windows quanto em Linux devido à biblioteca gráfica multi-plataforma WxWidgets, o que não acontece com a suíte Kbabel, que usa a QT - e só agora apareceram testes para portar programas do KDE para Windows.

O poEdit se assemelha em partes ao Kbabel, principalmente no visual de edição como pode ser visto no screenshot abaixo, mas não chega a ser tão completo. Diz a lenda que já houve um porte dele para o MacOS X, é bom conferir, caso interesse.

Referência: http://poedit.sourceforge.net/
Lista de Suporte: http://news.gmane.org/gmane.editors.poedit.user
Screenshot: http://poedit.sourceforge.net/screenshots/xp2.png

Tentei listar os programas mais comuns e usados pra esse tipo de coisa, variando inclusive no tipo do usuário destinado a usá-los. É interessante, que para se dar melhor com traduções de .po, você pratique o uso do Kbabel quanto mais você puder, então terá um maior controle dele, aumentando sua produtividade e nem notará que gastou um tempinho aprendendo a usá-lo. Abaixo estão alguns links extras que servem como referência base a este texto. Ah, e o mais importante: divirta-se.

Caio Begotti entercaio@uol.com.br
Mozilla Brasil http://www.mozilla.org.br


Screenshots do Kbabel:
http://www.mozilla.org.br/~cbegotti/kbabel/kbabel_catalogmanager.jpg
http://www.mozilla.org.br/~cbegotti/kbabel/kbabel_dictionary.jpg
http://www.mozilla.org.br/~cbegotti/kbabel/kbabel_translation.jpg

Referências de sites:
http://www.mozilla.org.br/~cbegotti/kbabeldict_pt_BR_mozilla_1.6.tar.gz
http://www.mozilla.org.br/~cbegotti/mozillaklingonsindarinptbr.txt
http://mozillazine.org/talkback.html?article=4459
http://i18n.kde.org/translation-howto/

Documentação local:
info gettext
info emacs
man gtranslator
/usr/share/doc/vim
apt-cache show kdesdk-doc-html
help:/kbabel/introduction.html

Autor: Caio Begotti
Email: entercaio@uol.com.br

Postado por fuji em março 27, 2004 11:11 AM

Comentários para "Lidando com ferramentas de tradução (Kbabel e outros) para o Mozilla"

Antes de comentar...

- Preserve a qualidade desta discussão
- Leia os Termos de Uso.
- Este formulário deve ser usado para comentários sobre a notícia. Se você tem dúvidas ou precisa de ajuda, use o Fórum.
- Mantenha o foco nos argumentos e no assunto
- Não faça ataques pessoais.
- Pense 5 vezes antes de entrar em discussões inúteis, como "qual é a melhor distribuição/ambiente gráfico/linguagem de programação/etc.", mesmo se alguém já tiver provocado - um erro não justifica o outro
- Não seja um e-mala ;-)


O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação) notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter histórico, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.