
        *****************************************************
        *           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

po4a-gettextize - Convierte un fichero original (y su traducción) a un
fichero PO

=head1 SINOPSIS

B<po4a-gettextize> B<-f> I<fmt> B<-m> I<master.doc> B<-l> I<XX.doc> B<-p>
I<XX.po>

(I<XX.po> es la salida, todos los otros son entrada)

=head1 DESCRIPCIÓN

po4a (PO para cualquier cosa) facilita el mantenimiento de la traducción de
documentación utilizando las herramientas clásicas de gettext. La
característica principal de po4a es que desacopla la traducción del
contenido de la estructura del documento. Consulte la página L<po4a(7)> para
obtener una breve introducción a este proyecto.

El script B<po4a-gettextize> le ayuda a convertir sus traducciones ya
existentes a un flujo de trabajo basado en po4a. Esto solo debe hacerse una
vez para salvar una traducción existente al convertir a po4a, no de forma
regular tras la conversión de su proyecto. Este tedioso proceso se explica
en detalle en la sección 'Convertir una traducción manual a po4a' más abajo.

Debe proporcionar tanto un archivo maestro (por ejemplo, la fuente en
inglés) como un fichero traducido existente (por ejemplo, un intento de
traducción anterior sin po4a). Si proporciona más de un archivo maestro o de
traducción, se usarán en secuencia, pero puede ser más fácil gettextizar
cada página o capítulo por separado y luego usar B<msgmerge> para fusionar
todos los archivos PO producidos. Como desee.

Si el documento original contiene caracteres no ASCII, el fichero PO
generado estará en UTF-8. Si el documento maestro está completamente en
ASCII, el PO generado utilizará la codificación del documento traducido de
entrada.

=head1 OPCIONES

=over 4

=item B<-f>, B<--format>

El formato de la documentación que desea tratar. Use la opción
B<--help-format> para ver la lista de los formatos disponibles.

=item B<-m>, B<--master>

El fichero que contiene el documento original o principal a traducir. Puede
usar esta opción varias veces si desea gettextizar varios documentos.

=item B<-M>, B<--master-charset>

El juego de caracteres del fichero que contiene el documento a traducir.

=item B<-l>, B<--localized>

El fichero que contiene el documento localizado (traducido). Si introdujo
varios documentos originales, puede que desee introducir varios documentos
localizados usando esta opción más de una vez.

=item B<-L>, B<--localized-charset>

El juego de caracteres del fichero que contiene la versión localizada del
documento.

=item B<-p>, B<--po>

El fichero dónde se debería escribir el catálogo de mensajes. Si no se
proporciona, el catálogo de mensajes se escribirá por la salida estándar.

=item B<-o>, B<--option>

Opción(es) adicionales a introducir a la extensión del formato. Consulte la
documentación de cada extensión para más información acerca de las opciones
aceptadas y su significado. Por ejemplo, puede pasar '-o tablecells' al
intérprete AsciiDoc, mientras que el intérprete de texto aceptaría '-o
tabs=split'.

=item B<-h>, B<--help>

Muestra un mensaje corto de ayuda.

=item B<--help-format>

Listado de formatos de documentación reconocidos por po4a.

=item B<-k> B<--keep-temps>

Conserve los archivos POT localizados originales y temporales generados
antes de la fusión. Esto puede ser útil para comprender por qué estos
archivos no están sincronizados, lo que genera problemas de obtención de
texto.

=item B<-V>, B<--version>

Muestra la versión del script y cierra.

=item B<-v>, B<--verbose>

Aumenta la cantidad de mensajes informativos del programa.

=item B<-d>, B<--debug>

Devuelve por la salida información de depuración de fallos.

=item B<--msgid-bugs-address> I<correo-e@direccion>

Define el destinatario de los informes de fallo en los msgid. Por omisión,
los ficheros POT creados no tienen el campo «Report-Msgid-Bugs-To».

=item B<--copyright-holder> I<cadena>

Define el titula de los derechos de reproducción en la cabecera del POT. El
valor predefinido es «Free Software Foundation, Inc.»

=item B<--package-name> I<string>

Define el nombre del paquete en la cabecera del POT. El valor por omisión es
«PACKAGE».

=item B<--package-version> I<string>

Define la versión del paquete en la cabecera del POT. El valor por omisión
es «VERSION».

=back

=head2 Convertir una traducción manual a po4a

B<po4a-gettextize> sincronizará los archivos maestro y localizado para
extraer su contenido a un archivo PO. El contenido del archivo maestro está
en B<msgid>, mientras que el contenido del archivo localizado está en
B<msgstr>. Este proceso es algo frágil: la enésima cadena del archivo
traducido se toma como la traducción de la enésima cadena del original.

La gettextización funciona mejor si consigue recuperar la versión exacta del
documento original que se utilizó para la traducción. Aun así, si el
traductor original modificó la estructura de los archivos, es posible que
tenga que manipular tanto el archivo maestro como el localizado para alinear
su estructura, por lo que se recomienda trabajar con copias de los archivos.

Internamente, cada intérprete po4a comunica el tipo sintáctico de cada
cadena extraída. Esto es como la desincronización es detectada durante la
gettextización. En el ejemplo mostrado abajo, es muy poco probable que la
cuarta cadena de la traducción (de tipo 'capítulo') sea la traducción de la
cuarta cadena del original (de tipo 'párrafo'). Es más probable que un
parágrafo nuevo fuera añadido al original, o que dos parágrafos originales
fueran combinados en la traducción.

    Original         Translation

  chapter            chapter
    paragraph          paragraph
    paragraph          paragraph
    paragraph        chapter
  chapter              paragraph
    paragraph          paragraph

B<po4a-gettextize> diagnosticará detalladamente cualquier desincronización
de estructura. Cuando esto ocurre, debería editar manualmente los archivos
para añadir párrafos simulados o retirar algún contenido aquí y allá hasta
que la estructura de ambos documentos coincidan. Se dan algunos trucos en la
siguiente sección para salvar la mayor parte posible de la traducción al
hacerlo.

Si tiene la fortuna de tener una coincidencia perfecta entre las estructuras
de los archivos sin hacer nada, crear un fichero PO correcto es una cuestión
de segundos. Si no, pronto entenderá por qué este proceso tiene un nombre
tan feo :) Aun así, la gettextización sigue siendo más rápida que traducirlo
todo de nuevo. Yo gettexticé la traducción al francés de toda la
documentación Perl en un día a pesar de los l<muchos> problemas de
sincronización. Dada la cantidad de texto (2MB de texto original), reiniciar
la traducción sin salvar primero las traducciones antiguas hubiera requerido
varios meses de trabajo. Además, este trabajo pesado es el precio que hay
que pagar para obtener el confort de po4a. Una vez hecha la conversión, la
sincronización entre documentos maestros y las traducciones siempre será
completamente automática.

Tras una gettextización correcta, los documentos producidos deben
comprobarse manualmente para detectar disparidades y errores silenciosos,
como se explica a continuación.

=head3 Consejos y trucos para el proceso de gettextización

La gettextización se detiene en cuanto se detecta una
desincronización. Cuando esto ocurre, es necesario editar los archivos tanto
como sea necesario para realinear sus estructuras. B<po4a-gettextize> es
bastante verboso cuando las cosas van mal. Informa de las cadenas que no
coinciden, sus posiciones en el texto, y el tipo de cada una de
ellas. Además, el archivo PO generado hasta el momento se vuelca como
F<gettextization.failed.po> para su posterior inspección.

Aquí hay algunos trucos para ayudarle en este proceso tedioso y asegurarse
de que salva lo máximo posible de la traducción anterior:

=over

=item

Eliminar todo el contenido extra de las traducciones, como la sección que da
créditos a los traductores. Deberán añadirse por separado a B<po4a> como
apéndices (véase L<po4a(7)>).

=item

Si necesita editar los ficheros para alinear sus estructuras, es preferible
editar la traducción si es posible. Ciertamente, si los cambios al original
son demasiado intrusivos, las versiones antigua y nueva no serán
coincidentes durante la primera ejecución de po4a después de la
gettextización (vea más abajo). Cualquier traducción que no coincida será
descartada de todas formas. Dicho esto, es recomendable editar el documento
original si es demasiado difícil conseguir que la gettextización proceda de
otra forma, incluso si esto significa que un párrafo de la traducción se
descarte. Lo importante es obtener un fichero PO con el que comenzar.

=item

No dude en eliminar cualquier contenido original que no existiese dentro de
la versión traducida. Este contenido será reintroducido automáticamente
después, cuando sincronice el fichero PO con el documento.

=item

Probablemente debería informar al autor original de cualquier cambio
estructural dentro de la traducción que parezca justificado. Si hay
problemas con el documento original debería comunicarlo al
autor. Arreglarlas en su traducción solo las soluciona a una parte de la
comunidad. Y además, es imposible hacerlo así cuando se usa po4a ;) Pero
probablemente quieras esperar al final de la conversión a B<po4a> antes de
cambiar los archivos originales.

=item

A veces el contenido del párrafo encaja, pero no sus tipos. Arreglar eso
depende más bien del formato. En POD y man, a menudo es culpa de que una de
las líneas empieza con un espacio y la otra no.  En estos formatos, este
párrafo no se podría justificar y su tipo cambiaría. Simplemente elimine el
espacio y ya está. También puede tratarse de un error tipográfico en el
nombre de la etiqueta en XML.

De manera parecida, dos párrafos se podrían fusionar en un POD cuando la
línea de separación contiene algunos espacios, o cuando no hay una línea de
separación entre la línea B<=item> y el contenido del elemento («item»).

=item

A veces, el mensaje de desincronización parece raro porque la traducción
está emparejada con el párrafo original equivocado. Esto indica que hay un
problema no detectado anteriormente en el proceso. Busque el punto de
desincronización actual inspeccionando el archivo
F<gettextization.failed.po>, y repare el problema donde realmente está.

=item

Otros problemas pueden provenir de cadenas duplicadas en el original o en la
traducción. Las cadenas duplicadas se fusionan en archivos PO, con dos
referencias. Esto constituye una dificultad para el algoritmo de
gettextización, que es un simple emparejamiento uno a uno entre las
B<msgid>s de los archivos maestro y localizado. Sin embargo, se cree que las
versiones recientes de po4a tratan adecuadamente las cadenas duplicadas, por
lo que debería informar de cualquier problema restante que pueda encontrar.

=back

=head2 Revisión de los archivos producidos por B<po4a-gettextize>

Cualquier archivo producido por B<po4a-gettextize> debe ser revisado
manualmente, incluso cuando el script termina con éxito. Debería hojear el
fichero PO, asegurándose de que el B<msgid> y el B<msgstr> coinciden
realmente. No es necesario asegurarse todavía de que la traducción es
perfectamente correcta, ya que todas las entradas se marcan como fuzzies de
todas formas. Solo necesita comprobar los problemas obvios de concordancia,
porque las traducciones mal emparejadas serán desechadas en pasos
posteriores, y usted quiere salvarlas.

Afortunadamente, este paso no requiere dominar las lenguas de destino, ya
que solo se trata de reconocer elementos similares en cada B<msgid> y su
correspondiente B<msgstr>. Como hablante de francés, inglés y algo de
alemán, puedo hacer esto al menos para todas las lenguas europeas, aunque no
sepa decir ni una palabra en la mayoría de ellas. A veces consigo detectar
problemas de concordancia en lenguas no latinas fijándome en la longitud de
las cadenas, las estructuras de las frases (¿coincide la cantidad de signos
de interrogación?) y otras pistas, pero prefiero que sea otra persona quien
revise esas lenguas.

Si detecta un desajuste, edite los archivos original y traducido como si
B<po4a-gettextize> informara de un error, e inténtelo de nuevo. Una vez que
tenga un archivo PO decente para su traducción anterior, haga una copia de
seguridad hasta que consiga que po4a funcione correctamente.

=head2 Ejecutar B<po4a> por primera vez

La forma más fácil de configurar po4a es escribir un fichero de
configuración B<po4a.conf>, y usar el programa integrado B<po4a>
(B<po4a-updatepo> y B<po4a-translate> están obsoletos). Consulte la sección
"ARCHIVO DE CONFIGURACIÓN" de la documentación de L<po4a(1)> para obtener
más información.

Cuando B<po4a> se ejecuta por primera vez, se utilizará la versión actual de
los documentos maestros para actualizar los archivos PO que contienen las
traducciones antiguas que rescató mediante la gettextización. Esto puede
llevar bastante tiempo, porque muchos de los B<msgid>s de la gettextización
no coinciden exactamente con los elementos del fichero POT construido a
partir de los archivos maestros recientes. Esto obliga a gettext a buscar el
más cercano utilizando un costoso algoritmo de proximidad de cadenas. Por
ejemplo, la primera ejecución sobre la traducción al francés de la
documentación de Perl (fichero PO de 5,5 MB) tardó unas 48 horas (sí, dos
días) mientras que las siguientes sólo tardan segundos.

=head2 Pasar sus traducciones a producción

Tras esta primera ejecución, los archivos PO están listos para ser revisados
por los traductores. Todas las entradas fueron marcadas como fuzzies en el
archivo PO por B<po4a-gettextization>, forzando su cuidadosa revisión antes
de su uso. Los traductores deben tomar cada entrada para verificar que la
traducción rescatada coincide realmente con el texto original actual,
actualizar la traducción según sea necesario y eliminar los marcadores
fuzzy.

Una vez que se hayan eliminado suficientes marcadores fuzzy, B<po4a>
empezará a generar los archivos de traducción en disco, y ya estará listo
para pasar su flujo de trabajo de traducción a producción. Algunos proyectos
encuentran útil usar Weblate para coordinar a traductores y mantenedores,
pero eso está fuera del alcance de B<po4a>.

=head1 VÉASE TAMBIÉN

L<po4a(1)>, L<po4a-normalize(1)>, L<po4a-translate(1)>, L<po4a-updatepo(1)>,
L<po4a(7)>.

=head1 AUTORES

 Denis Barbier <barbier@linuxfr.org>
 Nicolas François <nicolas.francois@centraliens.net>
 Martin Quinson (mquinson#debian.org)


=head1 TRADUCCION

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

=head1 DERECHO DE COPIA Y LICENCIA

Copyright 2002-2023 por 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).
