Contexto nas traduções do GNOME
Uma mesma expressão pode ser traduzida de diferentes formas, dependendo do contexto. O GNOME já tinha seu jeitinho de especificar o contexto das mensagens originais, mas daqui para frente o GNOME deverá usar o msgctxt do GNU Gettext. Assim ficará ainda mais fácil entender o contexto das mensagens originais, e estaremos usando o mesmo recurso adotado (acho) pelo KDE 4.
Hoje em dia, os catálogos de mensagem do GNOME podem especificar o contexto da mensagem original no começo da própria mensagem. O contexto é descrito antes de uma barra vertical (pipe), e o tradutor deve omitir o contexto e a barra na mensagem traduzida. Isso está longe de ser intuitivo, e de vez em quando gera erros. Por isso mesmo, os desenvolvedores costumam avisar tradutores novatos através de comentários, como nesse exemplo da tradução do GTK+:
#. translators, strip the prefix up to and including the first |
#: gtk/gtkprintoperation.c:1509
msgid "print operation status|Printing"
msgstr "Imprimindo"
A tradução do KDE também tem suas peculiaridades, entre elas a maneira de especificar o contexto. Os catálogos de mensagem do KDE também indicam o contexto no começo da mensagem original, como no exemplo abaixo, extraído da documentação oficial:
#: kdeui/kstdaction.cpp:669
msgid ""
"_: beginning (of line)\n"
"&Home"
msgstr "&Dateianfang"
Essa divergência existe porque o GNU Gettext só incorporou suporte a contexto na versão 0.15, em julho de 2006. Hoje ele até tem suporte à sintaxe de contexto do GNOME, mas a sintaxe de contexto do próprio Gettext é bem mais limpa e fácil de entender. Para ilustrar, vou reescrever os exemplos acima com essa nova sintaxe. No caso do GNOME, a tradução do GTK+ ficaria assim:
#: gtk/gtkprintoperation.c:1509
msgctxt "print operation status"
msgid "Printing"
msgstr "Imprimindo"
E no caso do KDE, o exemplo ficaria assim:
#: kdeui/kstdaction.cpp:669
msgctxt "beginning (of line)"
msgid "&Home"
msgstr "&Dateianfang"
Muito melhor, não? Lucas Rocha já tinha dito que o GNOME 2.22 vai arrasar; como tradutor, imagino que as próximas versões serão ainda melhores!
Para mais informações sobre suporte a contexto no Gettext, leia as páginas GNU info sobre o formato do catálogo de mensagens, e sobre como implementar contexto em código C. O wiki do Ubuntu Brasil também tem um Guia do Catálogo de Mensagens.
Other Languages:
Artigos relacionados:
Notícias completas

![[rec6]](http://rec6.via6.com/imagens/botao_rec6_16x16.gif)
![[delicious]](http://images.del.icio.us/static/img/delicious.med.gif)
1 de dezembro de 2007 às 14:06
Que ótima notícia. Como algo relativamente simples vai fazer uma grande diferença no final!
Como não pensaram (ou não fizeram) n/isso antes?
4 de dezembro de 2007 às 15:57
Muito bacana, acredito que deve melhorar bastante a ação de traduzir. Concordo com o Vladimir Melo.