Locale::Po4a::Sgml(3pm) Ferramentas do Po4a Locale::Po4a::Sgml(3pm)

Locale::Po4a::Sgml - converte documentações SGML de/para arquivos PO

O objetivo do projeto po4a (PO for anything, ou PO para qualquer coisa) é facilitar traduções (e o mais interessante, a manutenção das traduções) usando as ferramentas do gettext em áreas em que não se esperava, como documentação.

Locale::Po4a::Sgml é um módulo para ajudar a tradução de documentação no formato SGML para outros idiomas.

Esse módulo usa onsgmls(1) para analisar os arquivos SGML. Certifique-se de que ele está instalado. Certifique-se, também, de que o DTD dos arquivos SGML estão instalados no sistema.

Lista separada por espaço das palavras-chave indicando qual parte você gostaria de depurar. Valores possível são: tag, generic, entities e refs.
Fornece mais informações sobre o que está acontecendo.
Lista separada por espaço das marcações extras (além daquelas fornecidas por DTD) cujo conteúdo deveria formar um msgid extra.
Lista separada por espaço das marcações extras (além daquelas fornecidas por DTD) contendo outras marcações, algumas delas sendo da categoria translate.
Lista separada por espaço das marcações que incrementam o nível de recuo.
O layout dentro daquelas marcações que não deveriam ser alteradas. O parágrafo não será dimensionado e nenhuma nova linha ou espaço de recuo extra serão adicionados por motivos cosméticos.
Marcações que não precisam ser fechadas.
Marcações ignoradas e consideradas como dados de caracteres planos pelo po4a. Isso é o mesmo que dizer que elas podem ser parte de um msgid. Por exemplo, <b> é um ótimo candidato para esta categoria, considerando que colocar ela em uma seção de tradução resultaria na criação de msgids não sendo sentenças completas, o que é ruim.
Uma lista separada por espaço de atributos que precisam ser traduzidos. Você pode especificar os atributos por seus nomes (por exemplo, "lang"), mas você também pode prefixá-la com uma hierarquia de marcações, para especificar que este atributo vai só será traduzido quando estiver na marcação especificada. Por exemplo: <bbb><aaa>lang especifica que o atributo lang só será traduzido se ele estiver em uma marcação <aaa>, que está em uma marcação <bbb>. Os nomes de marcação são, na verdade, expressões regulares, de forma que você também possa escrever coisas como <aaa|bbbb>lang para traduzir apenas atributos lang que estão em um <aaa> ou uma marcação <bbb>.
Uma lista separada por espaço de atributos para os quais a tradução deve ser qualificada pelo nome. Note que essa configuração adiciona automaticamente o atributo fornecido à lista de "atributes" também.
Continua ainda na eventualidade do DTD ser desconhecido ou se onsgmls encontrar erros no arquivo de entrada.
Por padrão, msgids que contenham apenas uma entidade (como "&version;") são ignorados para o conforto do tradutor. Ao ativar essa opção, está se prevenindo esta otimização. Ela pode ser útil se a documentação contém uma construção como "<title>&Aacute;</title>", mesmo eu duvidando que esse tipo de coisa venha a acontecer...
Lista separada por espaço de entidades que não serão acrescentadas embutidas. Use esta opção com cuidado: ela pode levar o onsgmls (usado internamente) a adicionar marcações e tornar inválido o documento resultante.

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

Esse módulo é uma versão adaptado do sgmlspl (pós-processador SGML para o analisador ONSGMLS) que era:

 Copyright © 1995 David Megginson <dmeggins@aix1.uottawa.ca>

A adaptação para o po4a foi feita para:

 Denis Barbier <barbier@linuxfr.org>
 Martin Quinson (mquinson#debian.org)

 Copyright © 1995 David Megginson <dmeggins@aix1.uottawa.ca>.
 Copyright © 2002-2005 SPI, Inc.

Esse programa é um software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da GPL (veja o arquivo COPYING).

2023-01-03 Ferramentas do Po4a