19/Traducciones

De MoodleDocs
note icon.png Existe documentación diferente para varias versiones de Moodle: Esta documentación es muy antigua y trata sobre versiones de Moodle 1.9 y anteriores. Ya no aplica debido a que CVS ha sido descontinuado. Para ver la documentación moderna para Moodle 2.x consulte Traducción.


Moodle 1.9

Moodle se ha diseñado con el propósito de ser internacional. Cada 'cadena' o 'página' de texto que forma parte de la interfaz se extrae de un conjunto de archivos de idioma.

Estructura de un paquete de idioma de Moodle

Moodle 1.6

Todos los paquetes de idioma de Moodle están ubicados en la carpeta de idiomas (lang), en una carpeta única con el mismo nombre de la abreviatura del idioma (en, fr, nl, es...) A partir de la versión Moodle 1.6, usted encontrará el directorio lang en su carpeta de datos (moodledata) con unos nombres que indican que son paquetes de idioma UTF-8: es_utf8, fr_utf8. El paquete por defecto (en inglés) en_utf8, está creado en moodle/lang, junto con una versión reducida no utf8 (en inglés) para la actualización de 1.5 a 1.6, previa al proceso de transferencia de datos.

Todos los archivos principales están en esta carpeta lang/xx_utf8, con extensiones .php (por ej., moodle.php, resource.php etc.). Estos archivos contienen frases cortas, denominadas "cadenas" (strings). Cada cadena soporta sustitución variable, con el fin de posibilitar el ordenamiento variable en diferentes idiomas.

por ej. $strdueby = get_string("fecha de entrega de tarea", "tarea", userdate($date));

Si una cadena no existe en un idioma particular, entonces se mostrará por defecto su equivalente en inglés.

Existe también una carpeta de ayuda con páginas HTML que ofrecen ventanas emergentes (pop-up) de ayuda sensible al contexto.

En la carpeta install/lang/xx también encontrará algunos paquetes de idioma. Estos paquetes contienen un pequeño resumen de cada paquete original, incluyendo únicamente las cadenas que son necesarias en el proceso de instalación. Estos mini-paquetes son generados automáticamente cada noche por el servidor download.moodle.org y no deben ser modificadas manualmente. Para los traductores esto supone una experiencia un poco "traumática", ya que los cambios realizados en cadenas relacionadas con la instalación no serán visibles hasta que se descargue una nueva versión de Moodle, al menos 24 horas después de haber realizado la modificación en los paquetes oficiales.

Cómo crear un nuevo paquete de idioma

Si su idioma no figura aún entre los disponibles en Moodle, o si simplemente desea personalizar su interfaz, puede comenzar una nueva traducción. Si está comenzando con un nuevo idioma, por favor contacte con Koen Roggemans nuestro Coordinador de Traducciones (translation@moodle.org). También le recomendamos que visite en "Using Moodle" el foro "Languages Forum".

Sólo necesitará crear una nueva carpeta en el directorio de idiomas utilizando el código de dos letras correspondiente. Estos códigos estándar se encuentran en lib/languages.php. Si está llevando a cabo una modificación local de otro idioma, utilice el código de ese idioma, agregue un guión bajo y escriba una extensión significativa de dos letras (e.g. pt para Portugués y pt_br para la variación brasileña del paquete de portugués). Si está haciendo una versión Unicode, agregue _utf8 al final (e.g., sr_utf8). Los paquetes de idioma creados con el nuevo Moodle 1.6 o con Moodle 1.6 en modo Unicode estarán siempre en Unicode, y deberán contener el sufijo _utf8.

A continuación, copie en su nuevo directorio el archivo langconfig.php de otro idioma. La mejor opción es usar el contenido en la carpeta "en_utf8".

A partir de este momento ya puede insertar nuevas cadenas para editar su idioma... más abajo encontrará detalles.

Tenga en cuenta que el nuevo idioma no se visualizará inmediatamente en el menú desplegable si tiene activada la opción "langcache" en Administración/Configuración de Variables.

Moodle 1.6

A partir de Moodle 1.6 sólo se utilizan conjuntos de caracteres UTF-8. Este ajuste está ubicado en una cadena denominada "thischarset" en langconfig.php y no debe modificarse. Todas las demás cadenas de su paquete de idioma tales como la notación de las fechas, la cadena locale, la dirección, etc., están en dicho archivo y pueden ser modificadas en él. ¡Hágalo con cuidado! ;-)

Moodle 1.9

Necesita otorgarse a sí mismo el permiso para editar los paquetes de idioma principales. Por defecto, el administrador únicamente puede editar paquetes de idioma locales. Si usted no es un traductor, deje los ajustes tal y como están o sus cambios se perderán cada vez que actualice los paquetes principales. Para cambiar este permiso, acceda al sitio como administrador, Vaya al bloque Administración, Usuarios, Definir Roles, Administrador, Edirtar role y ajuste la capacidad Editar paquetes principales de Idioma a Permitir.

Edición de un paquete de idioma existente

Realización de pequeñas modificaciones

Si únicamente quiere hacer pequeños cambios en la interfaz para mejorar la apariencia de su sitio, no empiece editando uno de los paquetes de idioma estándar. Si lo hiciera así, los cambios que realice serán sobreescritos la próxima vez que se actualice a una nueva versión de Moodle.

En vez de hacer lo anterior, siga las instrucciones anteriores para elaborar un nuevo paquete de idioma, añada una cadena ('parentlanguage' en langconfig.php (Moodle 1.6) o en moodle.php (Moodle 1.5)) con el código de dos letras del idioma que más se parezca al suyo. Por ejemplo, un buen nombre para una versión local de inglés pudiera ser "en_particular" y el idioma matriz podría ser "en" o "en_us".

$string['parentlanguage'] = 'en';

Usted también debe crear una cadena 'thislanguage' en langconfig.php o moodle.php para su paquete de idioma "en_particular":

$string['thislanguage'] = 'English';

Observe que con Moodle 1.5 y anteriores, para posibilitar que los usuarios de su sitio vean este nuevo paquete, usted deberá seleccionarlo como el idioma del sitio y restringir los idiomas disponibles en Administration >> Configuration >> Variables.

Moodle 1.6

Desde Moodle 1.6 el mejor método para estas personalizaciones es simplemente crear un nuevo directorio llamado "xxx_local" donde xxx es el nombre del idioma que quiere modificar (p.ej.: es_utf8_local o ja_utf8_local). Este nuevo paquete local será comprobado automáticamente con anterioridad al "oficial" de forma que únicamente necesita contener los cambios locales que quiere realizar (no necesita una copia completa del idioma que está modificando ni incluir langconfig.php o moodle.php, únicamente los ficheros y cadenas que desea modificar). Estos idiomas locales no aparecerán en los menús de selección de idiomas y no necesitará modificar ningún ajuste. Son utilizados por Moodle de forma completamente transparente.

El método que utiliza la cadena 'parentlanguage' descrito al principio para Moodle 1.5 todavía funciona, en caso de que desee crear más de una variación de un mismo idioma. En este caso tendrá que incluir las cadenas arriba especificadas en el fichero lanconfig.php y no en el moodle.php que es sólo para Moodle 1.5.

Traducción de los archivos de idioma de la interfaz de Moodle (archivos "cadena")

  1. Regístrese en su servidor Moodle como administrador.
  2. Vaya a Administration >> Configuration >> Idiomas (página de administración del idioma).
  3. En esta página usted puede escoger el idioma del menú, seleccionando luego "Revisar y editar el presente idioma".
  4. Usted verá formularios editables para cada archivo. Si no fuera así, tendrá que asegurarse de que los archivos sean escribibles - quizás tenga que cambiar los permisos de escritura en su carpeta web.
  5. Los formularios consisten en tres columnas, la primera es el nombre de cada cadena, la segunda es esa cadena en inglés, y la última es la traducción en el idioma actual.
  6. Edite las cadenas perdidas en cada uno de los archivos (resaltados en color), recordando pulsar el botón "Guardar cambios" al final de cada formulario.
  7. No hay inconveniente en dejar cadenas vacías: Moodle simplemente usará el idioma original para esa cadena. Usted puede definir el idioma matriz en langconfig.php, de otra forma el idioma inglés será el usado por defecto.
  8. Una forma rápida de ver todas las cadenas perdidas es usar el botón "Revisar cadenas (strings) perdidas". Debe dejar las cadenas sin traducir completamente vacías o esta útil herramienta no funcionará.

Traducción de los archivos de ayuda

Moodle dispone de un editor incorporado para traducir los archivos de ayuda. Utiliza como idioma de referencia el paquete en_utf8. Le recomendamos vivamente que use este editor: le prevendrá contra algunos posibles problemas, le advertirá sobre traducciones antiguas, le señalará (mediante asteriscos) qué archivos están desfasados y preservará el Unicode. Si usted deseara tomar como referencia otro idioma distinto del inglés (lo cual no sería una buena idea), deberá copiar un archivo de ayuda del paquete de idioma de referencia y copiarlo en la misma ubicación de su propio paquete de idioma. Utilice a continuación, para traducir el archivo, un editor de texto plano que soporte Unicode, asegurándose de no modificar el código (i.e., las marcas HTML). NO UTILICE UN PROCESADOR DE TEXTO para escribir los archivos de ayuda: estos programas incorporan demasiada basura. Procure que en su paquete de idioma no queden archivos vacíos o sin traducir.

Ponga especial cuidado en escribir los archivos de ayuda en formato compatible XHTML lo que, en resumen, significa:

  • Todas las marcas deben cerrarse:
    <p>lalala</p>
  • Todos los elementos deben estar anidados:
    <p> lalala <em>lalala</em> </p>
  • Todos los elementos y atributos deben estar en minúsculas.
  • Todos los atributos deben escribirse completos y entrecomillados:
    <p align="right"> lalala </p>
  • Los elementos vacíos deben terminar con />:
    <br /> <hr />
    . Debe añadir un espacio extra antes del símbolo "/".
  • Todas las <img deberán tener un alt="" (puede estar vacío) y deben estar cerradas como cualquier elemento vacío con un espacio y /> como
    <img alt="" src="picture.gif" />
  • <?= y <? deben ser
    <?php
  • No debe haber ninguna marca font.
    <p><em> <h1> <h2>
    etc. (las anteriores recomendaciones deberían ser suficientes para los archivos de idioma)...

Ninguno de los archivos de la carpeta de ayuda necesita marcas de apertura o cierre doc type, html, body, head - están incluídos con help.php. El script cuidará del formateo correcto de las páginas. ¡Esto también significa que no se deja demasiado espacio para la creatividad en HTML! Por favor, remítase al ejemplo en inglés.

Moodle 1.6

Los archivos de la carpeta docs necesitan ser completamente compatibles con XHTML, inluyendo doc type, header, etc. A partir de Moodle 1.6 quedan trasladadas a este wiki.

Al hacer clic en "Revisar cadenas (strings) perdidas" en la pantalla de administración del idioma, usted podrá ver los archivos ausentes. Si éste fuera el caso, Moodle usará en su lugar el idioma original, de modo que no conviene dejar copias de archivos de ayuda sin traducir en su paquete de idioma si desea que esta útil herramienta funcione adecuadamente.

Envío de su paquete de idioma al proyecto Moodle

Compartir su traducción con Moodle asegurará que usted ayuda a otras personas que hablan su idioma. Su traducción estará disponible en futuras versiones de Moodle.

Simplemente comprima el directorio completo del idioma en un archivo zip y envíelo por correo electrónico a translation AT moodle DOT org.

Nos pondremos en contacto con usted para más detalles.

Antes de enviarlo, compruebe que:

  • No hay archivos vacíos.
  • No hay archivos o cadenas sin traducir.
  • Los archivos de ayuda no se han editado con un procesador de texto.
  • El archivo README contiene el nombre del idioma, el nombre y la dirección email del traductor.
  • El nombre de la carpeta contiene el código correcto (revise moodle\lib\languages.php).
  • El paquete de idioma funciona sin errores en un sitio de prueba.
  • Las cadenas y archivos son compatibles con XHTML.
  • El archivo langconfig.php existe y es correcto.

Mantenimiento de un paquete de idioma estándar

Si se le ha encomendado el mantenimiento de un idioma en Moodle, lo mejor es utilizar Moodle CVS de modo que pueda disponer de una versión actualizada de Moodle y pueda con facilidad estar al tanto de sus cambios directamente dentro del proyecto Moodle.

Moodle 1.6

Debería utilizar la lógica para traducir. En lugar de modificar el paquete de idioma dentro de su árbol de código principal -como sucedía en versiones anteriores a Moodle 1.6- deberá modificar el contenido en el directorio dataroot/lang.

  • Compruebe siempre el último código de Moodle.
  • Actualice su sitio utilizando, obviamente, un servidor NON-PRODUCTION.
  • Vaya a su directorio dataroot y verifique el nuevo directorio de idioma del CVS, de este modo en Unix/Linux
  cd moodledata    (for example)
  cvs -z3 -d:ext:me@moodle.cvs.sourceforge.net:/cvsroot/moodle co lang

o así con Tortoise en Windows,

  haga clic con el botón derecho del ratón en la carpeta dataroot, seleccione "CVS Actualizar", 
  CVSROOT field:  :ext:sfusername@moodle.cvs.sourceforge.net:/cvsroot/moodle
  Module: lang
  • Continúe editando idiomas desde Moodle GUI como hacía en versiones anteriores a Moodle 1.6.

Vaya al directorio dataroot/lang y actualice sus cambios en el CVS.

Si realmente desea continuar actualizando los paquetes de idioma de las versiones 1.5.x o anteriores, debería comprimir la carpeta que contiene el idioma y enviarla por email a translation@moodle.org. Las modificaciones realizadas en el CVS en moodle/lang/xx serán trasladadas a lang/xx

Contacte con translation@moodle.org si necesita ayuda sobre esta cuestión.

Traducción de contenidos de un curso Moodle

Moodle 2.x

Paquetes de idioma en Moodle 2.x

Para las versiones 2.0 en adelante de Moodle, las traducciones de Moodle se manejan en AMOS exclusivamente, pues CVS ha dejado de emplearse desde el año 2012.

Versiones de Español

A partir de mediados del 2012, además del paquete de Español internacional por todos conocido, existe una versión de Español de México que toma en cuenta que el Separador decimal es un punto decimal en México, a diferencia de la coma decimal empleada en España y SudAmérica. Este paquete de idiomas tiene muchas más diferencias con el Español internacional, para adaptarlo a la forma de hablar y escribir en instituciones de enseñanza superior de México, pero resulta útil para todos los niveles escolares desde primaria hasta posgrado. Mayores detalles sobre las diferencias entre el Español internacional y el Español de México, y cómo elegir entre estos dos, pueden verse en la página de Español de México.

Ver también