Visualización de archivos TMX en formato tabla

Hola a todos:

Ya no sé si pedir perdón por la falta de inactividad o directamente anunciar que echo la persiana y despedirme, la verdad, :P. En los últimos meses he estado tan liado que no he podido dedicar nada al blog en términos de producción de contenidos (pero sí he continuado respondiendo preguntas y echando una mano por privado). Aunque no puedo prometer que esto vaya a cambiar, el otro día necesitaba hacer un par de cositas con una memoria de traducción (TM) en tmx y creo que esto podría resultar práctico a cualquiera, así que lo tomaré como excusa para escribir un post nuevo.

El tema en cuestión es que hace unos días necesitaba mostrar el contenido de una TM en tmx de una forma visual, de manera que una persona sin conocimientos técnicos fuese capaz de interpretar y analizar sin problemas y rápidamente el contenido disponible en este tipo de formato bilingüe, que habitualmente tiene un aspecto parecido a esto.

Ejemplo de tmx

Para conseguirlo, se me ocurrió utilizar unas reglas de transformación (xslt) para que, tras aplicar unos cambios sencillos, al abrir el archivo de la TM se abra directamente en el navegador de Internet predeterminado con un aspecto parecido a este.

TMX display

He adjuntado a este post (TMX-XSL display) un archivo tmx de muestra y el archivo para poder visualizarlo como si fuese una página web en un navegador web (TMX_to_HTML.xsl). El procedimiento que se describe a continuación debería ser válido para prácticamente cualquier TM en TMX (de lo contrario, avisad, por favor):

1) Copiar el archivo TMX_to_HTML.xsl a la misma carpeta donde está el archivo TMX. Por ejemplo, si tenemos el archivo TMX en el escritorio (C:UsersAMADesktoptestTM.tmx) habrá que copiar el archivo de transformación al escritorio también (C:UsersAMADesktopTMX_to_HTML.xsl).

2) Cambiar la extensión del archivo tmx a xml. Por ejemplo, si el archivo tmx se llama testTM.tmx deberíamos renombrarlo a testTM.xml.

3) Abrir el archivo renombrado (por ejemplo, testTM.xml) en un editor como el Bloc de notas o Notepad++.  Añadir la siguiente línea <?xml-stylesheet type=”text/xsl” href=”TMX_to_HTML.xsl”?> justo después de la primera línea del archivo con la declaración de XML (<?xml version=”1.0″ encoding=”utf-8″?> en el ejemplo). Tras hacer el cambio, guardar el archivo. Cerrar el editor de texto.

Cambio en TMX

4) Abrir el archivo TMX_to_HTML.xsl con el editor y situarse en las líneas 18 y 19. En ellas es necesario cambiar los códigos lingüísticos para el source y target (en el ejemplo, ‘en-GB’ y ‘es-ES’) por lo que tengamos en nuestra TM en formato TMX.

Cambio en TMX 2

Para comprobar el código lingüístico de source y target, podemos abrir el archivo TMX en el editor y fijarnos en los códigos de idioma en cualquier unidad.

Cambio en TMX 3

Para resumir, lo que hay que hacer es garantizar que los códigos de la TM en tmx y el archivo de transformación (xsl) casan. Tras actualizar el archivo TMX_to_HTML.xsl con los códigos lingüísticos correspondientes, guardamos el archivo.

5) Localizar el archivo que acabamos de guardar y abrirlo con el navegador de Internet (por ejemplo, Firefox).

Tras abrirlo, si las lenguas de tmx y xls casan como se ha explicado en el paso 4) y ambos archivos se encuentran en el mismo directorio o carpeta, el contenido de la TM en TMX debería verse como una tabla en el explorador (si la TM es gigantesca, tardará en abrir).

¿Cómo funciona esto?

Tal y como indica la Wikipedia, las XSLT o Transformaciones XSL son un estándar de la organización W3C que presenta una forma de transformar documentos XML (en el paso dos cambiamos la extensión de archivo a .xml teniendo en cuenta que tmx es un estándar basado por sí mismo en xml). En este caso, lo que hacemos es usar unas reglas XLT para crear una estructura básica de tabla en HTML y finalmente, dentro de las celdas incluir la información de texto source y target de cada una de las unidades de traducción que hay en el TM en TMX.

Para extraer cada una de esas unidades, en el documento XLS se ha especificado una regla que indica que para cada unidad de traducción o tu de la TM (<xsl:for-each select=”tmx/body/tu”>) se busquen específicamente, por una parte, el texto source (<xsl:value-of select=”tuv[@xml:lang=’en-GB’]”/> porque en-GB es la lengua de partida) y se incluya en la columna para el source y, por otra, el texto target (<xsl:value-of select=”tuv[@xml:lang=’es-ES’]”/>, porque en el ejemplo, es-ES es la lengua de destino) y se incluya en la columna para el target.

En realidad, más allá de los archivos en sí, creo que lo más importante es realmente entender cómo funciona la transformación del archivo, cómo se navega a través de la estructura de la TM en TMX para finalmente extraer y mostrar solo la información deseada (para más información sobre cómo moverse por los elementos de la TMX o de cualquier XML, recomiendo leer este tutorial de XPath de w3schools).

Ahora mismo, el proceso con estos archivos es bastante manual, pero creo que para aprender y consolidar el conocimiento y las ideas es válido. Si tengo algo tiempo, intentaré crear una pequeña aplicación para que todo sea más sencillo, pero mientras tanto, espero que la explicación y los archivos de muestra os sirvan.

Sin más, un abrazo.

¡Y espero tardar menos en escribir el próximo post!

– Archivos de ejemplo TMX-XSL display.

– Nota: los códigos lingüísticos aceptados por la mayoría de las CAT son los de Microsoft, disponibles aquí: http://msdn.microsoft.com/en-us/goglobal/bb896001.aspx

– Recomendación musical: Jimi Goodwin (el cantante de The Doves) ha publicado single en solitario, titulado Oh!Whiskey, que podéis ver en http://www.youtube.com/watch?v=HlY_fg65CVQ.

Cambio de variedad lingüística (locale) y dirección de una TM

Saludos a todos, estimad@s lector@s:

Os cuento. En las últimas semanas he estado ejerciendo como formador y asesor de procesos y herramientas de traducción asistida por ordenador (TAO, o CAT por las siglas en inglés) para una empresa de traducción. Cuando hemos visto la gestión de memorias de traducción (TM por las siglas en inglés), me han planteado dudas sobre cómo cambiar la combinación de idiomas, usar las TM en ambas direcciones, etc.
Esta serie de preguntas enlazan con otras consultas privadas que he recibido a través de este blog-consultorio, en las que se me planteaban problemas similares. Bueno, pues atajemos los dos problemas principales a los que he respondido en esta materia: cómo cambiar la variedad de un idioma (locale o language flavour en el mundillo de la localización [L10N]) y cómo invertir la combinación lingüística de una TM (para pasar, por ejemplo, la combinación inglés-español a español-inglés).

Para mostrar cómo solucionar estas dos cuestiones concretas he grabado un par de vídeos en los que utilizo, por una parte, memorias en formato .tmx (por ser interoperables en varias plataformas) y, por otra, Wordfast Classic (versión 6) como herramienta de trabajo para la inversión lingüística, al tratarse de una herramienta que puede descargarse gratuitamente (además, dos de las personas que me plantearon la duda sobre el cambio de locale trabajaban con Wordfast). No obstante, tras los comentarios recibidos, el uso de Olifant también se presenta como una alternativa muy interesante (esta última frase se ha añadido para mejorar el post con el feedback de los lectores).

Cambio de locales en una TM

En L10N, el concepto de locale tiende (recalco lo de tiende, puesto que en realidad engloba muchas más cosas) a identificarse automáticamente con la variedad específica de un idioma. Por ejemplo, en el caso del inglés, este se divide en diferentes locales específicos identificados con códigos informáticos como ‘en-gb’ para inglés de Reino Unido, ‘en-us’ para inglés de EE. UU., ‘en-au’ para inglés de Australia, etc. La cuestión radica en que en ocasiones y por diferentes motivos se necesita cambiar una TM para que los locales se adapten al de un archivo que hemos recibido para traducir. En el ejemplo que se muestra en el vídeo hay que pasar una memoria en .tmx de inglés de EE. UU. y español de España a inglés de Reino Unido y español de México.
En el mercado hay muchas herramientas de TAO que te permiten elegir el locale concreto al importar desde formatos como .tmx (en este sentido el asistente de TM de Déjà Vu X2 es realmente práctico y el módulo de gestión de TM de SDL Trados Studio ofrece gran flexibilidad al importar memorias en .tmx). No obstante, al hacer los cambios manualmente con un editor de texto plano aprendemos un procedimiento que podemos emplear con independencia de la plataforma que usemos (algo realmente práctico cuando trabajas gestionando proyectos de diversa índole).
Bueno, aquí va el vídeo del tutorial sobre el cambio de locales en una TM en .tmx:

Inversión de los idiomas de una TM

En ocasiones, y especialmente cuando se trabaja, por ejemplo, en una oficina en la que se traduce con una combinación lingüística en ambas direcciones (traducción directa e inversa de inglés y español, por ejemplo) resulta interesante utilizar como referencia una misma TM y adaptar su sentido (directo o inverso) en función de las necesidades. Me ha parecido sorprendente que, tras echar un vistazo a varias plataformas de TAO potentes, no he encontrado nada tan práctico y rápido como la solución que puede ofrecer Wordfast: abres una TM en .tmx, pulsas en un par de botones para invertir el sentido de la combinación lingüística y, a continuación, exportas la nueva TM. Todo en menos de un minuto. En el resto de herramientas habitualmente hay que seleccionar muchos más parámetros, hacer ajustes, etc. Total, que acabas perdiendo bastante tiempo para algo que debería ser cuestión de minutos.
En el ejemplo que se muestra en el vídeo a continuación se utiliza la TM en .tmx con los nuevos locales creada en el apartado anterior para invertir el sentido de inglés de Reino Unido a español de México a español de México a inglés de Reino Unido.
Aquí va el vídeo:

Bueno, espero que os resulten prácticos este par de procedimientos rápidos y gratuitos, sobre todo a aquellos que no sólo traducís y gestionáis sino que además hacéis de ingenieros lingüísticos sobre la marcha.
Un saludo,

Álvaro

Recomendación musical: Kelly Jones de Stereophonics con el padrino del mod Paul Weller y Ronnie Wood de los Rolling Stones que se juntan para homenajear a los Beatles con Don’t let me down.

Creación de TM en tmx con material disponible para CAT (memoQ, SDL Trados Studio)

En los últimos meses he recibido varias consultas de algunos lectores que se inician (o no tanto) en el mundo de la traducción y me preguntan cómo crear una TM a partir de documentos que ya tienen disponibles. En la mayoría de los casos, se trata de usuarios que no quieren todavía realizar el desembolso en una herramienta CAT de las potentes (SDL Trados Studio, Deja Vu, MemoQ, Accross, etc.), sino que quieren empezar a probar otros sistemas con material de trabajo real.

Mi respuesta siempre ha sido la misma: usa WinAlign u otro alineador para crearte una TM con los documentos equivalentes que ya tienes en inglés y español y así poder comenzar a trabajar. La cuestión es que creo que mi respuesta no ha sido lo suficientemente concreta, o no permite que muchos usuarios puedan empezar a trabajar, así que he decidido ser más explícito y ofrecer una solución más tangible a través de esta entrada y de  los vídeos adjuntos.

Mi propuesta pues para crear la TM es usar la combinación de herramientas más sencilla (y económica) que se me ha ocurrido para empezar: Wordfast y Plus Tools. Plus Tools (Ptools) es una suite de complementos GRATUITA para Wordfast (que también es gratuito hasta alcanzar una cierta cantidad de unidades de traducción) pero que en realidad nos va a servir para nuestro propósito por dos motivos: 1) al integrarse en Word, resulta sencilla y accesible para cualquier usuario y 2) crea una TM que a través de WF podemos exportar a tmx, de forma que podremos importarla luego a cualquier herramienta CAT* que queramos (en el ejemplo, usaré memoQ). Sin más dilación, manos a la obra, alineemos los documentos, creemos la TM e importémosla. Aviso: he usado dos textos de la Red de cuya calidad lingüística no me hago responsable.

Pasos:

1)      Descarga e instala Plus Tools y Wordfast en Word (lee los manuales para hacerlo, es básicamente cargar una plantilla en Word).

2)      Alinea los documentos. Alinear es en realidad un ejercicio de “unir con flechas” del texto en inglés y en español. Dado que a veces el sistema automático de Plus Tools no es perfecto, puede que haya que corregir algunas frases, tal y como se ve en el vídeo. Consulta el manual para ver el funcionamiento, pero vamos, que es muy sencillo e intuitivo.

3)      Crea la TM. Sigue las instrucciones que hay al principio del documento de la alineación para crear la TM. A continuación abre esta TM en Wordfast y expórtala a tmx.

4)      Abre la herramienta CAT que quieras utilizar para traducir, en mi caso MemoQ. Desde el módulo de TM, usa los comandos correspondientes para crear una TM con la misma combinación de idiomas del archivo TMX (en el ejemplo eso ya está hecho) y, a continuación, importa la TM en TMX a tu nueva TM del programa CAT.

Aquí os dejo los tres vídeos del proceso para memoQ:

1. Alineación y creación de TM.

2. Exportación a tmx vía WF.

3. Importación de TM en tmx a CAT.

Tras completar estos pasos, tenemos una TM operativa en cualquier programa de CAT que queramos utilizar y, como vemos en el vídeo, funciona perfectamente.

Bueno, eso es todo. He tratado de hacerlo lo más sencillo que he podido para que la próxima vez que queráis crear una TM desde cero mediante alineación de forma GRATUITA, no os resulte complicado.

* En realidad, la gran mayoría de las herramientas CAT tienen su propio alineador. Yo propongo el de Plus Tools porque es gratuito y, si usas herramientas gratis tipo Omega T, es el más sencillo para crear TM en tmx. No obstante, los de plataformas de pago, son más potentes (a mí me gusta WinAlign de SDL Trados).

– Recomendación musical: como no podía ser de otra forma, The Death of You and Me, la presentación en solitario de Noel Gallagher.