# Guía de Traducción de Moodle

Traducir Moodle no es muy difícil, pero es bueno que conozcas unas cuantas cosas antes de empezar.

## Estructura de un paquete de idioma de Moodle

Todos los paquetes de idioma de Moodle están ubicados en el directorio lang, con cada idioma en un único directorio nombrado con la abreviatura del idioma (en, fr, nl, es ...).

Todos los ficheros principales están es este directorio, con la extensión .php (p.ej. moodle.php, resource.php etc). Estos ficheros contienen frases cortas, denominadas "cadenas".

También debería haber algunas carpetas que contienen páginas .html:

- help: Contiene los archivos de ayuda de contexto, que se muestran cuando seleccionas los iconos de ayuda de Moodle.
- docs: Contiene las páginas de documentación básica (e.g., esta misma página).

## Creando un paquete de idioma completamente nuevo

Si tu idioma no está todavía soportado por Moodle, o si simplemente quieres hacer alguna personalización de los textos de tu sitio, es posible que quieras comenzar una nueva traducción.

Todo lo que necesitas hacer es crear una nueva carpeta en el directorio lang utilizando el código de dos letras de tu idioma. Puedes encontrar estos códigos estándar en el archivo lib/languages.php. Si estás haciendo una traducción local de otro idioma existente usa el código de ese idioma con un guión bajo y otras dos letras con significado para esa versión local (e.g., pt para Portugués y pt_br para la variación Brasileña del paquete de idioma Portugués). Si estás haciendo una versión codificada en Unicode, añade _utf8 al final (p.ej. sr_utf8).

Después, crea en tu nueva carpeta el archivo "moodle.php" introduciendo las siguientes líneas:
`<?PHP
$string['thischarset'] = 'iso-8859-1';
$string['thisdirection'] = 'ltr';
$string['thislanguage'] = 'new language pack';
?>`
o copia el fichero moodle.php desde otro idioma a tu nuevo directorio. El que existe en el directorio "en" es normalmente el mejor, aunque no tiene demasiada importancia ya que lo que vas a hacer es modificarlo completamente. Creando el fichero moodle.php por tí mismo, tiene la ventaja de que así empezarás con un paquete de idioma completamente vacío y limpio.

Ahora estás preparado para empezar a insertar nuevas cadenas editando tu idioma... mira más adelante para obtener detalles sobre esto.

Para un paquete de idioma nuevo, lo primero que necesitas hacer es editar la cadena "thischarset" en moodle.php. Debe contener un juego de caracteres válido para tu idioma. Después de haber modificado esa cadena, guarda el fichero moodle.php, y recarga la página. Entonces podrás continuar con el resto de las cadenas.

## Editando un paquete de idioma existente

### Haciendo pequeñas personalizaciones

Si únicamente quieres cambiar unas pocas cadenas para modificar tu sitio a tu gusto, ¡no edites uno de los paquetes de idioma estándar!. Si haces ésto, tus cambios serán borrados la próxima vez que actualices tu servidor con una nueva versión de Moodle.

En lugar de eso, usa las intrucciones que ya hemos comentado sobre cómo crear un nuevo paquete de idioma, y configura el idioma "padre" (en moodle.php) a aquél que sea más parecido al tuyo. Por ejempo, un buen nombre para una versión local del idioma español podría ser "es_local", y el idioma padre podría ser "es".

Para que todos los usuarios de tu sitio vean este nuevo paquete, recuerda que tienes que seleccionarlo como el idioma del sitio y, si quieres, restringir la lista de idiomas disponibes en Administración >> Configuración general.

### Traduciendo los ficheros del entorno de Moodle (los archivos de "cadenas")

1. Accede a tu servidor Moodle como administrador.
2. Navega a Administración >> Configuración >> Idioma, que es la página de administración de los idiomas.
3. En esta página puedes elegir tu idioma del menú, entonces selecciona "Comparar y editar el presente idioma".
4. Deberías ver unos formularios que puedes editar para cada fichero. Si no puedes, tienes que comprobar que esos ficheros son accesibles en modo escritura; es posible que tengas que cambiar sus permisos.
5. Los formularios constan de tres columnas. La primera es el nombre de la cadena, la segunda es la cadena en Inglés y la última es la traducción en el idioma actual.
6. Edita las cadenas sin traducción de cada fichero (aparecen resaltadas en color), sin olvidar seleccionar el botón de "Guardar Cambios", al final de cada formulario.
7. Está bien dejar cadenas en blanco - Moodle simplemente utilizará las cadenas definidas en el idioma "padre". Puedes definir el idioma "padre" en el fichero moodle.php, en caso contrario la traducción en Inglés siempre es utilizada por defecto.
8. Una forma rápida de detectar todas las cadenas sin traducción es utilizar el botón "Comprobar cadenas perdidas". Deja todas las cadenas no traducidas completamente en blanco o esta utilidad no funcionará.

### Traduciendo la ayuda y los ficheros de documentación

Todavía no existe ningún editor en Moodle para traducir los archivos de ayuda, pero en realidad no es nada difícil hacerlo. Es importante utilizar el paquete de idioma en como paquete de referencia. Copia un fichero de ayuda desde el idioma en y pégalo en la misma situación (y con el mismo nombre) en tu propio paquete de idioma. Entonces emplea un editor de textos plano para traducir el fichero (normalmente no hay códigos complicados, solo unas pocas etiquetas HTML). (NO UTILICES UN PROCESADOR DE TEXTOS para escribir los ficheros de ayuda porque estos programas añaden un montón de "basura" a los ficheros).
No dejes archivos de ayuda sin traducir en tu paquete del idioma.

Ten cuidado de escribir las páginas de ayuda para que sean compatibles con XHTML. Básicamente esto significa que:

- Todas las etiquetas deben ser cerradas: <p>lalala</p>
- Todos los elementos deben estar anidados: <p> lalala <em>lalala</em> </p>
- Todos los elementos y atribuos deben ir en minúsculas.
- Todos los atributos deben ser escritos de forma completa y con comillas : <p align="right"> lalala </p>
- Los elementos vacíos deben terminar con />: <br /> <hr />. Debes añadir un espacio extra antes del carácter "/".
- Cada <img debe tener un alt="" (puede estar vacío) y debe ser cerrado como otros elementos vacíos con un espacio y />, como en <img alt="" src="picture.gif" />
- <?= y <? tienen que ser <?php
- No debería haber ninguna etiqueta font. <p><em> <h1> <h2> etc deberían ser suficiente para las páginas de los idiomas...
- El nombre del idioma en el paquete ($string['thislanguage'] en moodle.php) debe utilizar generalmente la "Unicode Numeric Character References" (NCR) si es posible, porque esto permite al nombre funcionar en cualquier contecto de codificación (mira el idioma Chino como ejemplo).

Ninguno de los ficheros en la carpeta "help" necesita etiquetas doc type, html, body, head ya que son añadidas automáticamente por el fichero help.php. Dicho guión se encargará de construir las páginas de ayuda correctamente. ¡Esto significa que no hay demasiado espacio para la creatividad! Se fiel al ejemplo en inglés.

Los ficheros en la carpeta de documentación deben ser compatibles XHTML, incluyendo el doc type, header etc.

Seleccionando el botón "Revisar cadenas ('strings') perdidas" en la página de administración de idiomas también te aparecerán los ficheros no traducidos. Si te falta alguno de ellos, Moodle utilizará los definidos en el idioma "padre" en su lugar, así que no dejes copias de ficheros de ayuda sin traducir en tu paquete de idioma. o este sistema no funcionará.

## Enviando tu paquete de idioma al proyecto Moodle

Compartir tu traducción en Moodle ayudará (¡seguro!) a otras personas que hablan tu idioma. Tu trabajo será incluido en versiones posteriores de Moodle.

Simplemente comprime todo tu nuevo directorio en un fichero zip y envíalo por correo electrónico a translation@moodle.org.

Te responderemos con más detalles.

Lista de Comprobaciones antes de envíar traducciones

- No hay archivos vacíos?
- No hay archivos o cadenas sin traducir?
- Los ficheros de ayuda no han sido editados con un procesador de textos?
- El archivo README contiene el idioma, el nombre y la dirección de correo del traductor?
- El nombre de la carpeta es el apropiado para Moodle(compruébalo en moodle\lib\languages.php)?
- Funciona el paquete del idioma sin errores en un servidor de pruebas?
- Si la cadena "thislanguage" contiene letras no latinas, han sido escritas utilizando la notación NCR?
- Son todos los archivos de ayuda y la cadenas válidos según la especificación XHTML?

## Mantenimiento de un paquete de idioma estándar

Si realizas este trabajo de forma habitual en Moodle (i.e., eres el responsable o colaborador oficial del idioma), lo mejor es utilizar el CVS de Moodle para que puedas tener siempre la última versión actualizada de Moodle y puedas guardar tu trabajo directamente en el proyecto Moodle. Puedes ponerte en contacto con nosotros en translation@moodle.org si necesitas ayuda para configurarlo.

También deberías suscribirte al Foro idiomas para conocer las noticias y discusiones que afectan a las traducciones.

Por último, para estar informado de los cambios en el proyecto es también una buena idea suscribirse a la lista de correo del CVS (moodle-cvs). Te ayudará a mantener tu traducción lo más actualizada posible con la versión en Inglés.

Documentación de Moodle

Version: $Id$