Provided by: po4a_0.52-1_all bug

NOME

       Locale::Po4a::Sgml - converte documentos SGML de/para ficheiros PO

DESCRIÇÃO

       O objetivo do projeto po4a (PO para tudo) é facilitar traduções (e mais interessante, a manutenção das
       traduções) usando ferramentas gettext em áreas onde eles não eram esperados como documentação.

       Locale::Po4a::Sgml é um módulo para ajudar a tradução da documentação no formato SGML em outras idiomas
       [humanos].

       This module uses onsgmls(1) to parse the SGML files. Make sure it is installed.  Also make sure that the
       DTD of the SGML files are installed in the system.

OPÇÕES ACEITES POR ESTE MÓDULO

       debug
           Lista  separada  por espaço de palavras-chave que indicam que parte você deseja. Valores de depuração
           possíveis são: tag, generic, entities e refs.

       verbose
           Dê mais informações sobre o que está acontecendo.

       translate
           Lista separada por espaços de etiquetas extra (ao lado  dos  DTD  fornecidos),  cujo  conteúdo  devem
           formar um identificador de mensagem extra.

       section
           Lista  separada  por  espaços  de  etiquetas  extra  (ao  lado  dos  DTD fornecidos), contendo outras
           etiquetas, sendo algumas de categoria translate.

       indent
           Lista separada por espaço de etiquetas que aumentam o nível de recuo.

       verbatim
           A apresentação dentro dessas marcas não deve ser alterada. Este número não vai ficar envolvido e, não
           há espaço de recuo extra ou nova linha será adicionada para finalidade estética.

       empty
           Etiquetas não precisam ser fechados

       ignore
           Etiquetas ignoradas e consideradas como simples dados de carateres por po4a. Isso quer dizer que elas
           podem ser parte de um identificador de mensagem. Por exemplo,  <b>  é  um  bom  candidato  para  esta
           categoria  desde  que  o coloque na secção de traduzir criaria identificadores de mensagens não sendo
           frases inteiras, o que é mau.

       attributes
           Uma lista separada por espaços de atributos que precisam ser traduzidos.  Você  pode  especificar  os
           atributos  pelos seus nomes (por exemplo, "lang"), mas você pode também prefixá-lo com uma hierarquia
           de etiquetas, para especificar que este atributo  será  apenas  traduzido  quando  está  na  etiqueta
           especificada,  por  exemplo:  <bbb><aaa>lang  especifica  que  o atributo 'lang' só será traduzido se
           estiver numa etiqueta <aaa>, que é uma etiqueta <bbb> Os nomes de etiqueta são  realmente  expressões
           regulares,  então  você  também  pode  escrever  coisas  como  <aaa|bbbb>lang para apenas traduzir os
           atributos 'lang' que estão num <aaa> ou uma etiqueta <bbb>.

       qualify
           Uma lista separada por espaços de atributos para que a tradução deve ser  qualificada  pelo  nome  do
           atributo.  Note  que  esta  definição  adiciona  automaticamente  o atributo dado também na lista dos
           'atributos'.

       force
           Proceed even if the DTD is unknown or if onsgmls finds errors in the input file.

       include-all
           Por padrão, o 'msgids' contém apenas uma entidade (como '&version;') são ignorados  para  o  conforto
           tradutor.  Ativando  esta  opção  impede que ista otimização. Pode ser útil se o documento contém uma
           construção como "<title>&Aacute;</title>" , mesmo que eu duvide que tais coisas sempre acontecem ...

       ignore-inclusion
           Space separated list of entities that won't be inlined.  Use this option with caution: it  may  cause
           onsgmls (used internally) to add tags and render the output document invalid.

STATUS DESTE MÓDULO

       O  resultado  é  perfeito.  Ou  seja, os documentos gerados são exatamente os mesmos. Mas ainda há alguns
       problemas:

       • The error output of onsgmls is redirected to /dev/null by default, which is clearly bad. I  don't  know
         how to avoid that.

         The  problem  is  that I have to "protect" the conditional inclusions (i.e. the "<! [ %foo [" and "]]>"
         stuff) from onsgmls. Otherwise onsgmls eats them, and I don't know how to restore  them  in  the  final
         document. To prevent that, I rewrite them to "{PO4A-beg-foo}" and "{PO4A-end}".

         The problem with this is that the "{PO4A-end}" and such I add are invalid in the document (not in a <p>
         tag or so).

         If  you  want  to  view  the  onsgmls  output,  just  add  the  following to your command line (or po4a
         configuration line):

           -o debug=onsgmls

       • Ele funciona apenas com o DebianDoc e DocBook DTD. Adicionar suporte para um novo DTD  deve  ser  muito
         fácil. O mecanismo é o mesmo para cada DTD, só tem que dar uma lista das etiquetas existentes e algumas
         das suascaracterísticas.

         Concordo.  apenas  necessita  mais documentação, no entanto pode ser considerado como beta e eu detesto
         conteúdos de documentos que podem ainda ser sujeitos a alterações.

       • Aviso, o suporte para DTDs é bastante  experimental.  Eu  não  li  nenhum  manual  de  referência  para
         encontrar  a  definição  de  cada  etiqueta.  Adicionei  a definição de etiqueta para o módulo, até que
         funciona para alguns documentos que eu encontrei na Internet. Se o documento usar mais etiqueta do  que
         a minha, não vai funcionar. Mas como eu disse acima, reparar isto deve ser muito fácil.

         Eu  testei  DocBook  contra o SAG (Guia do Administrador do Sistema), mas também este documento é muito
         grande, e deve usar mais especificidades do DocBook.

         Para DebianDoc, eu testei alguns dos manuais da DDP, mas não todos ainda.

       • Em caso de inclusão de ficheiros, a sequência de referência de mensagens  em  ficheiros  PO  (ou  seja,
         linhas como "#: en/titletoc. sgml:9460") vai estar errada.

         This  is because I preprocess the file to protect the conditional inclusion (i.e. the "<! [ %foo [" and
         "]]>" stuff) and some entities (like &version;) from onsgmls  because  I  want  them  verbatim  to  the
         generated  document.  For  that,  I make a temp copy of the input file and do all the changes I want to
         this before passing it to onsgmls for parsing.

         Assim ele funciona, eu substituí as entidades que pedem  a  inclusão  de  ficheiros  pelo  conteúdo  do
         ficheiro  de  dados (para que eu possa proteger também o que precisa de estar num sub-ficheiro também).
         Mas nada se fez até agora para corrigir as referências (ou seja o nome do ficheiro e o número da linha)
         mais tarde. Eu não tenho certeza qual é a melhor coisa a fazer.

AUTORES

       This module is an adapted version of sgmlspl (SGML postprocessor for the ONSGMLS parser) which was:

       Direitos de Autor (c) 1995 por David Megginson <dmeggins@aix1.uottawa.ca>

       A adaptação para po4a foi feito por:

        Denis Barbier <barbier@linuxfr.org>
        Martin Quinson (mquinson#debian.org)
       =head1 DIREITOS DE AUTOR E LICENÇA

        Direitos de Autor (c) 1995 por David Megginson <dmeggins@aix1.uottawa.ca>
        Direitos de Autor 2002, 2003, 2004, 2005 por SPI, inc.

       Este programa é software livre, você pode redistribuí-lo e/ou modificá-lo sob os termos da GPL  (consulte
       o ficheiro CÓPIA).

Ferramentas Po4a                                   2017-08-26                            Locale::Po4a::Sgml(3pm)