Translate Toolkit & Pootle

Tools to help you make your software local


Historia de Translate Toolkit

Esta es una corta historio de Translate Toolkit. Está escrito de forma que aquellos que encuentren problemas en el programa pueden entender su evolución y dirección.

Origen

Toolkit fue creado por David Fraser mientras trabajaba para Translate.org.za. El objetivo inicial de Translate.org.za era traducir KDE a los idiomas de Suráfrica, una labor basada en PO. El siguiente proyecto fue traducir Mozilla, que usaba una combinación de archivos DTD y «.properties». El proyecto Mozilla usaba una herramienta llamada Mozilla Translator, que tenía un funcionamiento básico, aunque sin las funcionalidades de una herramienta como KBabel, usada para las traducciones de archivos PO. La ventaja era que los traductores no tenían que aprender el uso de herramientas nuevas, que las traducciones existentes se podían cohesionar y que los archivos resultantes, siendo bilingües, facilitarían la actualización y gestión de las traducciones.

Así nació lo que inicialmente se llamó mozpotools.

Crecimiento

El primer problema con las herramientas era que existía la posibilidad de corromper traducciones de Mozilla. Era una combinación del hecho de que los traductores traducirían variables como &browserName frecuentemente, y que Toolki había desarrollado una forma de plegar etiquetas y aceleradores en un sólo campo del archivo PO. Estos errores aparecían como un archivo XML corrupto. Así nació pofilter, que nos permitía comprobar las traducciones en busca de problemas con variables y aceleradores. Su hermana pomerge nos permitía fusionar las correciones con el archivo original. También desarrollamos pocount, que por la primera vez permitía realizar una estimación del volumen de trabajo necesario para traducir un archivo PO.

Expansión

Por supuesto, una vez que conviertes las complejas traducciones Mozilla, te das cuenta que puedes hacer cualqueir cosa. Una adición clave fue el conversor para OpenOffice.org, aunque también añadó archivos TMX, Qt .ts, txt y SXW de OpenOffice.org.

La clave era la conversión de archivos al formato PO para permitir la traducción, el uso de herramientas Gettext y archivos PO existentes.

Pootle

Incialmente, era un proyecto separado que permitía traducir con una interfaz web, aunque rápidamente nos dimos cuenta de que Toolkit, siendo un programa basado en su uso con archivos, ofrecía la infraestructura necesaria para permitir que Pootle fuese una interfaz de Toolkit. Así, se creó una herramienta de traducción web basada en archivos.

Proyecto WordForge

En 2006, con el patrocinio de Open Society Institute (OSI) y IDRC, Toolkit se adapto a varios cambios fundamentales. El primero fue la introducción del concepto de una clase base, del que derivan los formatos de almacenamiento PO y XLIFF. Esto permitió la adaptación de las herramientas para que pudiesen crear archivos XLIFF y PO en su salida. Las herramientas se adaptaron para el trabajo con los formatos principales XLIFF y PO así como formatos derivados de la base de clase. Así, logramos incluir XLIFF, PO, MO y otros formatos.

Otras contribuciones durante esta fase fue la adaptación de Pootle al uso de XLIFF y PO, y la creación de herramientas de gestión de memoria de traducción y creación de archivos de glosario.

Toolkit también se adaptó para tratar con codificaciones, formas plurales y hacer que el escapado fuese más sencillo y consistente en el código. Muchos formatos, aunque no todos, se convirtieron a la clase base.

Pootling se creó como parte del proyecto WordForge, y así como Pootle es una interfaz basada en web para Toolkit, Pootling es una interfaz gráfica de Toolkit.

Proyecto ANLoc

El proyecto African Network for Localisation ofreció la oportunidad de integrar más mejoras al proyecto. Asistimos a las primeras versiones publicadas de Virtaal y varias mejoras en todas las herramientas de traducción.

La compatibilidad con los formatos experimentó una importante mejora con la introducción de varios formatos de archivos bilingües (memorias de traducción de Wordfast, Qt TS, etc), y varios formatos de archivo monolingües («array» de PHP, subtítulos de vídeo, «strings» de Mac OS X, etc).

El futuro

Toolkit continua evolucionando con la meta de mejorar varias areas::

  • Extraer de Pootle las funciones que deberían estar presentes en Toolkit.
  • Limpieza de las clases storage y conversores para que sean intercambiables con XLIFF y PO
  • Limpieza de conversores para que sólo usen funcionalidades de la clase base, y migrar el código de los conversores a la clase storage.
  • Añadir clases storage a medida que sea necesario
  • Optimización donde sea necesario

The toolkit continues to serve as the core for the command line tools and for Pootle. Key new features:

  • Process Management