Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| pt-br:translations:translation_guidance_in_xfce [2026/10/04 17:29] – [Breve Guia Sobre Tradução de Mensagens] Add deprecation banner epetriglia | pt-br:translations:translation_guidance_in_xfce [2026/11/06 03:59] (current) – removed kevinbowen | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Breve Guia Sobre Tradução de Mensagens ====== | ||
| - | |||
| - | <note warning> | ||
| - | |||
| - | ===== 0. Licença e Autores ===== | ||
| - | |||
| - | Este documento é fornecido sob a [[http:// | ||
| - | |||
| - | * Christian Biere < | ||
| - | * Thomas Schürger < | ||
| - | * Murphy < | ||
| - | * Daichi Kawahata < | ||
| - | * Stavros Giannouris < | ||
| - | * Mike Massonnet < | ||
| - | * Adicionou entradas sobre páginas web e documentação de po-doc | ||
| - | * Atualizou referências antigas de SVN para Git | ||
| - | |||
| - | ===== 1. Introdução ===== | ||
| - | |||
| - | Este é um breve resumo sobre a documentação do gettext. Veja o [[# | ||
| - | |||
| - | ===== 2. Pegar os arquivos PO ===== | ||
| - | |||
| - | Você pode pegar os últimos arquivos PO da plataforma Transifex, disponível em http:// | ||
| - | |||
| - | Em relação à coleção, é recomendável ter tradução para a atual versão estável em um primeiro momento, na versão de desenvolvimento seriam mudados freqüentemente, | ||
| - | |||
| - | ===== 3. Pegar o editor para editar o arquivo PO ===== | ||
| - | |||
| - | Você pode usar um editor de texto Emacs com `po-mode', | ||
| - | `po.vim' | ||
| - | `gtranslator (requer GNOME)', | ||
| - | possuem recursos especiais para a edição de arquivos PO. Você pode usar um editor normal como Mousepad, Vi, etc. Claro, mas é altamente recomendado que se use um dos daqueles editores. | ||
| - | |||
| - | Aqui estão os links: | ||
| - | |||
| - | * Emacs com modo PO - Melhor modo para arquivos PO GNU gettext. | ||
| - | * http:// | ||
| - | |||
| - | * Vim com po.vim - Um ftplugin para editar facilmente arquivos PO. | ||
| - | * http:// | ||
| - | |||
| - | * Poedit - um editor de catálogos gettext multi-plataforma. | ||
| - | * http:// | ||
| - | |||
| - | * Gtranslator - O programa de tradução do GNOME 2.x. | ||
| - | * http:// | ||
| - | |||
| - | * KBabel - Um avançado e fácil de se usar, editor de arquivos PO. | ||
| - | * http:// | ||
| - | |||
| - | Se você pretende continuar como tradutor, você pode querer aprender a usar pelo menos uma das acima. | ||
| - | |||
| - | ===== 4. Fale com o tradutor anterior de seu idioma ===== | ||
| - | |||
| - | Para evitar de gastar seu tempo com trabalho já em curso, é melhor | ||
| - | contatar o tradutor no linha cabeçalho: | ||
| - | |||
| - | Last-Translator: | ||
| - | |||
| - | Se que o endereço não é mais usado ou você não conseguir contato com | ||
| - | último tradutor, então favor enviar a sua mensagem para a lista de discussão de traduções do (xfce-i18n@xfce.org). | ||
| - | |||
| - | |||
| - | ===== 5. Prepare o arquivo PO ===== | ||
| - | |||
| - | Para criar o arquivo PO de seu idioma, simplesmente digite, | ||
| - | |||
| - | $ msginit | ||
| - | |||
| - | no diretório de po alvo, de acordo com seu locale. Este comando cria lang.po, no qual as strings adquadas do cabeçalho são dadas automaticamente sem incomodar você. O novo arquivo PO criado, porém, pode não ter a codificação de caracteres (charset) UTF-8. Dependendo de seu locale, você posteriormente precisará converter este charset para UTF-8. | ||
| - | |||
| - | Nota: o comando '' | ||
| - | |||
| - | ===== 6. Traduza as mensagens ===== | ||
| - | |||
| - | No arquivo PO, você encontrará algo como: | ||
| - | |||
| - | #: main.c:42 | ||
| - | msgid "Hello world" | ||
| - | msgstr "" | ||
| - | |||
| - | Se você quisesse traduzir para Alemão, você teria que alterar a terceira linha para o seguinte: | ||
| - | |||
| - | msgstr "Hallo Welt" | ||
| - | |||
| - | Não toque na string em " | ||
| - | |||
| - | msgid "%-8s are %d time faster than %s.\n" | ||
| - | msgstr "%-8s sind %d mal schneller als %s.\n" | ||
| - | |||
| - | "'' | ||
| - | |||
| - | msgid "" | ||
| - | "This is a printf-like format string controlling the display of the " | ||
| - | " | ||
| - | "\t%p: Artist/ | ||
| - | "\t%t: Track Title\n" | ||
| - | "\t%a: Album Name\n" | ||
| - | "\t%T: Track Number\n" | ||
| - | "\t%g: Genre\n" | ||
| - | "\t%y: Year\n" | ||
| - | "\t%f: Filename\n" | ||
| - | "\t%%: a percent sign" | ||
| - | |||
| - | neste caso, "'' | ||
| - | |||
| - | Você não tem que traduzir todas as mensagens. Se você não consegue ou não quiser traduzir uma mensagem, simplesmente deixe "'' | ||
| - | |||
| - | Algumas strings contêm um sumblinhado singular (Ex: "_Edit list..." | ||
| - | |||
| - | msgid "_Edit list..." | ||
| - | msgstr " | ||
| - | |||
| - | Se você alterar a tecla aceleradora, | ||
| - | |||
| - | Ok, algumas vezes você vê mercações especiais, indicadores-de-formato em seu arquivo PO como no exemplo abaixo: | ||
| - | |||
| - | #: ../ | ||
| - | #, fuzzy | ||
| - | msgid "About Xfce 4" | ||
| - | msgstr "O XFce 4" | ||
| - | |||
| - | Com o a marcação "'' | ||
| - | |||
| - | #: ../ | ||
| - | msgid "About Xfce 4" | ||
| - | msgstr "O XFce 4" | ||
| - | |||
| - | Agora, a string traduzida vai funcionar para o local específico. " | ||
| - | |||
| - | #: ../ | ||
| - | #, fuzzy, c-format | ||
| - | msgid "%s Info" | ||
| - | msgstr "%s Info" | ||
| - | |||
| - | Neste caso, "'' | ||
| - | |||
| - | #: ../ | ||
| - | #, c-format | ||
| - | msgid "%s Info" | ||
| - | msgstr "%s Info" | ||
| - | |||
| - | (continua...) | ||
| - | |||
| - | FIXME | ||
| - | |||
| - | * Uma explicação para o mecanismo de plural. | ||
| - | * Comentando com "''#''" | ||
| - | |||
| - | ==== 6.1 Contexto de Tradução ==== | ||
| - | |||
| - | A interface gráfica normalmente usa palavras singulares ou combinação de palavras pequenas. Quando usado como título de um quadro, dois pontos é anexado após o inglês para evitar ambiguidade. Outra possibilidade para evitar ambiguidade especialmente em strings pequenas é o uso do caractere "'' | ||
| - | |||
| - | msgid " | ||
| - | msgstr " | ||
| - | |||
| - | Na string traduzida descarte tudo até o primeiro "'' | ||
| - | |||
| - | ==== 6.2 Mudança de ordem ==== | ||
| - | |||
| - | Algumas vezes é necessário mudar a ordem dos c-formats. Para isso, vocÊ terá que multar o %< | ||
| - | |||
| - | msgid " | ||
| - | msgstr "%2$s space left on device %1$s" | ||
| - | |||
| - | ===== 7 Converta a saída para UTF-8 (se já não está codificada para UTF-8) ===== | ||
| - | |||
| - | $ iconv -f CHARSET -t UTF-8 ${lang}.po > utf8.po | ||
| - | $ mv utf8.po ${lang}.po | ||
| - | |||
| - | Substitua CHARSET pelo que você usar. ex: se você é da Europa Oriental, provavelmente seria ISO-8859-1. Do contrário, veja o que echo $LC_CTYPE diz para você, e remova a parte até o . (ponto) . Por exemplo: | ||
| - | |||
| - | $ echo $LC_CTYPE | ||
| - | ja_JP.eucJP | ||
| - | $ iconv -f eucJP -t UTF-8 lang.po > utf8.po | ||
| - | $ mv utf8.po ${lang}.po | ||
| - | |||
| - | Se você usa Vim, você pode também pode converter linhas durante a tradução assim: | ||
| - | |||
| - | :,!iconv -f ISO-8859-1 -t UTF-8 | ||
| - | |||
| - | Isso normalmente funciona mesmo se seu terminal não tiver suporte a codificação de caracteres UTF-8 definida. | ||
| - | |||
| - | ===== 8. Conferindo e Enviando o arquivo PO ===== | ||
| - | |||
| - | Primeiro, verifique se o seu arquivo PO está válido: | ||
| - | |||
| - | $ msgfmt --check --check-accelerators=_ -o /dev/null ${lang}.po | ||
| - | |||
| - | Você deve receber nenhum aviso, mas se você recebeu algum, corrija de acordo com as mensagens de aviso retornadas. Depois da verificação, | ||
| - | |||
| - | Nota: Essa parte é tão importante que POR FAVOR não poste suas traduções para a lista a menos que você não receba aviso na verificação. | ||
| - | |||
| - | ===== 9. Atualizações do modelo ===== | ||
| - | |||
| - | As mensagens podem ser alteradas de lançamento para lançamento e com aumento de funcionalidades, | ||
| - | |||
| - | A parte seguinte trata dos mantenedores de projeto. Para atualizar os arquivos PO para refletir quaisquer alterações para strings traduzíveis nos arquivos fontes, requer código fonte completo no qual você deverá executar: | ||
| - | |||
| - | $ ./ | ||
| - | |||
| - | Será necessário fazer isso no diretório de cada módulo no começo, para depois simplesmente atualizar seus arquivos: | ||
| - | |||
| - | $ cd po | ||
| - | $ make update-po | ||
| - | |||
| - | Isso vai rastrear os arquivos fonte por strings traduzíveis, | ||
| - | |||
| - | Algumas vezes, é necessária a atualização do POTFILES.in primeiro, quando há strings em novos arquivos fonte. | ||
| - | |||
| - | ===== 10. Arquivos Desktop (ramo 4.2 somente e precisa de código fonte completo) ===== | ||
| - | |||
| - | //Os arquivos desktop para o ramo 4.4 são traduzidos diretamente nos arquivos po. Você somente precisa seguir este procedimento para o ramo xfce 4.2.// | ||
| - | |||
| - | As variáveis Name, GenericName, | ||
| - | |||
| - | Key[locale]=localestring | ||
| - | |||
| - | Por exemplo (do Xfcalendar): | ||
| - | |||
| - | Name=Xfce Calendar | ||
| - | [...] | ||
| - | Name[he]=לוח שנה Xfce | ||
| - | |||
| - | Certifique-se que o arquivo se mantenha codificado em UTF-8, ordem de idioma deve ser alfabética. | ||
| - | |||
| - | Isso não é necessário se você estiver recebendo traduções para versão trunk de SVN, ao invés você tem que instalar um intltool decente. Se você estiver usando Emacs, "'' | ||
| - | |||
| - | * Aqui estão os arquivos desktop que deveriam ser traduzidos: | ||
| - | |||
| - | xfcalendar/ | ||
| - | xfcalendar/ | ||
| - | xfce-mcs-manager/ | ||
| - | xfce-mcs-plugins/ | ||
| - | xfce-mcs-plugins/ | ||
| - | xfce-mcs-plugins/ | ||
| - | xfce-mcs-plugins/ | ||
| - | xfce-utils/ | ||
| - | xfce-utils/ | ||
| - | xfce4-appfinder/ | ||
| - | xfce4-iconbox/ | ||
| - | xfce4-mixer/ | ||
| - | xfce4-panel/ | ||
| - | xfce4-session/ | ||
| - | xfce4-session/ | ||
| - | xfdesktop/ | ||
| - | xfdesktop/ | ||
| - | xffm/ | ||
| - | xffm/ | ||
| - | xffm/ | ||
| - | xffm/ | ||
| - | xffm/ | ||
| - | xffm/ | ||
| - | xffm/ | ||
| - | xffm/ | ||
| - | xffm/ | ||
| - | xfprint/ | ||
| - | xfprint/ | ||
| - | xfprint/ | ||
| - | xfwm4/ | ||
| - | xfwm4/ | ||
| - | |||
| - | |||
| - | ===== 11. Arquivos XML para menu desktop (precisa de código fonte completo) ===== | ||
| - | |||
| - | //As traduções do menu desktop são traduzidas diretamente nos arquivos po para o ramo de desenvolvimento (posterior ramo 4.4). Você somente precisa seguir este procedimento para os ramos 4.2 e 4.4.// | ||
| - | |||
| - | Você pode querer localizar o menu desktop que aparece com botão direito no desktop. Seus arquivos são: | ||
| - | |||
| - | * Para o ramo 4.4 | ||
| - | |||
| - | xfdesktop/ | ||
| - | xfdesktop/ | ||
| - | |||
| - | Para traduzir para seu idioma, siga as instruções destes arquivos. Depois de terminadas traduções e instalação, | ||
| - | |||
| - | Nota: se você já tem instalado aqueles arquivos XML, mas gostaria de verirficar suas traduções " | ||
| - | |||
| - | ${HOME}/ | ||
| - | |||
| - | Então, as novas traduções aparecerão. | ||
| - | |||
| - | |||
| - | ===== 12. Verificando suas traduções no atual estado ===== | ||
| - | |||
| - | Com relação ao ramo de desenvolvimento, | ||
| - | |||
| - | Quanto ao ramo 4.4, e pressumindo que o tradutor tenha instalado, é uma questão de executar: | ||
| - | |||
| - | $ msgfmt -c -o ${lang}.mo ${lang}.po | ||
| - | $ su | ||
| - | # cp ${lang}.mo ${xfce-prefix}/ | ||
| - | |||
| - | E reiniciar a aplicação. | ||
| - | |||
| - | |||
| - | ===== 13. Tradução da Documentação ===== | ||
| - | |||
| - | As documentações estão traduzidas dentro dos diretórios '' | ||
| - | |||
| - | * Mantenha a documentação (trabalho apra o mantenedor/ | ||
| - | - Execute o script "'' | ||
| - | - Atualize os arquivos POT e PO com "'' | ||
| - | - Atualize os arquivos XML com os arquivos PO recém-traduzidos usando "'' | ||
| - | |||
| - | Nota: precisa da ferramenta '' | ||
| - | |||
| - | * Compile o DocBook para formato HTML (alguém que queira verificar os resultados) | ||
| - | - Execute o script "'' | ||
| - | - Execute "'' | ||
| - | - O resultado estará compilado dentro de '' | ||
| - | |||
| - | O que você tem que fazer **como tradutor** consiste em editar o arquivo PO de seu locale dentro do diretório '' | ||
| - | |||
| - | ===== 14. Tradução das Páginas Web ===== | ||
| - | |||
| - | O linha de comando abaixo realiza checkout dos arquivos traduzíveis para as web pages. Isso vai criar uma árvore svn local, na qual você pode começar traduzindo para seu idioma o conteúdo da página web do Xfce. | ||
| - | |||
| - | $ svn co http:// | ||
| - | |||
| - | |||
| - | ===== 15. Feedback ===== | ||
| - | |||
| - | Se você tiver comentários, | ||
| - | |||
| - | * Lista de discussão de traduções do Xfce < | ||
| - | |||
| - | Seu feedback será muito bem-vindo. | ||
| - | |||
| - | |||
| - | ===== 16. Apêndice ===== | ||
| - | |||
| - | * O manual completo de GNU gettext: | ||
| - | * [[http:// | ||
| - | |||
| - | * Padrão de códigos de países (ISO 3166): | ||
| - | * [[http:// | ||
| - | |||
| - | * Padrão de códigos de idiomas (ISO 639): | ||
| - | * [[http:// | ||
| - | |||
| - | * Especificação de entradas de desktop do Freedesktop.org: | ||
| - | * [[http:// | ||
| - | |||
| - | * Translation Project: | ||
| - | * [[http:// | ||
| - | |||
| - | * Estatísticas de traduções do Xfce: | ||
| - | * [[http:// | ||