SlideShare uma empresa Scribd logo
1 de 22
Tradução de Software Livre
Tradução de Software Livre

   Existem varios papéis além do desenvolvedor
       Testador (> conhecimento técnico, não precisa ser
        programador)
       Documentador (> conhecimento técnico, não
        precisa ser programador)
       Tradutor (nenhum conhecimento técnico, apenas
        inglês e o seu idioma nativo)
Quero contribuir traduzindo

   Em qual projeto vou trabalhar?
   Já tem algum em mente? Ótimo.
Se não tiver...

   Qual área de trabalho usas? GNOME? KDE?
    XFCE? Comece por aí
   Não gostou (ou usa Windows)? Usa o
    LibreOffice? Qual é o teu browser? Ótimo :)
   Ainda não gostou? Pense naquele programa
    que foi custoso de achar e te quebrou o maior
    galho
Já sei quem quero ajudar

   Ótimo, entre em contato com os responsáveis
Entrando em contato

   Tentar achar no site do projeto alguma idicação
    para os tradutores
   Se não existir, se inscreva na lista de
    disussões e fale que quer traduzir
   Se não houver lista, ache o e-mail do(s)
    desenvolvedor(es) e avise-o(s) do interesse e
    peça instruções
   Não tem e-mail do(s) desenvolvedor(es)?
    Chame a atenção dele
       Comentando no blog que ele divulgou o projeto
       Telepatia :-)
Traduzindo de verdade

   Qualquer software livre que se preste usa
    gettext
   (Wikipedia) gettext é uma biblioteca do Projeto
    GNU que faz a internacionalização de
    softwares
       Para o desenvolvedor não é problema:
        printf(”Translate me.”);
        printf(_(”Translate me.”));
       Para os tradutores é a maior invenção do mundo
O arquivo .po

   Ao término do desenvolvimento do software o
    programador usará o gettext para gerar um
    arquivo .po que conterá todas as frases que ele
    usou a função _(). Exemplo do conteúdo de um
    arquivo .po:
    #: src/name.c:36
    msgid "Translate me."
    msgstr ””
O que fazemos? Traduzimos!

   Nosso trabalho como tradutores é traduzir:
    #: src/name.c:36
    msgid "Translate me."
    msgstr ”Traduza-me.”
Regras

   Nunca alterar NADA que não comece com
    msgstr
   Sempre mantenha qualquer caractere(s)
    diferente(s) da string original:
    msgid "_applyn"
    msgstr ”_aplicarn”
Quanto maior o projeto, mais fácil

   Projetos maiores costumam ter FAQs para
    tradutores, páginas com erros frequêntes e
    mais pessoas para sanar as dúvidas
Automatização

   Devo baixar os .po, traduzir e envia-lo para o
    source do projeto?
   Depende, em projetos pequenos talvez, pois
    não haverá ninguém para validar tuas
    traduções
   Não precisa se meter no código fonte, envie
    um e-mail para o programador com o .po
    traduzido que ele fará o resto :-)
Projetos maiores, qual a infra?

   Existem projetos de automatização
    interessantes, o melhor deles é o Transifex
   O Transifex é um site em que não precisamos
    baixar nada, só logar, escolher o ”módulo” e
    traduzir, tudo no browser
Transifex
Transifex
Apenas os .po

   Para ajudar quem não tem o Transifex, existe o
    Poedit, um editor de arquivos .po
Poedit
Já traduzi e submeti, e agora?

   Se o projeto tiver um fluxo estabelecido (via
    Transifex, lista de discussões, IRC, ou e-mail)
    sua tradução será revisada por alguém e após
    ser aprovada, será adicionada ao software
   Se não houver fluxo estabelecido, mande a
    tradução para o programador, ele adicionará ao
    código imediatamente
Minha tradução não passou na
revisão, e agora?
   Você não será expulso/chingado ou
    menosprezado por isso
   Não se preocupe, é errando que se aprende
   Na dúvida olhe como os outros estão
    traduzindo, se não for o suficiente, pergunte
   Nos projetos grandes leia os FAQs, se for um
    projeto pequeno e tu fores o único tradutor, vá
    até um projeto grande e peça ajuda
E se não usarem o gettext?

   Programador pode não conhecer o gettext e
    usar alguma própria implementação para
    internacionalização
   Calma, as frases sempre devem estar em
    algum lugar
   Procure, se não achar, peça ao programador
Pode até ser em XML
<?xml version="1.0" encoding="UTF­8"?>

<ressourceStrings>
    <id_avm1file>Invalid AVM1 file!</id_avm1file>
    <id_booklayout>Book layout</id_booklayout>
    <id_close>Close</id_close>
    <id_currentPage>Current page:</id_currentPage>
    <id_currentZoom>Current zoom:</id_currentZoom>
    <id_dimensions>Dimensions:</id_dimensions>
    <id_docInfo>Document Informations</id_docInfo>
    <id_filenotfound>File not found!</id_filenotfound>
    <id_firstPage>First page</id_firstPage>
    <id_fitToPage>Fit to page</id_fitToPage>
    <id_lastPage>Last page</id_lastPage>
    <id_monoPageLayout>Monopage layout</id_monoPageLayout>
    <id_name>Name:</id_name>
    <id_nextPage>Next page</id_nextPage>
    <id_on>on</id_on>
    <id_page>page</id_page>
    <id_pixels>pixels</id_pixels>
    <id_prevPage>Previous page</id_prevPage>
    <id_stackLayout>Double stack layout</id_stackLayout>
    <id_to>To</id_to>
    <id_toFullScreen>Full screen</id_toFullScreen>
    <id_toStandardSize>Standard size</id_toStandardSize>
    <id_totalPages>Total pages:</id_totalPages>
    <id_verticalListLayout>Vertical list layout</id_verticalListLayout>
    <id_zoomMinus>Decrease zoom</id_zoomMinus>
    <id_zoomPlus>Increase zoom</id_zoomPlus>
</ressourceStrings>
Fim

   Dúvidas?
   Contato
       Frederico Schardong
       frede.sch@gmail.com

Mais conteúdo relacionado

Mais procurados

Eu não sou um "bom programador"!
Eu não sou um "bom programador"!Eu não sou um "bom programador"!
Eu não sou um "bom programador"!Gustavo Pereira
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaRogerio Fontes
 
Matando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonMatando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonOsvaldo Santana Neto
 
TDD - Workshop Pyladies SP
TDD - Workshop Pyladies SPTDD - Workshop Pyladies SP
TDD - Workshop Pyladies SPJessyka Lage
 
Qualidade em projetos PHP - PHPSC Conf 2011
Qualidade em projetos PHP - PHPSC Conf 2011Qualidade em projetos PHP - PHPSC Conf 2011
Qualidade em projetos PHP - PHPSC Conf 2011Luís Cobucci
 
Engenharia rever sa mentebinaria
Engenharia rever sa   mentebinariaEngenharia rever sa   mentebinaria
Engenharia rever sa mentebinariaPatrese Renan
 
Dicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHPDicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHPDouglas V. Pasqua
 
In tests we trust: começando com TDD, mocks e mais
In tests we trust: começando com TDD, mocks e maisIn tests we trust: começando com TDD, mocks e mais
In tests we trust: começando com TDD, mocks e maisAna Paula Gomes
 
Python django7semestre
Python django7semestre Python django7semestre
Python django7semestre Denis Vieira
 
Django Object factory
Django Object factoryDjango Object factory
Django Object factoryitalomaia
 
Melhor que whatsapp: telegram + php
Melhor que whatsapp: telegram + phpMelhor que whatsapp: telegram + php
Melhor que whatsapp: telegram + phpVitor Mattos
 
Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Rudá Moura
 

Mais procurados (20)

Como tornar-se um programador Python melhor
Como tornar-se um programador Python melhorComo tornar-se um programador Python melhor
Como tornar-se um programador Python melhor
 
Eu não sou um "bom programador"!
Eu não sou um "bom programador"!Eu não sou um "bom programador"!
Eu não sou um "bom programador"!
 
Canivete suíço do Python
Canivete suíço do PythonCanivete suíço do Python
Canivete suíço do Python
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis Uberlândia
 
Matando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonMatando o Java e Mostrando o Python
Matando o Java e Mostrando o Python
 
TDD - Workshop Pyladies SP
TDD - Workshop Pyladies SPTDD - Workshop Pyladies SP
TDD - Workshop Pyladies SP
 
Qualidade em projetos PHP - PHPSC Conf 2011
Qualidade em projetos PHP - PHPSC Conf 2011Qualidade em projetos PHP - PHPSC Conf 2011
Qualidade em projetos PHP - PHPSC Conf 2011
 
RealDay: Introduction to TDD
RealDay: Introduction to TDDRealDay: Introduction to TDD
RealDay: Introduction to TDD
 
Engenharia rever sa mentebinaria
Engenharia rever sa   mentebinariaEngenharia rever sa   mentebinaria
Engenharia rever sa mentebinaria
 
Dicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHPDicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHP
 
Php Para Iniciantes
Php Para IniciantesPhp Para Iniciantes
Php Para Iniciantes
 
Refatorar é preciso! 2.0
Refatorar é preciso! 2.0Refatorar é preciso! 2.0
Refatorar é preciso! 2.0
 
Escalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLIDEscalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLID
 
Python 3k
Python 3kPython 3k
Python 3k
 
In tests we trust: começando com TDD, mocks e mais
In tests we trust: começando com TDD, mocks e maisIn tests we trust: começando com TDD, mocks e mais
In tests we trust: começando com TDD, mocks e mais
 
Python django7semestre
Python django7semestre Python django7semestre
Python django7semestre
 
Django Object factory
Django Object factoryDjango Object factory
Django Object factory
 
Canivete python
Canivete pythonCanivete python
Canivete python
 
Melhor que whatsapp: telegram + php
Melhor que whatsapp: telegram + phpMelhor que whatsapp: telegram + php
Melhor que whatsapp: telegram + php
 
Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Por Que Python É Tão Lento?
Por Que Python É Tão Lento?
 

Destaque

Formación tecnopedagógica en ambientes virtuales de aprendizaje Blackboard 9.1
Formación tecnopedagógica en ambientes virtuales de aprendizaje Blackboard 9.1Formación tecnopedagógica en ambientes virtuales de aprendizaje Blackboard 9.1
Formación tecnopedagógica en ambientes virtuales de aprendizaje Blackboard 9.1Fabio Jara
 
Institutogamaliel.com deus é obrigado a salvar a todos
Institutogamaliel.com deus é obrigado a salvar a todosInstitutogamaliel.com deus é obrigado a salvar a todos
Institutogamaliel.com deus é obrigado a salvar a todosInstituto Teológico Gamaliel
 
El tutor un mediador virtual
El  tutor un mediador virtualEl  tutor un mediador virtual
El tutor un mediador virtuallibre
 
Institutogamaliel.com iniquidade é transgressão de qual lei
Institutogamaliel.com iniquidade é transgressão de qual leiInstitutogamaliel.com iniquidade é transgressão de qual lei
Institutogamaliel.com iniquidade é transgressão de qual leiInstituto Teológico Gamaliel
 
16 educação e função dos médiuns
16 educação e função dos médiuns16 educação e função dos médiuns
16 educação e função dos médiunsAntonio SSantos
 
Modelos y tamanos_de_contenedores
Modelos y tamanos_de_contenedoresModelos y tamanos_de_contenedores
Modelos y tamanos_de_contenedoresbraian24
 
Prova internet-pssii-2005
Prova internet-pssii-2005Prova internet-pssii-2005
Prova internet-pssii-2005Lucas Ferreira
 
Prova internet-pssi-2008
Prova internet-pssi-2008Prova internet-pssi-2008
Prova internet-pssi-2008Lucas Ferreira
 
61 familia-mudar prá melhor
61 familia-mudar prá melhor61 familia-mudar prá melhor
61 familia-mudar prá melhorAntonio SSantos
 
Marketing em Mídias Sociais
Marketing em Mídias SociaisMarketing em Mídias Sociais
Marketing em Mídias SociaisCamila Renaux
 
Apostila matrimônio & divórcio
Apostila   matrimônio & divórcioApostila   matrimônio & divórcio
Apostila matrimônio & divórcioAntonio SSantos
 

Destaque (20)

Formación tecnopedagógica en ambientes virtuales de aprendizaje Blackboard 9.1
Formación tecnopedagógica en ambientes virtuales de aprendizaje Blackboard 9.1Formación tecnopedagógica en ambientes virtuales de aprendizaje Blackboard 9.1
Formación tecnopedagógica en ambientes virtuales de aprendizaje Blackboard 9.1
 
Institutogamaliel.com deus é obrigado a salvar a todos
Institutogamaliel.com deus é obrigado a salvar a todosInstitutogamaliel.com deus é obrigado a salvar a todos
Institutogamaliel.com deus é obrigado a salvar a todos
 
Apresentação1
Apresentação1Apresentação1
Apresentação1
 
El tutor un mediador virtual
El  tutor un mediador virtualEl  tutor un mediador virtual
El tutor un mediador virtual
 
A força do pecado
A força do pecadoA força do pecado
A força do pecado
 
Institutogamaliel.com a fé
Institutogamaliel.com a féInstitutogamaliel.com a fé
Institutogamaliel.com a fé
 
Primeros auxilios
Primeros auxiliosPrimeros auxilios
Primeros auxilios
 
Eval 2 jarojas
Eval  2 jarojasEval  2 jarojas
Eval 2 jarojas
 
Institutogamaliel.com iniquidade é transgressão de qual lei
Institutogamaliel.com iniquidade é transgressão de qual leiInstitutogamaliel.com iniquidade é transgressão de qual lei
Institutogamaliel.com iniquidade é transgressão de qual lei
 
Informatica
InformaticaInformatica
Informatica
 
Ind impotada pro
Ind impotada proInd impotada pro
Ind impotada pro
 
16 educação e função dos médiuns
16 educação e função dos médiuns16 educação e função dos médiuns
16 educação e função dos médiuns
 
Modelos y tamanos_de_contenedores
Modelos y tamanos_de_contenedoresModelos y tamanos_de_contenedores
Modelos y tamanos_de_contenedores
 
Prova internet-pssii-2005
Prova internet-pssii-2005Prova internet-pssii-2005
Prova internet-pssii-2005
 
Prova internet-pssi-2008
Prova internet-pssi-2008Prova internet-pssi-2008
Prova internet-pssi-2008
 
Accesos venosos de emergencia
Accesos venosos de emergenciaAccesos venosos de emergencia
Accesos venosos de emergencia
 
61 familia-mudar prá melhor
61 familia-mudar prá melhor61 familia-mudar prá melhor
61 familia-mudar prá melhor
 
Marketing em Mídias Sociais
Marketing em Mídias SociaisMarketing em Mídias Sociais
Marketing em Mídias Sociais
 
Deus é justo e justificador
Deus é justo e justificadorDeus é justo e justificador
Deus é justo e justificador
 
Apostila matrimônio & divórcio
Apostila   matrimônio & divórcioApostila   matrimônio & divórcio
Apostila matrimônio & divórcio
 

Semelhante a Traducao de software livre

Aula de C para Linux
Aula de C para LinuxAula de C para Linux
Aula de C para LinuxChris x-MS
 
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreamsJacqueline Abreu
 
Introdução ao Wordpress
Introdução ao WordpressIntrodução ao Wordpress
Introdução ao WordpressAline Corso
 
Tradução de Aplicativos Livres
Tradução de Aplicativos LivresTradução de Aplicativos Livres
Tradução de Aplicativos LivresÁtila Camurça
 
C a linguagem de programação
C   a linguagem de programaçãoC   a linguagem de programação
C a linguagem de programaçãoAndrei Bastos
 
00 programando em python - introducao
 00   programando em python - introducao 00   programando em python - introducao
00 programando em python - introducaoVictor Marcelino
 
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013Gabriel Rubens
 
A primeira linguagem que todo programador deve aprender
A primeira linguagem que todo programador deve aprenderA primeira linguagem que todo programador deve aprender
A primeira linguagem que todo programador deve aprenderLF Bittencourt
 
Contribuindo para projetos de software livre
Contribuindo para projetos de software livreContribuindo para projetos de software livre
Contribuindo para projetos de software livreLucas Barros
 
FOSS (Free and open-source software) - Por conde começar?
FOSS (Free and open-source software) - Por conde começar?FOSS (Free and open-source software) - Por conde começar?
FOSS (Free and open-source software) - Por conde começar?Rafael Meneses
 
P10 dev studio
P10 dev studioP10 dev studio
P10 dev studioPirata Mao
 
Git e Github: qual a importância dessas ferramentas para o desenvolvedor
Git e Github: qual a importância dessas ferramentas para o desenvolvedorGit e Github: qual a importância dessas ferramentas para o desenvolvedor
Git e Github: qual a importância dessas ferramentas para o desenvolvedorFelipe Pedroso
 
Software Livre e Open Source
Software Livre e Open SourceSoftware Livre e Open Source
Software Livre e Open SourceMarcelo Lira
 
Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Luiz Aldabalde
 
Contribuindo para a comunidade Elixir
Contribuindo para a comunidade ElixirContribuindo para a comunidade Elixir
Contribuindo para a comunidade ElixirKelvin Stinghen
 
Introdução a linguagem java
Introdução a linguagem javaIntrodução a linguagem java
Introdução a linguagem javaRosicleia Frasson
 

Semelhante a Traducao de software livre (20)

Aula de C para Linux
Aula de C para LinuxAula de C para Linux
Aula de C para Linux
 
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
 
Introdução ao Wordpress
Introdução ao WordpressIntrodução ao Wordpress
Introdução ao Wordpress
 
Apresentação final
Apresentação finalApresentação final
Apresentação final
 
Apresentação final
Apresentação finalApresentação final
Apresentação final
 
Tradução de Aplicativos Livres
Tradução de Aplicativos LivresTradução de Aplicativos Livres
Tradução de Aplicativos Livres
 
C a linguagem de programação
C   a linguagem de programaçãoC   a linguagem de programação
C a linguagem de programação
 
00 programando em python - introducao
 00   programando em python - introducao 00   programando em python - introducao
00 programando em python - introducao
 
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013
Profissao-programador-praticas-para-melhoria-continua-unimonte-outubro-2013
 
A primeira linguagem que todo programador deve aprender
A primeira linguagem que todo programador deve aprenderA primeira linguagem que todo programador deve aprender
A primeira linguagem que todo programador deve aprender
 
Contribuindo para projetos de software livre
Contribuindo para projetos de software livreContribuindo para projetos de software livre
Contribuindo para projetos de software livre
 
FOSS (Free and open-source software) - Por conde começar?
FOSS (Free and open-source software) - Por conde começar?FOSS (Free and open-source software) - Por conde começar?
FOSS (Free and open-source software) - Por conde começar?
 
P10 dev studio
P10 dev studioP10 dev studio
P10 dev studio
 
Git e Github: qual a importância dessas ferramentas para o desenvolvedor
Git e Github: qual a importância dessas ferramentas para o desenvolvedorGit e Github: qual a importância dessas ferramentas para o desenvolvedor
Git e Github: qual a importância dessas ferramentas para o desenvolvedor
 
Software Livre e Open Source
Software Livre e Open SourceSoftware Livre e Open Source
Software Livre e Open Source
 
Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011
 
Contribuindo para a comunidade Elixir
Contribuindo para a comunidade ElixirContribuindo para a comunidade Elixir
Contribuindo para a comunidade Elixir
 
Projeto de migração para software livre
Projeto de migração para software livreProjeto de migração para software livre
Projeto de migração para software livre
 
Introdução a linguagem java
Introdução a linguagem javaIntrodução a linguagem java
Introdução a linguagem java
 
Projeto de Software Livre
Projeto de Software LivreProjeto de Software Livre
Projeto de Software Livre
 

Traducao de software livre

  • 2. Tradução de Software Livre  Existem varios papéis além do desenvolvedor  Testador (> conhecimento técnico, não precisa ser programador)  Documentador (> conhecimento técnico, não precisa ser programador)  Tradutor (nenhum conhecimento técnico, apenas inglês e o seu idioma nativo)
  • 3. Quero contribuir traduzindo  Em qual projeto vou trabalhar?  Já tem algum em mente? Ótimo.
  • 4. Se não tiver...  Qual área de trabalho usas? GNOME? KDE? XFCE? Comece por aí  Não gostou (ou usa Windows)? Usa o LibreOffice? Qual é o teu browser? Ótimo :)  Ainda não gostou? Pense naquele programa que foi custoso de achar e te quebrou o maior galho
  • 5. Já sei quem quero ajudar  Ótimo, entre em contato com os responsáveis
  • 6. Entrando em contato  Tentar achar no site do projeto alguma idicação para os tradutores  Se não existir, se inscreva na lista de disussões e fale que quer traduzir  Se não houver lista, ache o e-mail do(s) desenvolvedor(es) e avise-o(s) do interesse e peça instruções  Não tem e-mail do(s) desenvolvedor(es)? Chame a atenção dele  Comentando no blog que ele divulgou o projeto  Telepatia :-)
  • 7. Traduzindo de verdade  Qualquer software livre que se preste usa gettext  (Wikipedia) gettext é uma biblioteca do Projeto GNU que faz a internacionalização de softwares  Para o desenvolvedor não é problema: printf(”Translate me.”); printf(_(”Translate me.”));  Para os tradutores é a maior invenção do mundo
  • 8. O arquivo .po  Ao término do desenvolvimento do software o programador usará o gettext para gerar um arquivo .po que conterá todas as frases que ele usou a função _(). Exemplo do conteúdo de um arquivo .po: #: src/name.c:36 msgid "Translate me." msgstr ””
  • 9. O que fazemos? Traduzimos!  Nosso trabalho como tradutores é traduzir: #: src/name.c:36 msgid "Translate me." msgstr ”Traduza-me.”
  • 10. Regras  Nunca alterar NADA que não comece com msgstr  Sempre mantenha qualquer caractere(s) diferente(s) da string original: msgid "_applyn" msgstr ”_aplicarn”
  • 11. Quanto maior o projeto, mais fácil  Projetos maiores costumam ter FAQs para tradutores, páginas com erros frequêntes e mais pessoas para sanar as dúvidas
  • 12. Automatização  Devo baixar os .po, traduzir e envia-lo para o source do projeto?  Depende, em projetos pequenos talvez, pois não haverá ninguém para validar tuas traduções  Não precisa se meter no código fonte, envie um e-mail para o programador com o .po traduzido que ele fará o resto :-)
  • 13. Projetos maiores, qual a infra?  Existem projetos de automatização interessantes, o melhor deles é o Transifex  O Transifex é um site em que não precisamos baixar nada, só logar, escolher o ”módulo” e traduzir, tudo no browser
  • 16. Apenas os .po  Para ajudar quem não tem o Transifex, existe o Poedit, um editor de arquivos .po
  • 18. Já traduzi e submeti, e agora?  Se o projeto tiver um fluxo estabelecido (via Transifex, lista de discussões, IRC, ou e-mail) sua tradução será revisada por alguém e após ser aprovada, será adicionada ao software  Se não houver fluxo estabelecido, mande a tradução para o programador, ele adicionará ao código imediatamente
  • 19. Minha tradução não passou na revisão, e agora?  Você não será expulso/chingado ou menosprezado por isso  Não se preocupe, é errando que se aprende  Na dúvida olhe como os outros estão traduzindo, se não for o suficiente, pergunte  Nos projetos grandes leia os FAQs, se for um projeto pequeno e tu fores o único tradutor, vá até um projeto grande e peça ajuda
  • 20. E se não usarem o gettext?  Programador pode não conhecer o gettext e usar alguma própria implementação para internacionalização  Calma, as frases sempre devem estar em algum lugar  Procure, se não achar, peça ao programador
  • 21. Pode até ser em XML <?xml version="1.0" encoding="UTF­8"?> <ressourceStrings> <id_avm1file>Invalid AVM1 file!</id_avm1file> <id_booklayout>Book layout</id_booklayout> <id_close>Close</id_close> <id_currentPage>Current page:</id_currentPage> <id_currentZoom>Current zoom:</id_currentZoom> <id_dimensions>Dimensions:</id_dimensions> <id_docInfo>Document Informations</id_docInfo> <id_filenotfound>File not found!</id_filenotfound> <id_firstPage>First page</id_firstPage> <id_fitToPage>Fit to page</id_fitToPage> <id_lastPage>Last page</id_lastPage> <id_monoPageLayout>Monopage layout</id_monoPageLayout> <id_name>Name:</id_name> <id_nextPage>Next page</id_nextPage> <id_on>on</id_on> <id_page>page</id_page> <id_pixels>pixels</id_pixels> <id_prevPage>Previous page</id_prevPage> <id_stackLayout>Double stack layout</id_stackLayout> <id_to>To</id_to> <id_toFullScreen>Full screen</id_toFullScreen> <id_toStandardSize>Standard size</id_toStandardSize> <id_totalPages>Total pages:</id_totalPages> <id_verticalListLayout>Vertical list layout</id_verticalListLayout> <id_zoomMinus>Decrease zoom</id_zoomMinus> <id_zoomPlus>Increase zoom</id_zoomPlus> </ressourceStrings>
  • 22. Fim  Dúvidas?  Contato  Frederico Schardong  frede.sch@gmail.com