[Cascavel-pm] [RFC] perldoc -L <lang>

Adriano Ferreira a.r.ferreira em gmail.com
Terça Setembro 4 11:33:46 PDT 2007


Olá.

Recentemente foi introduzido uma nova opção "-L" no utilitário
"perldoc". Ela funciona assim:

$ perldoc -L it perlintro # perlintro em Italiano
$ perldoc -L fr -f pack # leia sobre pack() em Francês
$ perldoc -L eo -q shell # busque a versão em Esperando dos FAQs
procurando por 'shell'
$ perldoc -L tlh Acme::DonMartin # a documentação de Acme::DonMartin em Klingon

(Obviamente, só funciona se você tiver os PODs correspondentes instalados.)

Estas mudanças foram aplicadas à versão de desenvolmento do Perl
(bleadperl) e publicados no CPAN na release 3.14_01
(http://search.cpan.org/~ferreira/Pod-Perldoc-3.14_01/). O trabalho
original foi feito pelo grupo de Perl Mongers da Itália e um pacote
semelhante foi liberado logo a seguida para um pacote de traduções
para francês (POD2::IT -- http://search.cpan.org/dist/POD2-IT/ -- e
POD2::FR -- http://search.cpan.org/dist/POD2-FR/). Estas distribuições
continham código que o Pod::Perldoc chamava como um plugin se
disponível.

Depois de trabalhar um pouco sobre o código envolvido, tornou-se
evidente que o fato essential da distribuições dos PODs traduzidos é
uma convenção estupidamente simples. Estes PODs vivem no namespace
correspondente POD2::<lang>. É basicamente isto (embora existem alguns
detalhes que devem ser tratados em breve).

Com o reaproveitamento do código original em POD2::IT e algumas
mudanças correspondentes em Pod::Perldoc, é possível distribuir e usar
os PODs traduzidos de uma maneira muito simples. Os passos necessários
são:

    * instalar POD2::Base (http://search.cpan.org/dist/POD2-Base/)
    * instalar Pod::Perldoc 3.14_03
(http://search.cpan.org/~ferreira/Pod-Perldoc-3.14_01/)
    * garantir que seus PODs traduzidos sejam empacotados e instalados
no namespace correto POD2::<lang>, por exemplo, POD2::PT

Feito isto, temos uma simplória internacionalização do perldoc funcionando.

Em breve vou submeter as mudanças do Pod::Perldoc ao bleadperl.
Enquanto isso, estou atento a sugestões, comentários, etc.

Adriano Ferreira


Mais detalhes sobre a lista de discussão Cascavel-pm