table of contents
- NOMBRE
- DESCRIPCIÓN
- TRADUCIR CON PO4A::TEX
- OPCIONES ACEPTADAS POR ESTE MODULO
- PERSONALIZACIÓN DE OBJETOS EN LÍNEA
- ESCRIBIR MÓDULOS DERIVADOS
- FUNCIONES INTERNAS utilizadas para escribir analizadores derivados
- ESTADO DE ESTE MODULO
- LISTA DE TAREAS PENDIENTES
- FALLOS CONOCIDOS
- VÉASE TAMBIÉN
- AUTORES
- DERECHO DE COPIA Y LICENCIA
other versions
- wheezy 0.42-1
Locale::Po4a::TeX(3) | User Contributed Perl Documentation | Locale::Po4a::TeX(3) |
NOMBRE¶
Locale::Po4a::TeX - Convierte de documentos TeX y derivados desde/a ficheros PODESCRIPCIÓ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 áreas donde no eran de esperar, como la documentación. Locale::Po4a::TeX es un módulo que asiste en la traducción de documentos TeX a otros lenguajes (humanos). También se puede usar como base para construir módulos para documentos basados en TeX. Probablemente, los usuarios deberían usar el módulo LaTeX, que hereda del módulo TeX y contiene las definiciones de las órdenes más comunes de LaTeX.TRADUCIR CON PO4A::TEX¶
Este módulo se puede usar directamente para tratar documentos TeX genéricos. Esto dividirá el documento en bloques más pequeños (párrafos, bloques literales, o incluso más pequeños, como títulos o índices). Hay algunas opciones (descritas en la siguiente sección) que pueden personalizar este comportamiento. Si eso no es suficiente para el formato de su documento, le animo a que escriba su propio módulo derivado de éste para describir los detalles de su formato. Consulte la sección Escribir módulos derivados que encontrará más abajo para una descripción del proceso. Este módulo se puede personalizar con lineas que empiecen con «% po4a:» en el fichero TeX. Esta personalización se describe en la sección PERSONALIZACIÓN DE OBJETOS EN LÍNEA.OPCIONES ACEPTADAS POR ESTE MODULO¶
Estas son las opciones particulares de este módulo:- debug
- Activa la depuración de fallos para algunos mecanismos internos del módulo. Use el código fuente para ver qué partes se pueden depurar.
- no_wrap
- Lista separada por comas de los entornos que no se deben
justificar.
- exclude_include
- Lista separada por dos puntos de los ficheros que no se deben incluir mediante «\input» e «\include».
- definitions
- El nombre de un fichero que contiene definiciones para po4a, tal y como se define en la sección PERSONALIZACIÓN DE OBJETOS EN LÍNEA. Puede usar esta opción si no es posible introducir definiciones en el documento que está traduciendo.
- verbatim
- Lista separada por comas de los entornos que no se deben
justificar.
PERSONALIZACIÓN DE OBJETOS EN LÍNEA¶
El módulo TeX se puede personalizar mediante lineas que empiecen con % po4a:. Estas lineas se interpretan como órdenes para el analizador. Se reconocen las siguientes órdenes:- % po4a: command orden1 alias orden2
- Indica que los argumentos de la orden orden1 se deben tratar como los argumentos de la orden orden2.
- % po4a: command orden1 parámetros
- Esto permite describir en detalle los parámetros de la
orden orden1. Esta información se usará para revisar el
número de argumentos y su tipo.
- un asterisco (*)
- po4a extraerá esta orden de los párrafos (si está ubicada al principio o final de un párrafo). Los traductores tendrán que traducir los argumentos marcados como traducibles.
- un signo de suma (+)
- En cuanto al asterisco, la orden se extraerá en caso
de aparecer en el extremo de un bloque, pero los argumentos no se
traducirán separadamente. El traductor tendrá que traducir la
orden unida a todos sus argumentos. Esto permite mantener un contexto
más completo, y es útil con aquellas órdenes con
pequeñas palabras en sus argumentos, los cuales pueden tener varios
significados (y traducciones).
- un signo de resta (-)
- En este caso, no se extraerá la orden de ningún bloque. Pero si aparece solo en un bloque, sólo los argumentos marcados como traducibles se entregarán al traductor. Esto es de utilidad para las órdenes de tipo de letra. Por lo general, estas órdenes no se deberían separar de su párrafo, (para mantener el contexto), pero no hay ninguna razón para molestar al traductor con ellas de aparecer una cadena completa dentro de una orden dada.
% po4a: orden *chapter [_] {_}
% po4a: command -href {}{_}
- % po4a: environment entorno parámetros
- Esto permite definir los parámetros aceptados por el
entorno entorno. Esta información se emplea más adelante
para revisar el número de argumentos de la orden «\begin»,
y permite especificar cual se debe traducir. La sintaxis del argumento
parámetros es la misma descrita para las órdenes. El
primer párametro de la orden «\begin» es el nombre del
entorno. No debe especificar este parámetro en la lista de
parámetros. A continuación tiene unos ejemplos:
% po4a: environment multicols {}
% po4a: environment equation
- % po4a: separator entorno "expresión_regular "
- Indica que un entorno se debería dividir de acuerdo a
la expresión regular dada.
- % po4a: verbatim environment entorno
- Indica que entorno es un entorno literal. Los
comentarios y órdenes se ignorarán en este entorno.
ESCRIBIR MÓDULOS DERIVADOS¶
- pre_trans
- post_trans
- translate
- Un «wrapper» (envoltorio) al translate del
Transtractor, con filtros de pre- y post-procesado.
- get_leading_command($buffer)
- Esta función devuelve:
- El nombre de la orden
- Si no se encuentra ninguna orden al principio del búfer dado, esta cadena estará vacía. Sólo se consideran las órdenes que se pueden separar. La serie asociativa (hash) «$separated_commands» contiene la lista separada por espacios de estas órdenes.
- Una variante
- Indica si se utiliza una variante. Por ejemplo, se puede añadir un asterisco (*) al final de la orden de secciones para especificar que no se deben enumerar. En ese caso, este campo contendría "*". Si no hay ninguna variante, el campo contiene una cadena vacía.
- Una arreglo de tuplas (tipo de argumento, argumento)
- El tipo de argumento puede ser «{» (para argumentos obligatorios) o «[» (para argumentos opcionales).
- El resto del búfer
- El resto del búfer después de la eliminación de la orden inicial y sus parámetros. Si no se encuentra ninguna orden, se devuelve a este campo el búfer original intacto.
- get_trailing_command($buffer)
- Lo mismo que get_leading_command, pero para las órdenes al final de la memoria intermedia.
- translate_buffer
- Traduce recursivamente una memoria intermedia separando de
la misma la orden inicial y la final (los que se deben traducir por
separado).
- read
- Sobrecarga la lectura («read») de Transtractor
- read_file
- Lee un fichero recursivamente, añadiendo los ficheros
incluidos que no están listados en la lista
«@exclude_include». Los ficheros incluidos se buscan con la
orden kpsewhich de la biblioteca Kpathsea.
- parse_definition_file
- Subrutina para analizar un fichero con directivas po4a (definiciones de órdenes nuevas).
- parse_definition_line
- Analiza una linea de definición con la forma «%
po4a: ».
- is_closed
- docheader
FUNCIONES INTERNAS utilizadas para escribir analizadores derivados¶
Las funciones de orden y entorno toman los siguientes argumentos (además del objeto «$self»):- El nombre de la orden
- Una variante
- Una serie de tuplas (tipo, argumento)
- El entorno actual
% po4a: command orden1 parámetros «generic_environment» usa la información especificada por «register_generic_environment» o añadiendo una definición al fichero de TeX:
% po4a: environment entorno parámetros Ambas funciones sólo traducen los parámetros especificados como traducibles (con una '_'). «generic_environment» afijará el nombre del entorno a la pila del entorno, y «generic_command» afijará el nombre de la orden seguida por un identificador del parámetro (como {#7} o [#2]).
ESTADO DE ESTE MODULO¶
Este módulo necesita más pruebas. Se ha probado con un libro y con la documentación de Python.LISTA DE TAREAS PENDIENTES¶
- Detección automática de órdenes nuevas
- El módulo TeX podría analizar los argumentos de la orden nueva e intentar determinar el número de argumentos, su tipo y si se deberían traducir.
- Traducción del separador de entorno
- Cuando usa «\item» como un separador de entorno, el elemento argumento se añade a la siguiente cadena.
- Algunas órdenes se deberían añadir a la pila («stack») del entorno
- Estas órdenes se deberían especificar por parejas. Esto permitiría especificar órdenes que inician o finalizan un entorno literal.
- Otros
- Hay varios puntos etiquetados con TODO en el código.
FALLOS CONOCIDOS¶
Hay varios puntos etiquetados con FIXME en el código.VÉASE TAMBIÉN¶
Locale::Po4a::LaTeX(3pm), Locale::Po4a::TransTractor(3pm), po4a(7)AUTORES¶
Nicolas François <nicolas.francois@centraliens.net>
DERECHO DE COPIA Y LICENCIA¶
Copyright 2004, 2005 por Nicolas FRANÇOIS <nicolas.francois@centraliens.net>. Esto es software libre; puede redistribuirlo y/o modificarlo bajo las condiciones de la licencia GPL (consulte el fichero COPYING).2012-05-17 | perl v5.14.2 |