
        *****************************************************
        *           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 - Actualiza los ficheros PO y los documentos traducidos a la vez

=head1 SINOPSIS

B<po4a> [I<opciones>] I<fichero_de_configuración>

=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.

Al ejecutarse, B<po4a> analiza todos los archivos de documentación
especificados en su fichero de configuración. Actualiza los archivos PO (que
contienen la traducción) para reflejar cualquier cambio en la documentación,
y produce los documentos traducidos inyectando la traducción del contenido
(que se encuentra en los archivos PO) en la estructura del documento maestro
original.

Inicialmente, los archivos PO solo contienen las cadenas a traducir de la
documentación original. Este formato de archivo permite a los traductores
proporcionar manualmente una traducción para cada párrafo extraído por
B<po4a>. Si la documentación se modifica posteriormente a la traducción,
B<po4a> marca las traducciones correspondientes como "fuzzy" en el archivo
PO para solicitar una revisión manual por parte de los traductores. Los
traductores también pueden proporcionar un "anexo"; contenido extra que por
ejemplo puede informar de quién realizó la traducción y cómo reportar
fallos.

 master documents ---+---->-------->---------+
  (doc authoring)    |                       |
                     V   (po4a executions)   >-----+--> translated
                     |                       |     |     documents
 existing PO files -->--> updated PO files >-+     |
      ^                            |               |
      |                            V               |
      +----------<---------<-------+               ^
       (manual translation process)                |
                                                   |
 addendum -->--------------------------------------+

El flujo de trabajo de B<po4a> es asíncrono, como corresponde a los
proyectos de código abierto. Los redactores de la documentación crean los
documentos maestros a su propio ritmo. Los traductores revisan y actualizan
las traducciones en los archivos PO. Los mantenedores vuelven a ejecutar
B<po4a> cuando es necesario, para reflejar cualquier cambio en la
documentación original en los archivos PO, y para producir traducciones
actualizadas de la documentación, inyectando la última traducción en la
última estructura del documento.

Por defecto, un documento traducido se produce cuando al menos el 80% de su
contenido está traducido. El texto no traducido se mantiene en el idioma
original.  De este modo, la documentación producida mezcla idiomas si la
traducción no es completa. Puede modificar el umbral del 80% con la opción
I<--keep> que se describe abajo. Tenga en cuenta, sin embargo, que descartar
traducciones en cuanto no están al 100% puede ser desalentador para los
traductores, cuyo trabajo casi nunca se mostrará a los usuarios, mientras
que mostrar "traducciones" demasiado incompletas puede ser problemático para
los usuarios finales.

Almacenar los archivos de documentación traducidos en el sistema de control
de versiones es probablemente una mala idea, ya que se generan
automáticamente. Los archivos valiosos son los archivos PO, que contienen el
duro trabajo de los compañeros traductores. Además, a algunas personas les
resulta más fácil interactuar con los traductores a través de una plataforma
en línea como S<weblate>, pero naturalmente esto es totalmente opcional.

=head2 Tutorial de iniciación rápida

Supongamos que usted mantiene un programa llamado B<foo> que tiene una
página de manual F<man/foo.1> escrita en inglés (el idioma puente en la
mayoría de los proyectos de código abierto, pero B<po4a> puede usarse desde
o hacia cualquier idioma). Hace algún tiempo, alguien proporcionó una
traducción al alemán llamada F<man/foo.de.1> y desapareció. Esto es un
problema porque usted acaba de recibir un informe de error diciendo que su
documentación contiene una información gravemente errónea que debe ser
corregida en todos los idiomas, pero usted no habla alemán, así que sólo
puede modificar el original, no la traducción. Ahora, otro colaborador
quiere aportar una traducción al japonés, un idioma que usted tampoco
domina.

Es hora de convertir su documentación a B<po4a> para solucionar sus
pesadillas de mantenimiento de la documentación. Quiere actualizar la
documentación cuando sea necesario, quiere facilitar el trabajo de sus
compañeros traductores y quiere asegurarse de que sus usuarios nunca vean
documentación obsoleta y, por tanto, errónea.

La conversión incluye dos pasos: configurar la infraestructura po4a, y
convertir la traducción anterior al alemán para salvar el trabajo
previo. Esta última parte se hace usando S<po4a-gettextize>, como
sigue. Como se detalla en la documentación de L<po4a-gettextize(1)>, este
proceso raramente es completamente automático, pero una vez hecho, el
archivo B<de.po> que contiene la traducción al alemán puede integrarse en su
flujo de trabajo con po4a.

  po4a-gettextize --format man --master foo.1 --localized foo.de.1 --po de.po

Configuremos ahora po4a. Con el diseño de archivo apropiado, su archivo de
configuración podría ser tan simple como esto:

 [po_directory] man/po4a/

 [type: man] man/foo.1 $lang:man/translated/foo.$lang.1

Especifica que todos los archivos PO (que contienen el trabajo de los
traductores) están en el directorio F<man/po4a/>, y que solo tiene un
archivo maestro, F<man/foo.1>. Si tuvieras varios archivos maestros,
tendrías varias líneas similares a la segunda. Cada una de estas líneas
también especifica dónde escribir los archivos de traducción
correspondientes. Aquí, la traducción alemana de F<man/foo.1> está en
F<man/translated/foo.de.1>.

Lo último que necesitamos para completar la configuración de B<po4a> es un
archivo POT que contenga el material de plantilla que debe utilizarse para
iniciar una nueva traducción. Basta con crear un archivo vacío con la
extensión S<.pot> en el S<po_directory> especificado (por ejemplo,
F<man/po4a/foo.pot>), y B<po4a> lo rellenará con el contenido esperado.

Aquí tiene un resumen de los archivos en esta configuración:

  ├── man/
  │   ├── foo.1        <- The original man page, in English
  │   ├── po4a/
  │   │   ├── de.po    <- The German PO translation, from gettextization
  │   │   └── foo.pot  <- The POT template of future translations (empty at first)
  │   └── translated/  <- Directory where the translations will be created
  └── po4a.cfg         <- The configuration file

Una vez configurado, ejecutando B<po4a> analizará su documentación,
actualizará la plantilla POT, lo usará para actualizar los archivos de
traducción PO, y los usará para actualizar los archivos de traducción de la
documentación. Todo en un solo comando:

        po4a --verbose po4a.cfg

Esto es. B<po4a> ya está completamente configurado. Una vez que hayas
corregido tu error en F<man/foo.1>, el párrafo ofensivo en la traducción al
alemán será reemplazado por el texto corregido en inglés. Mezclar idiomas no
es óptimo, pero es la única manera de eliminar errores en las traducciones
que ni siquiera entiendes, y asegurarte de que el contenido presentado a los
usuarios nunca sea engañoso. Actualizar la traducción al alemán también es
mucho más fácil en el archivo PO correspondiente, por lo que es posible que
la confusión de idiomas no dure mucho. Por último, cuando un traductor de
japonés quiera contribuir con una nueva traducción, debe cambiar el nombre
de S<foo.pot> a S<ja.po> y completar la traducción. Una vez que tengas este
archivo, simplemente suéltalo en F<man/po4a/po/>. Una página traducida
aparecerá como F<man/translated/foo.ja.1> (siempre que se traduzca
suficiente contenido) cuando vuelva a ejecutar B<po4a>.

=head1 OPCIONES

=over 4

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

El umbral mínimo del porcentaje de traducción para preservar (es decir,
escribir) el archivo resultante (predefinido: 80). Es decir, por defecto los
archivos deben estar traducidos como mínimo en un 80% para que se escriban
en el disco.

=item B<-w>, B<--width>

La columna en la que se debe empaquetar el archivo de salida, en caso de que
el formato lo admita (el valor predeterminado es 76). Si el valor
especificado es 0 o negativo, el archivo de salida no se empaquetará en
absoluto. Esto es útil en el caso de algunos formatos que se corrompen al
volver a empaquetarlos.

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

Muestra un mensaje corto de ayuda.

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

El juego de caracteres de los ficheros que contienen los documentos a
traducir. Tenga en cuento que todos los documentos maestros deben usar el
mismo juego de caracteres.

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

El juego de caracteres de los ficheros que contienen los documentos
localizados. Tenga en cuentao que todos los documentos traducidos deben usar
el mismo juego de caracteres.

=item B<-A>, B<--addendum-charset>

El juego de caracteres del apéndice. Todos los apéndices deben usar el mismo
juego de caracteres.

=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<-q>, B<--quiet>

Disminuye 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<-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<-f>, B<--force>

Siempre genera los ficheros POT y PO, incluso si B<po4a> no lo considera
necesario.

El comportamiento predefinido (cuando no se especifica B<--force>) es el
siguiente:

=over

Si ya existe el fichero POT, se generará otra vez si el documento original o
el fichero de configuración es más reciente (a menos que se de
B<--no-update>). El fichero POT se escribe también en un documento temporal
y B<po4a> comprueba si los cambios son realmente necesarios.

Así mismo, una traducción se genera otra vez sólo si el documento original,
el fichero PO, uno de sus apéndices o el fichero de configuración son más
recientes. Para evitar generar otra vez las traducciones que no pasan el
análisis del umbral (consulte B<--keep>), puede crear un fichero con la
extensión F<.po4a-stamp> (consulte B<--stamp>).

=back

Debería usar la marca B<--force> si el documento original incluye ficheros,
ya que no se toma en cuenta la fecha de modificación de estos ficheros
incluidos.

Los ficheros PO siempre se regeneran en base al POT con B<msgmerge -U>.

=item B<--stamp>

Dice a B<po4a> que cree ficheros de marcas («stamp files») cuando no se ha
generado una traducción al no alcanzar éste el umbral. Estos ficheros de
marcas se nombran de acuerdo al documento traducido esperado, con la
extensión F<.po4a-stamp>.

Nota: Esto sólo activa la creación de ficheros F<.po4a-stamp>. En caso de
existir siempre se usarán estos ficheros, y se eliminan con
B<--rm-translations> o cuando el fichero está completamente traducido.

=item B<--no-translations>

No genera los documentos traducidos, sólo actualiza los ficheros POT y PO.

=item B<--no-update>

Impide modificar los ficheros POT y PO, solo se actualiza la traducción.

=item B<--keep-translations>

Preserva los ficheros traducidos existentes incluso si la traducción no
satisface el umbral especificado por B<--keep>. Esta opción no crea ficheros
traducidos nuevos con escaso contenido, pero guarda las traducciones
existentes incompletas debido a cambios en los ficheros originales.

ADVERTENCIA: Esta opción modifica el comportamiento de po4a de forma muy
notable: los ficheros traducidos no se actualizan en absoluto hasta mejorar
la traducción. Utilice esta opción solo en caso de preferir la distribución
de documentación traducida anticuada en lugar de distribuir una
documentación no traducida precisa.

=item B<--rm-translations>

Elimina los ficheros traducidos (implica B<--no-translations>).

=item B<--no-backups>

A partir de la versión 0.41, esta opción no tiene ningún efecto. Puede que
se elimine en alguna futura publicación.

=item B<--rm-backups>

A partir de la versión 0.41, esta opción no tiene ningún efecto. Puede que
se elimine en alguna futura publicación.

=item B<--translate-only> I<fichero-traducido>

Traduce sólo el fichero especificado. Puede ser útil para agilizar el
proceso si el fichero de configuración contiene muchos ficheros. Tenga en
cuenta que esta opción no actualiza los ficheros PO y POT. Puede usar esta
opción varias veces.

=item B<--variable> I<var>B<=>I<valor>

Define una variable que se expandirá en el fichero de configuración de
B<po4a>. Cada aparición de I<$(var)> se reemplazará por I<valor>. Puede
introducir está opción varias veces.

=item B<--target-lang> I<LANG>

Actualizar archivos PO y generar documentos traducidos solo para el idioma
especificado. Esta opción se puede utilizar varias veces.

=item B<--srcdir> I<SRCDIR>

Define el directorio base de todos los documentos de entrada especificados
en el fichero de configuración de B<po4a>.

Si se especifican tanto I<destdir> como I<srcdir>, los archivos de entrada
se buscan en los siguientes directorios, en orden: I<destdir>, el directorio
actual y I<srcdir>. Los archivos de salida se escriben en I<destdir> si se
especifica, o en el directorio actual.

=item B<--destdir> I<DESTDIR>

Define el directorio base de todos los documentos de salida especificados en
el fichero de configuración de B<po4a> (ver B<--srcdir>).

=back

=head2 Opciones que modifican el encabezado POT

=over 4

=item B<--porefs> I<type>

Define el forma de referencia: El argumento I<type> puede ser B<never> para
no generar ninguna referencia, B<file> para solo especificar el fichero el
número de línea, B<counter> para sustituir el número de línea con un
recuento ascendente, y B<full> para incluir referencias completas
(predefinido: full).

=item B<--wrap-po> B<no>|B<newlines>|I<number> (por omisión: 76)

Especifique cómo se debe ajustar el archivo po. Esto permite elegir entre
archivos que están bien ajustados pero que podrían generar conflictos de git
o archivos que son más fáciles de manejar automáticamente, pero más
difíciles de leer para los humanos.

Históricamente, la suite gettext ha reformateado los archivos po en la
columna 77 por razones cosméticas. Esta opción especifica el comportamiento
de po4a. Si se establece en un valor numérico, po4a ajustará el archivo po
después de esta columna y después de nuevas líneas en el contenido. Si se
establece en B<newlines>, po4a solo dividirá los msgid y msgstr después de
nuevas líneas en el contenido. Si se establece en B<no>, po4a no ajustará el
archivo po en absoluto. Los comentarios de referencia siempre son ajustados
por las herramientas gettext que usamos internamente.

Tenga en cuenta que esta opción no tiene ningún impacto en cómo se ajustan
msgid y msgstr, es decir, en cómo se agregan nuevas líneas al contenido de
estas cadenas.

=item B<--master-language>

El idioma de los ficheros que contienen el documento a traducir. Todos los
documentos maestros deben utilizar el mismo idioma.

=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 Opciones para modificar los archivos PO

=over 4

=item B<--msgmerge-opt> I<opciones>

Opciones adicionales para B<msgmerge>(1).

Nota: B<$lang> se expandirá al idioma actual.

=item B<--no-previous>

Esta opción retira B<--previous> desde las opciones aprobadas a
B<msgmerge>.  Esto es necesarios para admitir versiones de B<gettext>
anteriores a 0.16.

=item B<--previous>

Esta opción añade B<--previous> a las opciones introducidas a
B<msgmerge>. Requiere B<gettext> 0.16 o posterior, y está activada por
omisión.

=back

=head1 ARCHIVO DE CONFIGURACIÓN

po4a espera un archivo de configuraicón como argumento. Este archivo de
contener los siguientes elementos:

=over

=item

La ruta a los archivos PO y la lista de idiomas en el proyecto;

=item

Opcionalmente, algunas opciones globales y los denominados alias de
configuración que se utilizan como plantillas para configurar archivos
maestros individuales;

=item

La lista con cada archivo maestro a traducir, junto con parámetros
específicos.

=back

Todas las líneas contienen una orden entre paréntesis cuadrados, seguido de
sus parámetros. Los comentarios comienzan con el carácter '#' y van hasta el
final de la línea. Puede escapar el final de la línea para extender una
orden en varias líneas.

En esta página se presentan algunos ejemplos completos, mientras que otros
ejemplos se pueden encontrar en el directorio C<t/cfg> de la distribución
fuente.

=head2 Encontrar los archivos PO y POT

La solución más simple es proporcionar explicitamente la ruta a los archivos
POT y PO, así:

 [po4a_paths] man/po/project.pot de:man/po/de.po fr:man/po/fr.po

Este especifíca la ruta al archivo POT primero, y después las rutas a los
archivos PO en alemán y frncés.

La misma información puede escribirse como sigue para reducir el riesgo de
errores de copiar/pegar:

 [po4a_langs] fr de
 [po4a_paths] man/po/project.pot $lang:man/po/$lang.po

El componente C<$lang> se expande automaticamente al usar la lista de
idiomas proveida, reduciendo así el riesgo de errores de copiar/pegar cuando
se añade un nuevo idioma.

Puede compactar más la misma información al proporcionalr solamente la ruta
al directorio que contiene su proyecto de traducción, como se describe a
continuación.

 [po_directory] man/po/

El directorio proporcionado debe contener un juego de archivo PO, cada uno
con un nombre de la forma F<XX.po> siendo C<XX> el código ISO 639-1 del
idioma usado en ese archivo. El directorio también debe contener un sólo
archivo POT, con la extensión C<.pot>. En la primera ejecución, este archivo
debe estar vacío pero debe existir (por4a no puee adivinar el nombre por
usar antes de la extensión).

Note que usted debe elegir sólo uno entre C<po_directory> y
C<po4a_paths>. El primero C<po_directory>) es más compacto, reduciendo más
el riesgo de errores de copiar7pegar, pero forzándolo a usar la estructura y
nombres de archivos esperados del proyecto. La segunda (C<po4a_paths>), es
más explicita, probablemente más legible y se recomienda cuando esté
montando su primer proyecto con po4a.

=head3 ¿Archivos PO centralizados o divididos?

De manera predeterminada, po4a produce un sólo archivo PO por idioma
objetivo, que contiene el contenido completo de su proyecto de traducción. A
medida que su proyecto crezca, el tamaño de estos archivos puede volverse
problemático. Al usar weblate, es posible especificar prioridades para cada
segmento de traducción (i.e, msgid) de forma que los importante son
traducidos primero. Aún así, algunos equipos de traducción prefieren dividir
el contenido en varios archivos.

Para tener un archivo PO por cada archivo maestro, usted sólo tiene que usar
la cadena C<$master> en el nombre de sus archivos PO y la línea
C<[po4a_paths]>, como sigue.

 [po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po

Con esta línea, po4a producirá ficheros separados POT y PO por cada
documento para traducir. Por ejemplo, si tiene tres documentos y cinco
idiomas, esto resultará en tres ficheros POT y 15 ficheros PO. Estos
ficheros son nombrados como especificados sobre la plantilla C<po4a_paths>,
con C<$master> sustituido como nombre base de cada documento a traducir. En
caso de conflicto de nombres, puede especificar el fichero POT para emplear
como sigue, con el parámetro C<pot=>.

Esta característica además puede ser utilizada para agrupar varios ficheros
traducidos dentro del mismo fichero POT. El siguiente ejemplo solo produce 2
ficheros POT: F<l10n/po/foo.pot> (conteniendo el material de F<foo/gui.xml>)
y F<l10n/po/bar.pot> (conteniendo el material tanto de F<bar/gui.xml> como
de F<bar/cli.xml>).

 [po4a_langs] de fr ja
 [po4a_paths] l10n/po/$master.pot $lang:l10n/po/$master.$lang.po
 [type: xml] foo/gui.xml $lang:foo/gui.$lang.xml pot=foo
 [type: xml] bar/gui.xml $lang:bar/gui.$lang.xml pot=bar
 [type: xml] bar/cli.xml $lang:bar/cli.$lang.xml pot=bar

En modo despliegue, B<po4a> compila un compendio temporal durante la
actualización de PO, para compartir las traducciones entre todos los
ficheros PO. Si dos PO tienen diferentes traducciones de la misma cadena,
B<po4a> marcará esta cadena como difusa («fuzzy») y mandará ambas
traducciones a todos los ficheros PO que contengan está cadena. Cuando no
quede difuso por el traductor, la traducción es utilizada automáticamente en
cada fichero PO.

=head2 Especificar los documentos a traducir

También debe enumerar los documentos que deben traducirse. Para cada archivo
maestro, debe especificar el analizador de formato que debe utilizarse, la
ubicación del documento traducido que debe producirse y, opcionalmente,
alguna configuración. Los nombres de archivo deben entrecomillarse o
escaparse si contienen espacios. He aquí un ejemplo:

 [type: sgml] "doc/my stuff.sgml"  "fr:doc/fr/mon truc.sgml"  de:doc/de/mein\ kram.sgml
 [type: man] script fr:doc/fr/script.1 de:doc/de/script.1
 [type: docbook] doc/script.xml fr:doc/fr/script.xml \
             de:doc/de/script.xml

Pero de nuevo, estas líneas complejas son difíciles para leer y modificar,
p. ej. cuando agregue un idioma nuevo. Es mucho más fácil reorganizar cosas
empleando la plantilla C<$lang> como sigue:

 [type: sgml]    doc/my_stuff.sgml $lang:doc/$lang/my_stuff.sgml
 [type: man]     script.1          $lang:po/$lang/script.1
 [type: docbook] doc/script.xml    $lang:doc/$lang/script.xml

=head2 Especificar opciones

Hay dos tipos de opciones: I<opciones po4a> son valores predeterminados para
las opciones de línea de orden po4a mientras que I<opciones de formato> son
utilizadas para cambiar el comportamiento de los intérpretes del
formato. Como una I<opciones de po4a>, pudo por ejemplo especificar en su
fichero de configuración que el valor predeterminado del parámetro de línea
de orden B<--keep> es un 50% en vez de un 80%. Las I<opciones de formato>
están documentadas en una página específica de cada módulo de intérprete,
p.ej. L<Locale::Po4a::Xml(3pm)>. Pudo por ejemplo aprobar B<nostrip> al
intérprete XML para no recortar los espacios alrededor de las cadenas
extraídas.

Puede pasar estas opciones para un fichero maestro específico, o incluso
para una traducción específica de ese fichero, utilizando C<opt:> y
C<opt_XX:> para el idioma C<XX>.  En el ejemplo siguiente, la opción
B<nostrip> es pasada al intérprete XML (para todos los idiomas), mientras
que el umbral será reducido a 0% para la traducción francesa (que es por lo
tanto siempre conservada).

 [type:xml] toto.xml $lang:toto.$lang.xml opt:"-o nostrip" opt_fr:"--keep 0"

En cualquier caso, estos segmentos de configuración deben estar ubicados al
final de la línea.  La declaración de ficheros deben primero venir, después
el adjunto si hay alguno (vea debajo), y después solamente las opciones. El
agrupamiento de configuración de segmentos no es muy importante, debido a
que los elementos están concatenados internamente como cadenas. Los
siguientes ejemplos son todos equivalentes:

  [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20" opt:"-o nostrip" opt_fr:"--keep 0"
  [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20 -o nostrip" opt_fr:"--keep 0"
  [type:xml] toto.xml $lang:toto.$lang.xml opt:--keep opt:20 opt:-o opt:nostrip opt_fr:--keep opt_fr:0

Anote que las opciones específicas del idioma no son utilizadas cuando crea
el fichero POT. Es por ejemplo imposible aprobar B<nostrip> al intérprete
solamente cuando construya la traducción francesa, porque el mismo fichero
POT es utilizado para actualizar cada idioma. Por tanto las opciones
solamente que pueda ser específicas del idioma son las que son utilizadas
cuando produce la traducción, como la opción C<--keep>.

=head3 Configuración de aliases

Para aprobar las mismas opciones a varios ficheros, lo mejor es definir un
tipo alias como sigue. En el ejemplo siguiente, C<--keep 0> es pasado a cada
traducción italiana utilizando este tipo C<test>, que es una extensión del
tipo C<man>.

  [po4a_alias:test] man opt_it:"--keep 0"
  [type: test] man/page.1 $lang:man/$lang/page.1

También puede extender un tipo existente reutilizando el mismo nombre para
el alias tal como sigue. Esto no es interpretado como una definición
recursiva errónea.

  [po4a_alias:man] man opt_it:"--keep 0"
  [type: man] man/page.1 $lang:man/$lang/page.1

=head3 Opciones predeterminadas globales

Además puede utilizar líneas de C<[opciones]> para definir opciones que
deben ser empleadas para todos los ficheros, independientemente de su tipo.

  [options] --keep 20 --option nostrip

Como con las opciones de línea de orden, puede abreviar los parámetros
pasados dentro del fichero de configuración:

  [options] -k 20 -o nostrip

=head3 Opciones prioritarias

Las opciones de cada fuente están concatenadas, asegurando que los valores
predeterminados puedan ser fácilmente anulados por opciones más
específicas. El pedido es como sigue:

=over

=item

Las C<[opciones]> de líneas proporciona valores predeterminados que pueden
ser anuladas por cualquier otro origen.

=item

Tipo de aliases estarán cuando necesite. Parámetros específicos del idioma
anula los aplicables a todos los idiomas.

=item

Los parámetros que son específicos a un fichero maestro dado anula ambos
predeterminados y los que vengan desde el tipo alias. En este caso también,
los parámetros específicos del idioma anulan los globales.

=item

Finalmente, los parámetros proporcionado en la línea de orden B<po4a> supera
cualquiera de los parámetros desde el fichero de configuración.

=back

=head3 Ejemplo

Aquí hay un ejemplo mostrando como entrecomillas los espacios y
entrecomillados:

 [po_directory] man/po/
 
 [options] --master-charset UTF-8
 
 [po4a_alias:man] man opt:"-o \"mdoc=NAME,SEE ALSO\""
 [type:man] t-05-config/test02_man.1 $lang:tmp/test02_man.$lang.1 \
            opt:"-k 75" opt_it:"-L UTF-8" opt_fr:--verbose

=head2 Apéndice: Añadiendo contenido adicional en la traducción

Si desea agregar una sección adicional a la traducción, por ejemplo para
proporcionar reconocimiento a los traductores, entonces necesita definir un
addendum a la línea definiendo su fichero maestro. Refiérase a la página
L<po4a(7)> para más detalles en la sintaxis de ficheros addendum.

 [type: pod] script fr:doc/fr/script.1 \
             add_fr:doc/l10n/script.fr.add

Además puede emplear plantillas del idioma como sigue:

 [type: pod] script $lang:doc/$lang/script.1 \
             add_$lang:doc/l10n/script.$lang.add

Si falla un addendum al aplicar, la traducción es descartada.

=head3 Modificadores para declaración de addendum

Modificadores de adjuntos pueden simplificar la configuración del fichero
dentro del caso donde ninguno de los idioma proporciona un adjunto o cuando
el listado de los adjuntos cambia desde un idioma al otro. El modificador es
un carácter único localizado antes del nombre del fichero.

=over 2

=item B<?>

Incluye I<ruta_al_apéndice> si el fichero sí existe, y no hace nada de lo
contrario.

=item B<@>

I<ruta_al_apéndice> no es un apéndice normal, sino un fichero que contiene
una lista de apéndices, uno por línea. Cada apéndice puede ir precedido de
argumentos.

=item B<!>

Si I<ruta_al_apéndice> se descarta, no se cargará, independientemente de
cualquier especificación adicional referida al apéndice.

=back

Lo siguiente incluye un adjunto dentro de cualquier idioma, pero si
solamente existe. No se comunica un error si el adjunto no existe.

 [type: pod] script $lang:doc/$lang/script.1  add_$lang:?doc/l10n/script.$lang.add

Lo siguiente incluye un listado de adjuntos por cada idioma:

 [type: pod] script $lang:doc/$lang/script.1  add_$lang:@doc/l10n/script.$lang.add

=head2 Filtrar las cadenas traducidas

A veces, desea ocultar algunos segmentos desde el proceso de
traducción. Para eso extender, puede proporcionar un parámetro C<pot_in> a
su fichero maestro para especificar el nombre del fichero a utilizar en
lugar del maestro real cuando compile el fichero POT. Aquí hay un ejemplo:

  [type:docbook] book.xml          \
          pot_in:book-filtered.xml \
          $lang:book.$lang.xml

Con este parámetro, los segmentos a traducir serán extraídos desde el
F<libro.filtrado.xml> (ese debe ser generado antes de invocar B<po4a>)
mientras los ficheros traducidos serán compilados desde F<libro.xml>. Como
un resultado, cualquier segmento que es parte de F<libro.xml> pero no está
dentro del F<libro-filtrado.xml> no será incluido dentro de los ficheros PO,
impidiendo a los traductores desde proporionar una traducción para
ellos. Por tanto estos segmentos serán dejados sin modificar cuando produzca
los documentos traducidos.  Esto naturalmente decrementa el nivel de
traducción, por lo que quizá necesita la opción C<--keep> para asegurar que
el documento es generado a pesar de todo.

=head1 VÉASE TAMBIÉN

L<po4a-gettextize(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).
