[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [LCFC] po-debconf://ssmtp



On Sun, Sep 10, 2006 at 01:45:09PM +0200, Ricardo Mones wrote:
> > El vie, 08-09-2006 a las 08:42 -0400, Jesus Aneiros escribió:
> > > Hola Santiago, le eché un vistazo y como soy nuevo en estas lides
> > > resulta interesante para mí que no divides las cadenas de texto. Esto
> > > es válido? Pensé que había que mantenerlas dentro de los 80 caracteres
> > > por línea.
> > > 
> > 
> > Aclaro que éste es mi primer .po y no encontré nada al respecto, pero,
> > si es como dices, no tengo ningún problema en ajustar el archivo. 
> 
>   Hasta donde yo se, técnicamente no es necesario, ya que las herramientas
> de gettext se encargan de partir las líneas cuando son más largas.
>   Dicho ésto, desde luego es mucho más cómodo leer los mensajes con las
> líneas ajustadas, así que gracias :-)

Ten en cuenta, además, que no estás en realidad ajustando a 80 caracteres en
las tuyas porque no pones saltos de línea (\n) entre éstos. Para que veas la
diferencia

msgstr "Esto "           ----> Aparece como "Esto es la misma frase" en el
"es la misma frase."           programa

y 

msgstr "Esto\n"         -----> Aparece en el programa como "Esto"
"es otra frase."                                           "es otra frase."
                        [dos líneas]

Cuando se trata de la traducción de un programa (dpkg, apt, aptitude, por
poner ejemplos) que se utiliza en líneas de órdenes verás saltos de línea en
los msgids en inglés. La idea ahí es ajustar a 78 caracteres por línea para
que no "salte" cuando se presenta en consola un mensaje de una línea a otra y
controlar el salto.

Cuando el msgid en inglés no tiene saltos de línea "\n" tú no deberías
ponerlos porque se supone (cómo es el caso de debconf) que el programa que
utiliza la traducción y la presenta en pantalla ajusta el texto (forzando
saltos) en base al ancho de línea de la pantalla.

Con lo que, en resumen, separar los msgstr (cuando no hay saltos de línea) en
más de una línea es una conveniencia (y algo que hacen automáticamente
algunos editores que conocen PO, como el po-mode de emacs) pero no es
necesario. Si tienes:

msgid "This is a translation."

todos los que ves a continuación son traducciones iguales (y válidas) en un
fichero PO:

msgstr "Esta es una"
" traducción."

msgstr "Esta es una traducción."

msgstr "Esta "
"es una traducción."

msgstr ""
"Esta es una traducción."

¿Aclarado?

Javier

PD: Si la traducción tiene más (o menos) saltos de línea que el original
msgfmt generará un error al compilar el fichero PO, por eso conviene
probarlas antes de enviarlas con:

$ msgfmt --stat -c -o /dev/null fichero.po


Attachment: signature.asc
Description: Digital signature


Reply to: