
        *****************************************************
        *           GENERATED FILE, DO NOT EDIT             *
        * THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
        *****************************************************

This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.

In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.

=encoding UTF-8

=head1 NOMBRE

Locale::Po4a::Sgml - Convierte documentos SGML desde/a ficheros PO

=head1 DESCRIPCIÓN

El objetivo del proyecto po4a («PO for anything», PO para todo) es facilitar
la traducción (y más interesante, el mantenimiento de las traducciones)
usando las herramientas de gettext en ámbitos dónde no previstos, como la
documentación.

Locale::Po4a::Sgml es un módulo que asiste en la traducción de documentación
en formato SGML a otros lenguajes (humanos).

Este módulo usa B<onsgmls>(1) para analizar los ficheros SGML. Asegúrese de
que está instalado. Asegúrese también de que el DTD de los ficheros SGML
están instalados en el sistema.

=head1 OPCIONES ACEPTADAS POR ESTE MODULO

=over 4

=item B<debug>

Lista separada por espacios de palabras clave que indican qué categoría de
mensajes de depuración adicionales deben mostrarse. Los valores posibles
son: C<entidades>, C<genérico>, C<onsgml>, C<refs> y C<etiqueta>.

=item B<verbose>

Muestra más información sobre qué está pasando.

=item B<translate>

Lista separada por espacios de etiquetas adicionales (además de las
proporcionadas por el DTD) cuyo contenido debe formar un msgid adicional, es
decir, que debe traducirse.

=item B<section>

Lista separada por espacios de etiquetas adicionales (además de las
proporcionadas por el DTD) que contienen otras etiquetas, algunas de ellas
de la categoría B<translate>.

=item B<indent>

Lista separada por espacios de etiquetas que aumentan el nivel de
sangría. Esto afectará a la sangría del documento resultante.

=item B<verbatim>

La organización del contenido de estas etiquetas no se debe cambiar. El
párrafo no se justificará ni se añadirán espacios de sangrado ni saltos de
línea por motivos estéticos.

=item B<empty>

Etiquetas que no necesitan cierre.

=item B<ignore>

Etiquetas ignoradas y consideradas como datos char planos por po4a. Es
decir, pueden formar parte de un msgid. Por ejemplo, E<lt>bE<gt> es un buen
candidato para esta categoría ya que ponerlo en la sección B<translate>
crearía un msgids solo con su contenido, (y normalmente no es una frase
entera), lo cual es malo.

=item B<attributes>

Una lista separada por espacios de los atributos que deben traducirse. Puede
especificar los atributos por su nombre (por ejemplo, C<lang>), pero también
puede anteponerle una jerarquía de etiquetas, para especificar que este
atributo sólo se traducirá cuando esté dentro de la etiqueta
especificada. Por ejemplo: C<< <bbb><aaa>lang >> especifica que el atributo
lang sólo se traducirá si está en una etiqueta C<< <aaa> >>, que está en una
etiqueta C<< <bbb> >>.  Los nombres de las etiquetas son en realidad
expresiones regulares, así que también puedes escribir cosas como C<<
<aaa|bbb>lang >> para traducir sólo atributos C<lang> que estén en una
etiqueta C<< <aaa> >> o en una etiqueta C<<< <bbb> >>.

=item B<qualify>

Una lista separada por espacios de atributos cuya traducción debe
calificarse por el nombre del atributo, es decir, el texto extraído para la
traducción incluirá tanto el nombre del atributo como su valor. Por ejemplo,
para una etiqueta como C<< <aaa lang_en="foo"> >> se presentará a los
traductores la cadena C<lang_en="foo">. Tenga en cuenta que esto también
añade automáticamente el atributo dado a la lista B<attributes>.

=item B<force>

Proceder incluso si el DTD es desconocido o si B<onsgmls> encuentra errores
en el archivo de entrada.

=item B<include-all>

Por defecto, los msgids que contienen una sola entidad (como C<&version;>)
se omiten para comodidad de los traductores. Activando esta opción se evita
esta optimización. Puede ser útil si el documento contiene una construcción
como C<< <title>&Aacute;</title> >>, aunque dudo que tales cosas ocurran
nunca...

=item B<ignore-inclusion>

Lista separada por espacios de entidades que no se alinearán.  Utilice esta
opción con precaución: puede provocar que B<onsgmls> (utilizado
internamente) añada etiquetas y haga que el documento de salida no sea
válido.

=back

=head1 ESTADO DE ESTE MODULO

El resultado es perfecto. Es decir, los documentos generados son exactamente
iguales a los originales. Pero sigue habiendo algunos problemas:

=over 2

=item *

La salida de error de B<onsgmls> es redirigida a /dev/null por defecto, lo
cual es claramente malo. No sé cómo evitarlo.

El problema es que tengo que "proteger" las inclusiones condicionales (es
decir, el C<E<lt>! [ %foo [> y C<]]E<gt>> cosas) de B<onsgmls>. Si no,
B<onsgmls> se las come, y no sé cómo restaurarlas en el documento
final. Para evitarlo, los reescribo en C<{PO4A-beg-foo}> y C<{PO4A-end}>.

El problema con esto es que C<{PO4A-end}> y otros que añado no son válidos
en el documento (pero no en una etiqueta E<lt>pE<gt> o similar).

Si desea ver la salida B<onsgmls>, sólo tiene que añadir lo siguiente a su
línea de órdenes (o línea de configuración de po4a):

  -o debug=onsgmls

=item *

Esto sólo funciona con DebianDoc y DocBook DTD. Añadir compatibilidad para
un nuevo DTD debería ser muy fácil. El mecanismo es común para todos los
DTD, sólo tiene que dar una lista de las etiquetas existentes y algunas de
sus características.

Estoy de acuerdo, esto necesita un poco más de documentación, pero aún se
considera beta, y odio documentar cosas que probablemente cambiarán.

=item *

Advertencia: la compatibilidad con DTD es aún experimental. No leí ningún
manual de referencia para mirar la definición de cada etiqueta. Fui
añadiendo definiciones de etiquetas al módulo hasta que funcionaba para
varios documentos que encontré en la red. Si su documento utiliza más
etiquetas que el mío, no funcionará. Pero tal y como he dicho, arreglar esto
debe ser muy fácil.

Sólo probé DocBook con SAG (System Administrator Guide, Guia del
administrador de sistemas), pero este documento es muy grande, y debe usar
la mayoría de las características específicas de DocBook.

Para DebianDoc, he probado algunos de los manuales de DDP, pero no todos
aún.

=item *

En el caso de inclusión de ficheros, la cadena de referencia del mensaje del
fichero PO (p.e., líneas como C<#: en/titletoc.sgml:9460>) serán
incorrectas.

Esto se debe a que preprocesar el archivo para proteger la inclusión
condicional (es decir, la C<E<lt>! [ %foo [> y C<]]E<gt>> cosas) y algunas
entidades (como C<&versión;>) de B<onsgmls> porque quiero que verbatim al
documento generado. Para ello, hago una copia temporal del archivo de
entrada y hago todos los cambios que quiero a esto antes de pasarlo a
B<onsgmls> para el análisis sintáctico.

Para que esto funcione, reemplazo las entidades que incluyen un fichero con
el contenido del fichero dado (de forma que puedo proteger lo que convenga
del subfichero también). Pero por ahora no se hace nada para corregir las
referencias después (p. ej., nombre de fichero y número de línea). No estoy
seguro de cuál es la mejor solución.

=back

=head1 AUTORES

Este módulo es una versión adaptada de sgmlspl (postprocesador SGML para los
analizadores SGMLS y ONSGMLS) que hizo:

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

La adaptación a po4a la realizó:

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


=head1 TRADUCCION

 Jordi Vilalta <jvprat@gmail.com>
 Omar Campagne <ocampagne@gmail.com>

=head1 DERECHO DE COPIA Y LICENCIA

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

Este programa es software libre; puede redistribuirlo y/o modificarlo bajo
los términos de la GPL v2.0 o posterior (consulte el archivo COPYING).
