Traducción de las páginas web de Debian

Para hacer el trabajo de los traductores tan fácil como sea posible, las páginas se generan de forma algo diferente a como muchos de ustedes están acostumbrados. Las páginas web se actualizan realmente usando fuentes que están escritas con wml. Hay diferentes directorios para cada idioma.

Si piensa comenzar una traducción completamente nueva del servidor web de Debian, por favor, vea la sección del comienzo de una nueva traducción.

Traducción de páginas individuales

Usamos WML para separar el contenido específico de una página de los elementos comunes a múltiples páginas. Esto significa que uno debe editar ciertos ficheros fuente WML en lugar de ficheros HTML. Por favor, utilice CVS para obtener los fuentes actuales. Necesitará descargar al menos dos directorios: webwml/english/ y webwml/<idioma>/.

Para traducir una única página del inglés a su idioma, deberá traducir el fichero .wml y colocarlo dentro del directorio del otro idioma. El nombre y el path relativo deben ser los mismos que el del directorio inglés, para que los enlaces sigan funcionando.

Cabeceras de traducción

También recomendamos encarecidamente que el traductor añada una línea adicional a las cabeceras tras la última sentencia #use para registrar la revisión exacta del fichero original que se tradujo, de manera que sea más sencillo actualizar La línea sería algo como: #use wml::debian::translation-check translation="x.y".

Algunos equipos de traducción usan también esta línea para marcar el traductor oficial de cada página web. Haciéndolo, le llegarán mensajes automáticamente cada vez que las páginas que mantiene sean actualizadas en inglés, y necesitan su atención para actualizar la traducción. Para ello, simplemente añada su nombre como mantenedor al final de la línea #use de manera que quede así: #use wml::debian::translation-check translation="x.y" maintainer="su nombre". El script copypage.pl hará esto automaticamente si esta presente la variable DWWW_MAINT en el ambiente o usa la opción -m en la linea de órdenes.

También hace falta explicarle al robot quién es usted, con qué frecuencia quiere que le lleguen mensajes automáticos y su contenido. Para ello, edite (o dígaselo a su coordinador) el fichero webwml/idioma/international/idioma/translator.db.pl en el CVS. Debería entender la sintaxis fácilmente, y puede usar el fichero del equipo francés como plantilla si no existe aún el de su idioma. El robot puede enviar varios tipos de información, y para cada tipo, puede escoger la frecuencia con que le será enviada. Los tipos disponibles son:

Luego, para cada tipo, el valor debe ser: 0 (nunca), 1 (mensual), 2 (semanal) o 3 (diario).

Un ejemplo podría ser:

                'Martin Quinson' => {
                        email       => 'martin.quinson@tuxfamily.org',
                        summary     => 3,
                        logs        => 3,
                        diff        => 3,
                        tdiff       => 0,
                        file        => 0
                },

La cabecera de la página web puede producirla fácilmente usando el script copypage.pl del directorio raíz de webwml. El script copiará la página en el lugar correcto, creará directorios y makefiles si fuera necesario, y añadirá la cabecera adecuada de forma automática. Seras adevrtido si una pagina a copiar existe en el repositorio, ya sea porque la pagina fue removida por del repositorio (debido a estar muy desactualizada) o porque alguien ya envio una traducción y tu repositorio local no esta actualizado

Para empezar a usar copypage.pl primero debes configurar el fichero language.conf que sera usado para determinar en que idioma estas traduciendo. Ese fichero solo necesita tener una linea con el nombre del idioma, eso es todo. También puedes definir el idioma usando la variable del ambiente DWWW_LANG y usar la variable del ambiente DWWW_MAINT para poner tu nombre que sera añadido a la cabecera de los ficheros wml generados como el encargado de la traducción. Existen otras caracteristicas disponibles en el script, solo ejecutalo sin argumentos para obtener la ayuda.

Después de haber ejecutado, digamos, ./copypage.pl fichero.wml, traduzca el texto original que hay dentro del fichero. Encontrará comentarios en los ficheros indicando si hay elementos que no deberían ser traducidos: respételos. No haga cambios innecesarios al formato; si hay que arreglar algo, debería hacerse en el fichero original.

Creación y publicación de páginas

Ya que usamos negociación de contenido, los ficheros HTML no se llaman fichero.html sino fichero.<idioma>.html, siendo <idioma> el código de dos letras del idioma, de acuerdo con el ISO 639 (ej: es para Español).

Puede generar HTML del WML ejecutando make fichero.<idioma>.html. Si funciona, compruebe que la sintaxis es completamente válida con weblint fichero.<lang>.html.

Las páginas web se reconstruirán en el servidor www-master partiendo del CVS, y este proceso es el mas suceptible a errores. Sin embargo, si envía un fichero estropeado en el nivel superior de la traducción (ej: el fichero index.wml de nivel superior), interrumpirá el proceso de compilación y detendrá todo el resto de actualizaciones del sitio web. Preste atención especial a estos ficheros.

Una vez esté lista la página, puede enviarla al CVS. Si tiene permiso para hacerlo por sí mismo, ejecute cvs commit; y si no, envíelo a alguien que tenga derechos de escritura en el respositorio.

Comienzo de una nueva traducción

Si desea comenzar la traducción de las páginas web de Debian a un nuevo idioma, envíenos un mensaje (en inglés) a webmaster@debian.org.

Antes que nada, asegúrese de que ha descargado adecuadamente del CVS nuestro árbol fuente, tal como se describe en nuestra página de introducción al CVS.

Tras haber descargado los directorios webwml/ y (por lo menos) webwml/english/, empiece creando un directorio nuevo para la traducción, junto a english y los otros. El nombre del directorio de la traducción debe estar en inglés y todo en minúsculas (ej: «german», no «Deutsch»).

Copie los ficheros Make.lang y .wmlrc del directorio english/ al nuevo directorio de traducción. Estos ficheros son esenciales para compilar la traducción partiendo de ficheros WML. Están pensados para que una vez los copie al nuevo directorio de idioma, sólo tenga que cambiar estas cosas:

  1. Debe cambiar la variable LANGUAGE del fichero Make.lang.
  2. Debe cambiar las variables CUR_LANG, CUR_ISO_LANG y CHARSET en el fichero .wmlrc. Añada CUR_LOCALE en caso de que la necesite para ordenación.
  3. Puede que algunos idiomas necesiten algo de procesado extra para controlar el juego de caracteres. Esto se puede hacer usando las opciones de wml --prolog y --epilog. Use las variables WMLPROLOG y WMLEPILOG de Make.lang para esto.
  4. Debe cambiar la variable LANGUAGES en el fichero de nivel superior webwml/Makefile de manera que su idioma se compile junto con los otros, en www.debian.org. Preferiríamos que dejase este cambio en particular a los webmasters, porque puede que los ficheros de la traducción contengan errores al ser descargados desde cero del CVS, y esto podría interrumpir el proceso de compilación del resto de nuestro sitio web.

Tras hacer esto, ponga la siguiente línea en un fichero nuevo llamado "Makefile" en ese directorio:

include $(subst webwml/dirdesuidioma,webwml/english,$(CURDIR))/Makefile

(Cambie dirdesuidioma por el nombre del directorio de su idioma, por supuesto).

Ahora cree un subdirectorio llamado «po» dentro del de idioma, y copie el mismo Makefile dentro de ese subdirectorio (cp ../Makefile .).

Ejecute make init-po en el directorio po/ para generar el conjunto inicial de ficheros *.po.

Ahora que ya tiene el esqueleto preparado, puede empezar a añadir traducciones a nuestras etiquetas WML compartidas que se usan en las plantillas. Las primeras plantillas que debería traducir son aquellas que aparecen en todas las páginas, como las palabras clave de la cabecera, las entradas en la barra de navegación, y el pie de página.

Empiece traduciendo el fichero po/templates.xy.po (siendo xy el código de dos letras de su idioma). Por cada msgid "algo" hay en principio un msgstr "" y debería escribir la traducción de algo dentro de las comillas dobles tras el msgstr.

No tiene que traducir todas las cadenas de texto de todos los ficheros .po, sino sólo aquellas que necesiten realmente las páginas ya traducidas. Para saber si necesita traducir una cadena, vea los comentarios en el fichero .po justo encima de cada sentencia msgid. Si el fichero referenciado está en english/template/debian, entonces mejor tradúzcalo. Si no, puede posponerlo para más adelante, cuando traduzca realmente la sección relevante de las páginas web que lo precisan.

El punto de los ficheros po/ es hacer las cosas mas fáciles para los traductores, asi ellos (casi) nunca tendran que editar nada en el directorio english/template/debian. Si encuentra algo incorrecto en la forma en que esta configurado el directorio de plantillas, por favor asegurese de que el problema sea arreglado en una manera general (puede pedirle a alguien mas que lo haga por usted), en lugar de enviar las traducciones a las plantillas, lo que seria (generalmente) un problema grave.

Si no está seguro de si lo hizo correctamente, pregunte en la lista debian-www antes de enviar los cambios.

Nota: si encuentra que necesita hacer cualquier otro cambio, envíe un mensaje de correo a debian-www diciendo qué necesita cambiar y por qué, para que el problema pueda se corregido.

Tras terminar con el esqueleto de plantilla, puede empezar con la traducción de la página inicial y otros ficheros *.wml. Si desea una lista de lo que debería ser traducido antes que nada, consulte la página de consejos. Traduzca páginas *.wml tal como está descrito al principio de esta página.

Reviviendo traducciones desactualizadas

Como se describió en mantener las traducciones actualizadas, traducciones desactualizadas del sitio pueden ser removidas automaticamente cuando un largo periodo de tiempo ha pasado sin tener una actualización.

Si usa el script copypage.pl con un fichero que ha sido removido del CVS se negara a copiar la pagina y le pedira que la reviva. Puede checar los motivos por los que el fichero fue removido del cvs usando cvs log en el archivo removido (o usar la interfaz web, los ficheros borrados se pueden encontrar en el subdirectorio "Attic").

Para revivir las traducciones desactualizadas use cvs status (o cvs log) para ver el número de versión de la versión eliminada y entonces hacer una unión con una versión anterior.

Por ejemplo, si el fichero eliminado es "eliminado.wml", y la version eliminada es 1.7, la versión anterior a la eliminación es 1.6 (la versión eliminada menos uno). Puedes restaurar el archivo ejecuntado:

    cvs update -j 1.7 -j 1.6 eliminado.wml

Una vez que haga esto tendra que, por supuesto, actualizar el documentos antes de añadirlo otra vez. O podria ser removido.

El resto de la historia

Es probable que la descripción anterior sea suficiente para empezar. Tras esto, quizá quiera consultar los siguientes documentos, que proporcionan explicaciones más detalladas e información útil adicional.

Esperamos que encuentre que el trabajo que hemos hecho haga que la traducción de las páginas sea tan sencilla como sea posible. Como ya hemos mencionado, si tiene alguna pregunta, puede hacerla en la lista de correo debian-www.