La entrada anterior de Melodía de traducción me sirvió para comentar que, por cosas del destino, en la actualidad llevo a cabo prácticamente todas mis tareas usando memoQ. En esta línea, la entrada que hoy publico versa sobre las vistas de memoQ y su utilidad de cara al trabajo diario, para lo cual recurriré a la ayuda de unos cuantos ejemplos prácticos.

Oiga, ¿pero qué es eso de las «vistas»?

Según la ayuda de memoQ, las vistas son recolecciones de segmentos extraídas de los archivos traducibles mediante distintos filtros o clasificaciones. Dicho de otra forma, las vistas se pueden entender como filtros avanzados que permiten aislar segmentos o fusionar segmentos de diferentes archivos de un proyecto de traducción en función de lo que necesitemos. Aunque más adelante lo veremos con mayor detalle, varios usos prácticos de la vistas van desde la fusión de varios archivos en uno solo hasta la división de un archivo en varios subarchivos para su traducción por parte de varios traductores, ver todos los segmentos con errores de un proyecto, eliminar etiquetas sobrantes (es decir, que no forman parte del segmento de origen) tras la pretraducción de uno o varios archivos —como, por ejemplo, las procedentes de segmentos importados en una memoria de traducción procedentes de un TMX creado con otra herramienta TAO—, comprobar si la traducción de un término (no necesariamente parte de una base de datos terminológica), etc. A nuestro alcance queda, por un tanto, un gran abanico de posibilidades para gestionar nuestros proyectos de un modo más cómodo y productivo.

Otro punto a favor de las vistas es la posibilidad de elegir entre traducirlas directamente con memoQ o exportarlas, bien añadiéndolas al corpus asignado al proyecto o bien como archivos bilingües. Si echamos un vistazo a esta segunda opción (a la que llegamos haciendo clic con el botón secundario sobre la vista y eligiendo Exportar archivos bilingües), vemos que hay tres opciones posibles, como se aprecia en la siguiente captura de pantalla).

Exportación de documentos bilingües en memoQ

Asistente de exportación de archivos bilingües en memoQ

De las tres opciones, el formato MQXLIFF (una variante del estándar XLIFF empleada por memoQ) y el DOC bilingüe (el formato clásico usado por versiones de Trados anteriores a SDL Trados Studio 2009) sirven para poder enviar las vistas a otros traductores que no dispongan de memoQ pero sí de alguna otra herramienta TAO. Por su parte, el RTF a dos columnas es más útil para la revisión de la traducción mediante control de cambios en Word. Sea cual sea el que elijamos, una vez lo recibamos actualizado por parte del traductor o revisor, lo podremos importar de vuelta en memoQ mediante el paso contrario. De esta forma, nos aseguraremos de que las vistas incluyan todos los cambios y, por ende, de que los documentos principales a partir de los cuales obtuvimos las vistas queden también actualizados.

No obstante, hay que tener en cuenta varias cuestiones cuando se trabaja con vistas. En primer lugar, cualquier cambio que se haga en la vista tiene su efecto en los documentos principales de donde procedan los segmentos, con lo cual garantizamos que el proyecto se actualiza constantemente. Por esta misma razón, no es posible abrir los archivos traducibles y sus vistas correspondientes al mismo tiempo, ni realizar cambios en segmentos que ya pertenezcan a alguna vista, como separarlos en varios segmentos o fusionar dos o más segmentos en uno solo (lo que sí se puede llevar a cabo dentro de una vista si los segmentos pertenecen al mismo archivo principal). De esta forma, se busca que la traducción sea coherente tanto en el documento principal como en la propia vista.

Vale, ¿y cómo creo una vista? ¿Y cómo la exporto?

El proceso para crear una vista es bien sencillo. El primer paso consiste en crear un proyecto e importar los archivos que queremos traducir de la forma habitual. Una vez terminado el proceso, vamos a la sección Traducciones, donde veremos todos los archivos que conforman el proyecto. Ahora basta con señalar todos los archivos con el atajo Ctrl + Mayús. + A o, en su caso, solo los que nos interesen dejando pulsada la tecla Ctrl a la vez que hacemos clic con el ratón. Acto seguido, hacemos clic con el botón secundario y, como se señala en la siguiente captura de pantalla, elegimos la opción Crear vista.

Creación de una vista a partir de varios archivos

Creación de una vista a partir de varios archivos

Llegados a este punto, solamente queda elegir las opciones correspondientes en cada caso y dar un nombre a la vista lo más descriptivo posible (por si acaso olvidáramos lo que pretendíamos conseguir con esa vista en concreto). Cuando termine el proceso, la vista recién creada aparecerá en la pestaña Vistas. Si queremos exportar una o más vistas, basta con seleccionarlas, hacer clic con el botón secundario del ratón y elegir la opción de exportación que necesitemos.

Exportación de vistas como archivos bilingües en memoQ

Exportación de vistas como archivos bilingües en memoQ

Algunos casos prácticos

Después de la siempre poco entretenida teoría, llega el turno de pasar a los casos prácticos con las vistas en memoQ con el propósito de entender mejor lo que es posible lograr si recurrimos a ellas. A continuación, os pondré varios ejemplos de diferentes usos de las vistas.

1. Fusionar varios archivos en uno

 
Esta es la opción predeterminada de memoQ a la hora de crear vistas (Solamente pegar los documentos). Es de utilidad para hacer más manejables proyectos formados por decenas de archivos muy pequeños, o bien para evitarnos el tener que enviar muchos archivos a un traductor o revisor externo (lo que podría suponer que alguno se extraviara o se quedara sin traducir o revisar), en especial si no utiliza memoQ. 

2. Dividir un archivo en varios subarchivos

 
Si queremos dividir un archivo en varias partes, tendremos que escoger la opción Dividir documento (como se ve en la captura de pantalla) y crear tantas vistas como partes en que vayamos a dividirlo (es importante comprobar que no nos dejamos fuera ningún segmento). Al contrario que en el primer ejemplo, hay proyectos con archivos muy grandes y plazos ajustados, cuya traducción o revisión la llevarán a cabo varias personas.

División de un archivo en varios partes según el número de segmentos

División de un archivo en varios partes según el número de segmentos

Como nota negativa, no podemos crear partes con el mismo número de palabras de forma fácil —lo cual agilizaría mucho la preparación del proyecto y lo que sí es posible en proyectos gestionados en un servidor con la versión Project Manager—, sino que habrá que jugar con el número de segmento tanto de inicio como de cierre, e ir haciendo el recuento de palabras a medida que creemos las vistas. Sin embargo, otra de las novedades de memoQ a partir de la versión 2014 es que muestra de forma predeterminada el número de palabras de cada archivo en vez del número de segmentos, lo cual puede ser contraproducente para nuestros intereses, pues cabe la posibilidad de que algún segmento se quede fuera de las vistas y, por lo tanto, sin traducir. Para evitar males mayores, si vamos a Opciones > Varios > Mostrar el progreso (%) de la traducción basado en… y marcamos la opción Segmentos (tal y como se muestra en la siguiente captura de pantalla), averiguaremos cuántos segmentos tiene cada archivo y cada vista.

Ver el número de segmentos de un archivo en vez del número de palabras

Ver el número de segmentos de un archivo

 

3. Eliminar etiquetas sobrantes después de pretraducir

 

El siguiente ejemplo resulta práctico cuando pretraducimos archivos con memorias de traducción cuyos segmentos proceden de otras herramientas TAO. Como cada una de ellas tiene su propia forma de «interpretar» el texto y de añadir las etiquetas, a veces me he encontrado con etiquetas en segmentos pretraducidos que no aparecen en el segmento original correspondiente en memoQ. Sin embargo, dado que otra herramienta entendió que debería haber una etiqueta en dicho segmento, la traducción también la tenía, ergo el TMX creado a partir de esa memoria también lo tenía. En el caso de memorias obtenidas con archivos traducidos con Trados, memoQ no suele tener problemas y oculta bastantes etiquetas (siempre que indiquemos que el TMX procede de Trados cuando lo importemos en memoQ), aunque casi siempre detectaremos que alguna se escapa. Si hay un gran número de segmentos con este problema, tener que estar pendientes de borrarlas en memoQ nos llevará mucho tiempo y, además, es posible que se nos pase alguna por alto.

Con el propósito de ilustrar esta situación, he creado un proyecto con tres archivos DOCX muy cortos que había alineado previamente, alineación a partir de la cual he obtenido una memoria en formato TMX que he importado después en la memoria de memoQ asignada a dicho proyecto. El siguiente paso ha consistido en pretraducir los archivos y bloquear las coincidencias del 100 % (pese a que bloquear los segmentos no es estrictamente necesario, yo prefiero hacerlo así). A modo de repaso, a la pretraducción se accede en la pestaña Preparación, botón Pretraducir. Para bloquear los segmentos, tenemos que marcar la casilla Bloquear filas en la pestaña Confirmar/bloquear en la ventana que aparecerá a continuación.

Pretraducción en memoQ

Pretraducción en memoQ

Una vez pretraducidos los archivos, he creado la vista de la forma habitual, aunque en este caso las opciones que me interesaban están en Opciones avanzadas. Dado que he bloqueado los segmentos y que la presencia de etiquetas en el segmento de destino que no se encuentren en el segmento de origen causa un error al intentar obtener los archivos finales, he marcado esos dos delimitadores en la pestaña Estado perteneciente a la sección Filtrar por estado del segmento.

Filtrar por estado del segmento

Filtrar por estado del segmento

La vista resultante consta, como se puede ver en la captura de pantalla de la izquierda, de tres segmentos. Para poder borrar las etiquetas, es necesario desbloquearlos (en su caso). Para tal fin, seleccionamos todos con la combinación Ctrl + Mayús. + A y luego los desbloqueamos con el atajo Ctrl + Mayús. + L. En este punto, podemos quitar todas las etiquetas de un plumazo si pulsamos la combinación Ctrl + F8 o si vamos a la pestaña Editar, grupo Etiquetas, menú Comandos de etiqueta, opción Quitar todas las etiquetas (véase la segunda captura de pantalla a continuación).

Vista de segmentos bloqueados con errores

Vista de segmentos bloqueados con errores

Quitar todas las etiquetas de varios segmentos

Quitar todas las etiquetas de varios segmentos

Si abrimos los archivos principales de donde proceden los segmentos, como en la siguiente captura de pantalla, notaremos que los segmentos ya no tienen las etiquetas procedentes del TMX.

Segmento tras borrar todas las etiquetas

Segmento tras borrar todas las etiquetas

Gracias a esta vista, hemos solucionado de una forma muy rápida lo que habría sido una tortura, en especial en proyectos grandes. Solo queda volver a bloquear los segmentos (en su caso) para poder seguir trabajando con normalidad y sin mayores preocupaciones.

 

4. Bloquear segmentos en destino formados solo por etiquetas

 

Al importar un archivo, puede darse el caso de que memoQ cree segmentos formados solamente por etiquetas, los cuales, como es lógico, se quedan igual en la traducción. Con el fin de preservar la integridad del archivo y de asegurarnos de que podremos exportarlo sin problemas una vez hayamos acabado la traducción (en especial si se la vamos a encargar a otro traductor), resulta interesante el crear una vista que contenga solo este tipo de segmentos, que después bloquearemos para que no sea posible modificarlos.

memoQ permite crear vistas que contengan solo los segmentos con etiquetas en el segmento de destino. Si hemos pretraducido los archivos como en el tercer ejemplo pero no hemos llegado a eliminar las etiquetas, estos segmentos pretraducidos también aparecerán en esta nueva vista. Si queremos asegurarnos de que aparezcan los segmentos formados exclusivamente por etiquetas, podemos añadir la opción de que la vista incluya segmentos no bloqueados —lo cual funcionará, como es obvio, si hemos bloqueado los segmentos al pretraducir—. Esta captura de pantalla muestra mejor cómo crear esta vista.

Filtro para obtener solo segmentos no bloqueados

Filtro para obtener solo segmentos no bloqueados

Filtro para obtener solamente segmentos de destino con etiquetas internas

Filtro para obtener solamente segmentos de destino con etiquetas internas

El resultado de crear la vista, elegir todos los segmentos y bloquearlos es el que se aprecia en la siguiente captura de pantalla:

Segmentos formados únicamente por etiquetas tras ser bloqueados

Segmentos formados únicamente por etiquetas tras ser bloqueados

 

5. Aplicar expresiones regulares en determinados segmentos

 

Para la última aplicación práctica de las vistas que veremos en esta entrada, vamos a partir de varios supuestos:

  1. Los archivos de origen contienen segmentos con etiquetas personalizas que aparecen como texto normal porque no hemos creado un filtro personalizado para dichos archivos;
  2. Queremos convertir ese texto normal en etiquetas de memoQ para que no lo podamos modificar con la ayuda de expresiones regulares;
  3. Por las razones que sean, solo queremos aplicar las expresiones regulares en ciertos segmentos o en ciertos archivos.

Así pues, procederemos a crear una vista que aísle solamente segmentos con etiquetas personalizadas de archivos concretos de un proyecto. A continuación, aplicaremos las expresiones regulares a la nueva vista para convertir ese texto normal en verdaderas etiquetas de memoQ.

En primer lugar, importamos los archivos de origen del modo normal y, al abrir uno de ellos, veremos que hay unas etiquetas personalizadas que memoQ ha dejado como texto traducible:

Etiquetas como texto normal en memoQ

Etiquetas como texto normal en memoQ

Así pues, vamos a suponer que no queremos cambiar ese texto en todos los archivos. Bastará, en este caso, con seleccionar los archivos en la lista de documentos y crear una vista usando como criterio que se muestren solamente los segmentos en cuyo idioma de origen estén las etiquetas que queremos convertir. El siguiente paso es abrir la vista recién creada para después usar las expresiones regulares con el objetivo de indicar a memoQ que tiene que tratar esos textos como etiquetas. Para tal fin, vamos a la pestaña Preparación, sección Otro y opción Regex Tagger.

Regex Tagger en memoQ

Regex Tagger en memoQ

Aparecerá ventana donde tendremos que escribir la expresión regular. En este caso, dicha expresión es muy sencilla: <.*?>. El campo Mostrar texto lo dejaremos tal cual aparece. En el recuadro Resultado se puede observar la vista previa de los elementos a los que engloba la expresión regular, los cuales están marcados en color rojo para su mejor identificación.

Reglas mediante expresiones regulares en memoQ

Reglas mediante expresiones regulares en memoQ

A continuación, pulsamos Aceptar y enseguida notaremos el efecto de la expresión regular, tal como se ve en la siguiente captura. Si abrimos el documento principal a partir del cual creamos la vista, descubriremos que memoQ ha aplicado los cambios directamente en los mismos segmentos.

Etiquetas tras aplicar las reglas de expresiones regulares

Etiquetas tras aplicar las reglas de expresiones regulares

Cómo trabajar con vistas usando otras herramientas TAO

Para terminar con esta entrada, vamos a describir cómo exportar una vista a un formato compatible con otras TAO, como SDL Trados Studio 2014. En primer lugar, seleccionaremos la opción Exportar archivos bilingües y, entre las tres opciones disponibles, elegiremos MQXLIFF y desmarcaremos las tres casillas para asegurarnos de la plena compatibilidad con otras herramientas TAO.

Obtendremos así un archivo MQXLIFF que se traducirá con la herramienta que prefiramos. Así aparecería en SDL Trados Studio 2014:

Archivo MQXLIFF abierto en SDL Trados Studio 2014

Archivo MQXLIFF abierto en SDL Trados Studio 2014

Lo que viene es muy sencillo: traducimos el texto y lo exportamos de vuelta al formato original en función de la TAO que hayamos usado. Después, si todo va bien, lo importamos en memoQ y automáticamente memoQ detectará que se trata de una actualización y así lo mostrará, como vimos anteriormente. Si lo abrimos, veremos la traducción actualizada:

Archivo actualizado tras importar la traducción de otra TAO

Archivo actualizado tras importar la traducción de otra TAO

Conclusiones

Si habéis llegado hasta aquí, seguro que os habréis dado cuenta del tremendo potencial de las vistas en memoQ. Esta entrada solamente pretende mostrar su gran utilidad, pues las vistas sirven para multitud de fines, se pueden personalizar en función de nuestras necesidades en un proyecto en concreto, nos pueden sacar de más de un apuro y evitarnos quebraderos de cabeza. Además, se pueden combinar con Word y otras herramientas TAO sin apenas tener problemas.

Y vosotros, ¿las usáis en vuestros proyectos? ¿Para qué fin? No seáis tímidos: compartid vuestra sabiduría en un comentario.:)

¡Hola a todos!

Varios de vosotros me habéis preguntado desde la última vez que actualicé el blog si lo había abandonado, a lo que yo respondía algo como: «tengo varias entradas en mente, pero me falta un hueco para escribirlas». Si bien es cierto que, pensándolo bien, ha pasado demasiado tiempo desde mi última entrada, en mi fuero interno estaba completamente convencido de que algún día volvería a él. Y aquí me tenéis.

Mucho ha cambiado desde entonces, en especial en el campo profesional, donde esa parte friki de mí mismo amante de trastear con todo lo relacionado con la informática aplicada a la traducción se ha ido abriendo paso poco a poco. Este progreso ha supuesto que, más que traducir (aunque sin dejarlo de lado), en estos momentos dedique gran parte de mi jornada laboral trabajando para varios clientes sumergido en la parte técnica de la traducción. Entre otras muchas tareas, me encargo de la gestión y actualización de memorias de traducción, de la creación de proyectos y de filtros para la traducción de diferentes tipos de archivos en diversas herramientas TAO, de la comprobación de archivos finales y del testing, en especial de cursos web.

Asimismo, dado que mis principales clientes trabajan con memoQ, esta herramienta TAO se ha convertido en la compañera infatigable de mi trabajo cotidiano. A fuerza de lidiar con ella día sí y día también, he ido aprendiendo varios secretos —o trucos, si los queréis llamar así— que he ido guardando en la cabeza (y, de vez en cuando, apuntando en papeles sueltos que luego extravío) a medida que los descubría, con la esperanza de que, cuando tuviera tiempo, pudiese compartirlos en este blog.

Estos días, aprovechando que he tenido un poco de tiempo, he pensado que ya iba siendo hora de escribir esta primera entrada sobre memoQ. Antes de ir al meollo del asunto, explicaré brevemente, por si alguien no lo conoce, qué es memoQ y, además, os dejaré un minitruco para ocultar el número de licencia en dicho programa —enseguida sabréis los motivos por los cuales podríamos recurrir a ello—.

Sobre memoQ

memoQ es una herramienta TAO desarrollada por la empresa húngara Kilgray que, de forma similar a Cafetran Espresso 2014, SDL Trados Studio, Wordfast Pro, Déjà Vu X y otras alternativas menos conocidas, integra en una misma ventana los documentos que se van a traducir divididos en segmentos, las correspondencias de una memoria de traducción y las entradas de una base de datos terminológica, en su caso. Se estructura en torno al formato MEMOQXLIFF (una variante del estándar XLIFF con propiedades añadidas por Kilgray), al cual convierte de forma interna los archivos traducibles, sea cual sea el formato de origen.

La última versión, la 2014 R2, se caracteriza, entre otras novedades, por el cambio de su interfaz clásica por otra que clasifica las funciones del problema mediante la cinta de opciones, que vimos por primera vez en Microsoft Office 2007, lo que ha suscitado críticas tanto positivas como negativas entre los usuarios de memoQ. En su página web podréis ver con mayor detalle todo lo que puede ofrecer.

Cómo ocultar el número de la licencia

Al abrir memoQ, en la esquina superior derecha se puede ver el número de licencia del usuario. Si, al igual que yo, vais a enseñar vídeos o capturas de pantalla desde vuestro ordenador, o bien hay personas que pueden acceder a vuestro ordenador; y si queréis que ningún gorrón listillo pueda copiarlo y usarlo en su copia de memoQ (cada licencia permite usar el programa en dos ordenadores), seguid estos pasos, que en su día hallé en la sección de asistencia de Kilgray:

  • Si no lo está ya, cerrar memoQ.
  • Abrir el archivo AppPreferences.xml situado en C:\ProgramData\memoQ con un editor de textos, como el Bloc de Notas o Notepad ++.
  • Cambiar el valor de la cadena HideSerial (o, en su caso, crearla) de false a true y guardar el archivo.

En esta captura podéis ver que el número de licencia ha desaparecido de la ventana principal de memoQ.

Licencia oculta en memoQ

Datos del usuario de memoQ con el número de licencia oculto

Volvamos a lo que nos ocupa: la pseudotraducción

¿Qué es la pseudotraducción y para qué se utiliza?

La pseudotraducción (llamada roundtrip en inglés), de la que ya habló Pablo Muñoz en Algo más que traducir, consiste en aplicar a los documentos traducibles una serie de pruebas (normalmente, varias búsquedas y sustituciones en los archivos) previas a la traducción propiamente dicha mediante las cuales se simula la traducción de dichos archivos con distintos objetivos, entre los que figuran los siguientes:

  • Asegurarse de que la exportación del archivo traducido al formato original se producirá sin problemas. Hay varios factores que pueden impedir que se produzca correctamente: que el archivo original esté dañado, que durante la traducción se altere el archivo original de tal forma que imposibilita la exportación, la existencia de un formato complejo que provoque errores y otros problemas de diversa índole. Es conveniente llevar a cabo la pseudotraducción por si se diera cualquier error que no permitiera la correcta exportación del archivo traducido, con el fin de poder identificarlo, anticiparnos a los problemas y buscarles una solución y, si conviene, avisar al cliente de dichos problemas.
  • Si la exportación termina sin problemas, abrir los archivos traducidos con el fin de comprobar la integridad del texto. Puede haber incompatibilidades de la fuente usada en el original con los caracteres no latinos o la escritura de derecha a izquierda, cambios en la codificación de los archivos traducidos y otras cuestiones que a veces no se pueden detectar hasta la exportación de dichos archivos. De nuevo, es oportuno recurrir a la pseudotraducción para poder tomar las decisiones oportunas al respecto.
  • Ver si hay texto traducible sin traducir o texto no traducible sin bloquear y comprobar que los filtros de importación de archivos tanto predeterminados como personalizados (a los que volveré en futuras entradas) se han aplicado del modo en que se pretendía que funcionaran. Puede haber, por ejemplo, texto traducible oculto o etiquetas personalizadas del cliente que deben quedar bloqueadas pero que han quedado como texto plano, lo que no se puede detectar hasta abrir los archivos exportados.
  • En localización de software, de aplicaciones para dispositivos móviles y de videojuegos, entre otros, dilucidar si, a pesar de la expansión del texto (el aumento en el número de caracteres), la traducción es legible. Dicho de otro modo, el objetivo real es —como bien explica Pablo Muñoz— comprobar si los desarrolladores han llevado a cabo una correcta internacionalización del producto (es decir, lo han preparado para su localización teniendo en cuenta las peculiaridades de cada idioma).

Teniendo en cuenta estos motivos, se puede llegar a la conclusión de que añadir un paso de pseudotraducción previo a la traducción en sí resulta muy recomendable, en especial en archivos como XML personalizados, documentos con formato complejo o con archivos incrustados, etc.

La pseudotraducción en memoQ

El primer paso consiste en abrir memoQ y crear el proyecto con la combinación de idiomas, memorias de traducción y demás configuraciones que correspondan, sin olvidar —claro está— importar los archivos que se van a traducir usando los filtros correspondientes.

En este punto del proceso, si se intenta exportar los archivos, memoQ avisará de que no puede hacerlo por haber errores de etiquetas y segmentos vacíos en el idioma de destino. Este aviso se debe a que, de forma predeterminada, los segmentos de destino están vacíos, sin etiquetas ni texto normal (salvo que hayamos pretraducido el archivo original por algún motivo o que esté presegmentado, como puede ser con archivos XLIFF o TTX, por poner dos ejemplos).

Con el propósito de evitar que aparezca este mensaje, hay que copiar los segmentos de origen en los de destino, para después poder aplicar la pseudotraducción. Para tal fin, en la cinta de opciones, vamos a la pestaña Preparación y, en el grupo Traducciones, hacemos clic en la opción Copiar origen al destino si éste está vacío, como se ve en la captura de pantalla. Elegimos si queremos que se copien los segmentos en todo el proyecto (lo más recomendable) o en un archivo o conjunto de archivos.

Copiar origen al destino

Copiar segmentos de origen en los de destino en memoQ

En segundo lugar, procedemos a la pseudotraducción propiamente dicha, que se trata de un conjunto de operaciones de buscar y reemplazar en los segmentos de destino de los archivos pertinentes. memoQ cuenta con una gran ayuda para realizar este paso: el complemento de memoQ de pseudotraducción, que se encarga de realizar dichas operaciones por nosotros. Sin embargo, está desactivado de forma predeterminada, por lo que tendremos que activarlo antes.

Se puede poner en marcha dicho complemento pulsando el botón Opciones situado en la esquina superior izquierda (el icono son varias ruedas dentadas). A continuación, como se observa en la captura de pantalla que figura a continuación, en el apartado Categorías vamos a Traducción automática, buscamos el complemento y marcamos las casillas Habilitar complemento y Preferido (esta última no es obligatoria, pero sí recomendable).

Complemento de pseudotraducción de memoQ

Vista del complemento de pseudotraducción de memoQ una vez activado

El tercer paso, una vez activado el complemento, se basa en la pretraducción de los archivos, proceso durante el cual el complemento llevará a cabo las búsquedas y reemplazos según esté configurado. En la misma pestaña Preparación se encuentra el botón Pretraducir.

Cuando se abra la siguiente ventana, hay que asegurarse de marcar la casilla Usar traducción automática y la opción Cualquier coincidencia para que memoQ use a lo largo del archivo o conjunto de archivos seleccionados el complemento que hemos activado con anterioridad. En la siguiente captura de pantalla se puede ver cómo queda la configuración.

Pretraducir y estadísticas en memoQ

Cuadro de diálogo Pretraducir y estadísticas

Llegados a este punto, memoQ puede que nos sorprenda con un mensaje de error, el cual se debe a que este complemento no funciona con todas las combinaciones de idiomas. Por ejemplo, no está disponible si uno de los idiomas es el español a secas, sin concretar la variante lingüística. No hay nada de qué preocuparse: lo único que cambia es que seremos nosotros quienes hagamos las búsquedas y reemplazos en los archivos. Con una serie de cinco o seis búsquedas tendría que ser suficiente para ver cómo afecta la pseudotraducción a los archivos de origen.

Al menú Buscar y reemplazar se llega con la combinación de teclas Ctrl + H. En esta ventana, lo más recomendable consiste en que, busquemos lo que busquemos, lo sustituyamos por caracteres propios de la lengua de destino, como pueden ser caracteres con acento, la eñe, la cedilla, hanzi de la escritura china, etc.; así como por caracteres especiales, como el símbolo del dólar, la almohadilla y tantos otros. Así mismo, si nuestro objetivo es comprobar si el aumento de caracteres puede impedir su legibilidad, tendremos que añadir varios caracteres en el cuadro Reemplazar por. De esta forma, nos cercioraremos de que la pseudotraducción será lo más parecida a la traducción real al idioma correspondiente, lo que permitirá identificar posibles problemas con mayor precisión.

Como se aprecia en la siguiente captura de pantalla, es importante marcar la opción Destino y pulsar el botón Reemplazar todos, así como elegir el ámbito de aplicación de la búsqueda que se prefiera.

Buscar y reemplezar en memoQ

Vista del cuadro de diálogo Buscar y reemplazar en memoQ

Una vez terminada la serie de búsquedas y reemplazos, pasamos a exportar los archivos, bien marcando los archivos, abriendo el menú con el botón secundario del ratón y haciendo clic en la opción Exportar (ver captura de pantalla), o bien pulsando el botón Exportar en la pestaña Documentos de la cinta de opciones. Después elegiremos la opción que mejor convenga entre Exportar (ruta almacenada) o Exportar (cuadro de diálogo). Si no hay problemas con la exportación, ya podemos abrir los archivos pseudotraducidos que ha creado memoQ para detectar posibles problemas.

Exportación de archivos tras la pseudotraducción

Exportación de archivos tras la pseudotraducción

Por último, y no menos importante, una vez hayamos comprobado que no hay ningún error, todavía queda un último paso por hacer, que consiste en borrar las pseudotraducciones de los segmentos de destino para que se pueda llevar a cabo la traducción real, lo que se consigue en la cinta de opciones, pestaña Preparación, grupo Traducciones, botón Borrar traducciones.

Borrar traducciones tras la pseudotraducción

No olvidéis borrar las traducciones tras la pseudotraducción

Aquí acaba el método que suelo emplear antes de empezar cualquier proyecto, pero ni mucho menos es el único válido (cada maestrillo tiene su librillo, dicen). También hay que tener en cuenta que, incluso habiendo recurrido a la pseudotraducción, cabe la posibilidad de que, una vez terminada la traducción, nos topemos con algún error misterioso que dificulte la exportación de los archivos. Mediante la pseudotraducción, sin embargo, casi siempre detectaremos los errores de «fábrica» en los originales, lo que permite prevenir en vez de tener que curar más adelante —por la ley de Murphy, cuanto más cerca del plazo de entrega nos hallemos—:).

Antes de nada, espero que me sepáis perdonar el autobombo. 😀

Hace ya unos meses, un buen día encendí el ordenador, abrí Mozilla Thunderbird y vi en mi bandeja de correo electrónico un mensaje que enseguida me llamó la atención. Una representante de la Asociación Brasileña de Hispanistas me comentaba en el propio blog que le gustaba mucho Melodía de traducción y que a su asociación le gustaría mucho que escribiera un artículo en su revista, Abehache (publicada con artículos en portugués y español).

Tras la sorpresa y las dudas posteriores —dado que yo no había preparado ningún artículo para una publicación extranjera—, me dije a mí mismo: «¿Y por qué no?». Sin embargo, todavía me quedaba dar con un tema sobre el que pudiera escribir largo y tendido y que, a la vez, me inspirara. Siendo sincero, la verdad es que aparqué un poco el tema por cuestiones de trabajo y demás. Unos pocos meses después, me llegó un recordatorio con respecto al artículo, ante lo cual decidí dejarme de tonterías, coger el toro por los cuernos y ponerme serio con la redacción.

El resultado de dicho esfuerzo es el artículo El software libre en el sector de la traducción, que ha sido publicado en el último número de la revista Abehache, y del que me siento muy orgulloso. A pesar de haber coincidido con una época de mucho trabajo, así como con el fin de verano y las fiestas que tienen lugar en dichas fechas —como las de mi pueblo, Ampuero, en Cantabria—, lo que no me permitió concentrarme todo lo que me hubiese gustado, pienso que me ha quedado muy completo teniendo en cuenta la extensión máxima permitida (lo siento si parece que no tengo abuela :-P) y os animo a leerlo y a que me comentéis vuestras impresiones. Para que os hagáis una idea de los temas que trato en dicho artículo, os copio el resumen:

Con el paso del tiempo, el software libre ha ido ganando peso poco a poco entre los usuarios de equipos informáticos en comparación con los programas comerciales, hasta el punto de que, en algunos casos, ha llegado a la altura de programas de pago. Mediante este artículo, pretendemos realizar una introducción a este tipo de software orientada a traductores. En él, se describirán diferentes programas empleados para llevar a cabo tareas que van, desde la propia traducción y localización hasta la revisión, pasando por la gestión de proyectos de traducción. Asimismo, se reflexionará sobre la cuestión de si esta clase de programas puede sustituir a las alternativas de pago.
 

Como podéis ver, no me limito a hablar en exclusiva de programas de software libre empleados para la traducción propiamente dicha, sino que pretendo dar un paso más allá y tratar varios pasos que, de una forma u otra, están íntimamente relacionados con nuestra profesión. Dado que mi opinión no es ni mucho menos la única válida o la única respetable, os invito a que leáis mi artículo. Y no os perdáis el resto de la revista, donde podréis encontrar colaboraciones de autores como Jorge Díaz Cintas, Elisa Calvo o Amparo Hurtado Albir.

Podéis consultar mi artículo si lo buscáis en el último número de la revista Abehache o, de forma más directa, si accedéis al índice.

¡Espero que os guste! 😀

Tras una pausa demasiado larga, ya iba siendo hora de publicar la cuarta (y última) entrada dedicada a Okapi Framework. En el futuro es posible que redacte alguna entrada más sobre funciones o trucos concretos de las aplicaciones que conforman Okapi.

Aclarado este punto, a continuación llega la prometida entrada, en la que describiré las aplicaciones más interesantes de Okapi que, a mi juicio, son más interesantes (sin contar Rainbow, de la que ya hablé en entradas anteriores del blog): Olifant, CheckMate y los complementos de Okapi para OmegaT.

Olifant

A diferencia del resto de componentes de Okapi comentados en esta serie de entradas, Olifant no cuenta con una versión para JAVA, sino que tendremos que acudir al sitio web de la versión antigua de Okapi desarrollada usando NET Framework.

Gracias a esta aplicación, podemos abrir memorias de traducción en diferentes formatos (como TMX o TXT) y realizar cambios en sus atributos y otros datos vinculados a ellas. Asimismo, podemos exportar dichas memorias en varios formatos, lo que permite emplear Olifant como una herramienta de conversión de memorias de traducción con el fin de poder consultar una misma memoria en herramientas TAO que trabajen con formatos incompatibles entre sí.

Ventana principal de Olifant

Ventana principal de Olifant con una memoria en formato TMX abierta

En esta captura de pantalla vemos una memoria en formato TMX abierta en la ventana principal de Olifant, donde se encuentran los clásicos menús y botones de tantos programas conocidos junto a un espacio donde podemos modificar la UT (unidad de traducción o segmento) en el idioma de origen y en el destino. En la parte inferior, por último, figura la lista de segmentos que conforman la memoria, así como el número que las identifica. En ciertos casos, veremos códigos o etiquetas internos delimitados por corchetes que sirven para indicar que una palabra aparece en negrita, en cursiva, subrayada, etc.

Olifant cuenta con varias funciones de gran interés para un traductor, entre las que destaco las búsquedas mediante varios filtros y expresiones regulares, la identificación de unidades de traducción duplicadas, fusionar varias memorias en una sola, exportar únicamente determinados segmentos de una memoria, etc. Como no quiero explayarme demasiado, a continuación os dejo una captura de pantalla en la que se ven las propiedades de esta memoria de traducción.

Propiedades de la MT en Olifant

Vista de la ventana Propiedades de la memoria en Olifant

En este apartado, al que que se accede desde el menú File > TM Properties… (Archivo > Propiedades de la MT), podemos cambiar las propiedades de una memoria, que a veces causan problemas, en especial a la hora de intentar abrirla en otras herramientas TAO. En la pestaña General podemos cambiar datos como la fecha de creación y modificación, la codificación y el creador de la memoria. En la segunda pestaña, Languages (Idiomas) podemos añadir o eliminar idiomas de origen y de destino. Por ejemplo, puede que queramos importar una memoria creada con idioma de destino español (ES) en otra con idioma español de España (ES-ES) y que tengamos dificultades para conseguirlo. Mediante esta función de Olifant, podremos solucionar dicho inconveniente. Asimismo, en Attributes (Atributos) es posible eliminar o modificar ciertos atributos (aunque no todos, por desgracia).

CheckMate

CheckMate es una aplicación de Okapi que sirve para llevar a cabo controles de calidad en formatos de archivos bilingües empleados en traducción como TTX, PO o XLIFF, por citar unos pocos ejemplos. En pocas palabras, es el sistema de control de calidad que viene incluido en Rainbow (como vimos en la entrada anterior) pero en una aplicación independiente, una cuestión que a algunos les será un tanto incómodo y, a otros, de mayor utilidad. Esta aplicación funciona mediante sesiones a las que podemos añadir o eliminar archivos y que podemos guardar para seguir con la comprobación de errores en otro momento.

Control de calidad en CheckMate

Vista del Control de calidad de CheckMate

Esta captura de pantalla muestra la ventana principal de CheckMate tras haber abierto un documento (PO, en este caso) y realizado el control de calidad pulsando el botón Check All (Comprobar todo). Si hacemos clic con el botón secundario del ratón en el error que queremos corregir y pulsamos la opción Open Document (Abrir documento), se abrirá el archivo de forma automática, lo que acelera el proceso de corrección. Además, gracias a CheckMate podemos crear un informe de los errores encontrados y guardarlo en nuestro ordenador.

Entre los errores que CheckMate es capaz de detectar se encuentran la presencia de caracteres dañados, palabras repetidas, la ausencia de traducción en el segmento del idioma de destino, diferencias entre etiquetas, etc. En caso de que la aplicación detecte algún falso positivo, podemos desactivar el aviso para que no muestre ese mismo error en el futuro. Asimismo, se integra con la herramienta de corrección ortográfica y de estilo de código abierto LanguageTool, que funciona con más de 20 idiomas. Esta última función se activa en el menú Issues > Edit Configuration > LangaugeTool (Varios > Cambiar configuración > LanguageTool).

Filtros para OmegaT

Los filtros para OmegaT permiten usar varios formatos de archivo, tales como TTX o IDML, en dicha herramienta. Estos tipos de archivos suelen resistirse a los programas TAO gratuitos, pero estos filtros nos permiten traducirlos en OmegaT sin demasiados problemas. Como muestra, os dejo una captura de un archivo TTX, propio de TagEditor, en OmegaT.

Documento TTX en OmegaT

Vista de un documento TTX abierto en OmegaT

Si queremos instalar estos filtros, basta con descomprimir el archivo descargado y copiar los archivos JAR obtenidos a la carpeta plugins, que se encuentra a su vez dentro de la carpeta donde hayamos instalado OmegaT.

Como se indica en la página web, en el caso de los archivos TTX, el filtro espera que Rainbow haya segmentado previamente los archivos, por lo cual, si el archivo está segmentado en parte, OmegaT solamente reconocerá el texto segmentado y no se podrá traducir el resto. La solución que recomiendan en la misma página consiste en recurrir a Rainbow para crear un proyecto para OmegaT (como vimos en la primera entrada dedicada a Okapi) en el que se indique al filtro TTX que extraiga también el texto no segmentado.

Y para terminar…

Ya llegamos al final de estas cuatro entradas dedicadas a Okapi Framework. Aunque no he comentado todas las aplicaciones ni funciones disponibles, espero que os hayáis hecho una idea de la gran utilidad que puede tener este conjunto de aplicaciones si alguna vez os veis en apuros mientras traducís. Nunca se sabe, y hay que estar bien preparado.:)

Como siempre, espero que os haya gustado la entrada y que dejéis vuestras impresiones, trucos o ideas para nuevas entradas de Melodía de traducción. ¡No seáis tímidos! :)

En la anterior entrada de Melodía de traducción repasamos varias funciones interesantes de Rainbow, una de las aplicaciones que componen Okapi Framework. En concreto, analizamos la comparación de traducciones y la opción Buscar y remplazar.

Con esta entrada, que irá dedicada a la función de Control de calidad de Rainbow, daremos por concluido el repaso a esta aplicación, aunque no será el caso con el conjunto de entradas sobre Okapi Framework.

Control de calidad

En nuestra profesión, de nada sirve ser muy buenos y productivos traduciendo si no realizamos el último paso —que no por ello es el menos importante— adecuadamente, ya que puede ocasionar que haya errores de bulto en la traducción que entreguemos al cliente, lo que puede suponer, como mínimo, que nuestra imagen profesional quede dañada gravemente o que, incluso, lleguemos a perder dicho cliente. No se trata solamente de llevar a cabo controles de calidad básicos, como pasar el corrector ortográfico (que nos advierte de los errores que se identifican con mayor facilidad al ojear un texto), sino de asegurarnos, asimismo, de que hemos cumplido las instrucciones concretas del cliente.

Como no todos los documentos son iguales ni todos los clientes tienen las mismas exigencias, resulta de agradecer contar con una herramienta de control de calidad lo suficientemente amplia como para poder hacer frente a cualquier circunstancia con que nos encontremos. Llegados a este punto, el control de calidad de Rainbow es una opción sólida, tal y como veremos a continuación.

Para poder acceder a dicha función, tendremos que acudir al menú Utilities > Quality Check… (Utilidades > Control de calidad). La siguiente captura de pantalla muestra la ventana principal del Control de Calidad de Rainbow.

Control de calidad de Rainbow

Captura de pantalla de la ventana del control de calidad de Rainbow

Como se puede observar, la ventana consta de una serie de pestañas que analizaremos con mayor detalle más adelante y en las que podemos configurar el control de calidad para que, entre otras opciones, nos avise de si un segmento traducido excede un determinado número de caracteres o de si su longitud es superior en porcentaje a la del segmento original. Estas posibilidades son muy útiles en casos de proyectos con restricción de caracteres, como son la traducción audiovisual, de videojuegos o de software.

A continuación, analizaremos solamente las pestañas más interesantes en el día de un traductor, lo que no impide que en algún momento necesitemos echar mano de las pestañas restantes según las características de un proyecto en concreto.

General

En la pestaña que figura en primer plano según abrimos esta ventana, General, podemos elegir si queremos que el control de calidad muestre segmentos sin traducir o vacíos, palabras repetidas. En este apartado podemos añadir excepciones en caso necesario, como ocurre con ciertas palabras que se repiten al traducir al francés. Asimismo, en esta sección se puede comprobar si hay espacios en blanco que sobren o si hay segmentos cuyo texto original y cuya traducción sean idénticos, por poner varios ejemplos. Todas estas opciones las podemos encontrar en otros programas de control de calidad.

Longitud

En la siguiente captura de pantalla se muestra la pestaña Length (Longitud) del control de calidad de Rainbow. Como se ha mencionado unos párrafos más atrás, esta sección es de especial utilidad en subtitulado o en proyectos de localización (de software especialmente). Supongamos que estamos localizando una aplicación para móviles inteligentes, tan de moda de un tiempo a esta parte. Dadas las reducidas dimensiones de pantalla de estos teléfonos, no podemos traducir el texto alegremente, ya que es evidente que el programador debe establecer un límite de caracteres que aparezcan en pantalla, aunque siempre calculando un número de caracteres superior al del texto original, dado que hay idiomas que se escriben en más caracteres que en otros. Lo mismo ocurre a la hora de traducir subtítulos, pues se debe ajustar el número máximo de caracteres posibles en función del tiempo que dura la intervención del personaje o que aparece en pantalla algún otro elemento que se deba traducir.

Control de calidad: longitud

Captura de pantalla de la pestaña Length del control de calidad de Rainbow

Volviendo a Rainbow, podemos indicar al programa que nos avise si un segmento excede un número determinado de caracteres o si la longitud de la traducción es superior o inferior en caracteres a un porcentaje concreto. Por poner un ejemplo, si el cliente nos indica que la traducción no debe superar los 50 caracteres y no debe ser más de un 25% más larga que el original, podremos comprobar rápidamente si hemos cumplido dichos requisitos y, en su caso, cambiar los segmentos que no los reúnan.

Patrones

En la pestaña Patterns (Patrones) de Rainbow podemos elegir si queremos comprobar que determinados patrones, bien los que aparecen por defecto o los que queramos añadir según las características del proyecto, han sido traducidos de la forma deseada. Si prestamos atención a la captura de pantalla que figura a continuación, observaremos que Rainbow incluye siete patrones predeterminados. En la primera columna, Options (Opciones), indicamos si el patrón aparece en el texto de origen o destino (Src o Trg, respectivamente), así como la prioridad que damos a este patrón (de menor a mayor, LOW, MEDIUM y HIGH). En la segunda y tercera columna se encuentra el patrón de texto que queremos comprobar en el texto de origen o de destino, respectivamente. Por último, en la cuarta columna se aporta una descripción para identificar el patrón correspondiente.

Control de calidad: patrones

Captura de pantalla de la pestaña Patterns del control de calidad de Rainbow

Los patrones cuya traducción comprobará Rainbow por defecto son, de arriba abajo, los paréntesis, los caracteres de separación, las direcciones de correo electrónico, las URL, las direcciones IP, los códigos printf y una letra repetida tres veces.

Para que la búsqueda de patrones funcione correctamente, resulta imprescindible conocer y saber utilizar los caracteres comodín, que son los caracteres mediante los cuales representamos cualquier otro carácter o cadena de caracteres. Por ejemplo, si miramos el primer patrón, [\(\)], descubriremos que los corchetes se utilizan para delimitar el propio patrón, mientras que la barra invertida (\) se utiliza para representar cualquier cadena de texto. Por decirlo de otro modo, estamos indicando al programa que busque que cualquier texto seguido de cualquier texto entre paréntesis se haya traducido de igual forma, es decir, por cualquier texto seguido de cualquier texto entre paréntesis. En los demás patrones figuran caracteres comodín para sustituir a cifras, letras u otros caracteres.

Podemos utilizar esta característica del control de calidad para añadir nuestros patrones personalizados. Por ejemplo, podemos añadir un patrón para comprobar que la coma de los millares y el punto de los decimales en las cifras en inglés ha sido adaptada al español como corresponde o como nos ha indicado el cliente, en su caso. Si queremos que Rainbow compruebe que la coma de los millares ha sido transformada en punto en español, escribiremos los siguientes patrones en las columnas de origen y destino, respectivamente: ([0-9])(,)([0-9][0-9][0-9]) y \1.\3. El código [0-9] representa una cifra cualquiera, mientras que \n indica que queremos sustituir por uno de los elementos que hemos buscado, donde n es el número del elemento delimitado por paréntesis contando desde la izquierda. De esta forma, podemos matar dos pájaros de un tiro sustituyendo las dos comas presentes en los millones en inglés por los dos puntos correspondientes escribiendo en la columna de origen ([0-9])(,)([0-9][0-9][0-9])(,)([0-9][0-9][0-9]) y en la columna de destino, \1.\3.\5. Podemos repetir el proceso para los casos en que aparece un punto para los decimales en vez de coma.

En la captura de pantalla que figura a continuación podemos observar estos dos nuevos patrones añadidos al final de la lista de patrones predeterminados. Más adelante veremos un caso práctico de control de calidad donde demostraremos que dicho patrones funcionan. No obstante, si queréis aprender más sobre los caracteres comodín (especialmente en Microsoft Word), os recomiendo leer la entrada de La traducción in vitro que trata este tema.

Nuevos patrones en el control de calidad

Imagen de los nuevos patrones añadidos al control de calidad de Rainbow

Términos

En la penúltima pestaña, Terms (Términos), podemos añadir un glosario con el fin de asegurarnos de que hemos traducido la terminología siguiendo las instrucciones del cliente. Bien si nos han facilitado un glosario, o bien si lo hemos creado nosotros desde cero para mantener la coherencia en la traducción de términos, es una parte del control de calidad que tendremos que tener muy en cuenta. De lo contrario, un pequeño traspiés podría suponer la pérdida de ese cliente.

Control de calidad: terminología

Captura de pantalla de la pestaña Terms del control de calidad de Rainbow

En la captura de pantalla anterior podemos observar que Rainbow nos permite añadir un glosario en formato TBX, CSV o en un TXT delimitado por tabulaciones, lo que cubre desde el glosario más básico hasta bases de datos terminológicas  más avanzadas (como las exportaciones de bases de datos creadas con Multiterm, por ejemplo). Asimismo, podemos marcar dos casillas para indicar si queremos comprobar los términos mediante el emparejamiento de cadenas de texto y si queremos marcar que los términos que se deben buscar aparecen entre códigos internos, respectivamente.

Cabe destacar, por último, el mensaje que figura en mayúsculas, que nos advierte de que esta función es experimental y de que se encuentra en desarrollo. Por lo tanto, podría no funcionar adecuadamente o que los resultados no fueran exactos al cien por cien. Sin embargo, es de esperar que los programadores vayan mejorando esta función en futuras versiones de Okapi Framework.

El control de calidad en funcionamiento

Después de todo lo escrito, seguramente querréis ver una prueba de que el control de calidad funciona. Para ello, es necesario añadir como mínimo un archivo bilingüe a la lista de archivos mediante la combinación de teclas Ctrl + Insert. En mi caso, me he decantado por un archivo .PO en el que he dejado varios errores a propósito. Cuando hemos marcado las opciones que mejor se ajusten a nuestro documento, pulsamos el botón Execute (Ejecutar) y, si hemos dejado la opción por defecto, se nos abrirá nuestro navegador predeterminado con el informe en HTML (si no se detecta ningún error, el informe estará en blanco). En mi caso, el informe obtenido es el que se muestra en la siguiente captura de pantalla:

Informe de control de calidad

Imagen de un informe de control de calidad de Rainbow

Como se puede observar, Rainbow ha detectado cinco errores, que aparecen marcados en amarillo en el original. Los tres primeros están relacionados con las cifras: no se han adaptado adecuadamente las comas de los millones y millares del inglés por el punto en español y, siguiendo el patrón personalizado que añadimos antes, Rainbow lo ha señalado en el informe. Los otros dos errores restantes también están relacionados con patrones, y muestran que en la traducción no figuran correctamente una dirección de correo electrónico y una URL, respectivamente.

Por desgracia, el detector de errores en terminología no ha funcionado (como reza la advertencia en la pestaña Terms) y no ha sido capaz de mostrar las dos incoherencias relacionadas con la terminología proporcionada que había introducido a propósito ni en la versión para sistemas de 64 bits ni en la de 32. Seguiré investigando para conseguir que todo funcione adecuadamente y, si así lo hago, actualizaré la entrada. No obstante, si alguien tiene la clave para lograr que este apartado funcione a la perfección, que no dude en comentarlo:).

Resumen

Como ya sabréis, el control de calidad es uno de los procesos que todo traductor debe seguir en su labor diaria antes de entregar un proyecto al cliente. Conviene conocer la existencia de opciones gratuitas como la función que incorpora Rainbow, la cual, sin ser perfecta (como hemos visto anteriormente), es perfectamente válida para determinados proyectos.

Con esta entrada doy por concluida la serie de entradas dedicadas a Rainbow, aunque próximamente publicaré la cuarta y última entrega sobre Okapi Framework, donde veremos otras aplicaciones que forman parte de este conjunto.

Como siempre, se aceptan críticas, dudas o sugerencias, así que no seáis tímidos J

La anterior entrada de Melodía de traducción inauguró una serie de entradas dedicadas a Okapi Framework. Como es evidente, a la primera parte le sigue una segunda, que os dejo a continuación.

A modo de recapitulación, en la entrada anterior escribí una introducción a Okapi Framework para después continuar con un análisis más profundo de Rainbow. Entre otras cosas, vimos la creación de paquetes de traducción y de memorias de traducción mediante este programa. Concluí la entrada prometiendo que seguiría hablando de Rainbow. Lo prometido es deuda.

Comparación de traducciones

En determinados proyectos, puede que queramos comparar la traducción de un documento con una versión previa de dicha traducción con el fin de observar los cambios que hemos ido introduciendo. También puede darse el caso poco deseable de que nos hayamos topado con un revisor que ha decidido cambiar nuestra traducción a su antojo, unas veces, con buen criterio y, otras, con no tanto, por lo que queremos comparar la revisión con la traducción para ver si dichas correcciones están justificadas o, por el contrario, se deben a los meros deseos del revisor por cambiar nuestro trabajo. Sea como fuere, Rainbow cuenta con una función que nos permite comparar la traducción de varios documentos y que nos muestra las diferencias en un archivo HTML y que puede sernos de gran utilidad en situaciones como las descritas en este párrafo.

Como paso previo, tenemos que cargar los documentos que vamos a comparar mediante la combinación de teclas Ctrl + Insert. Los archivos originales los tendremos que cargar en la primera pestaña, Input List 1, mientras que añadiremos las traducciones modificadas, por llamarlas de algún modo, en la siguiente pestaña, Input List 2 y, si se da el caso, podemos recurrir a la tercera pestaña, Input List 3. Es importante comprobar que los documentos comparados estén situados de este modo, ya que, de lo contrario, esta función no producirá resultado alguno.

Después de añadir los documentos, tendremos que dirigirnos al menú Utilities (Utilidades) y elegir la opción Translations Comparison… (Comparación de traducciones). Aparecerá la siguiente ventana:

Comparación de traducciones

Ventana de Rainbow donde podemos configurar la comparación de traducciones

En esta ventana podemos elegir, entre otras opciones, si queremos utilizar una identificación genérica de los códigos internos de texto (en vez de utilizar los códigos reales, que pueden ser muy extensos en según que casos), que se abra el archivo HTML resultante una vez finalizada la comparación o que se cree una memoria de traducción en formato TMX con los resultados.

También podemos elegir el nombre con el que queremos identificar los documentos y si Rainbow debe tener en cuenta para realizar la comparación las diferencias entre la mayúsculas y las minúsculas, de espacios en blanco y de puntuación. Cuando hayamos elegido las opciones que prefiramos, pulsamos en botón Execute (Ejecutar) y esperamos a que se termine el proceso. Si hemos marcado la casilla pertinente, se nos abrirá un archivo HTML en nuestro navegador predeterminado de forma automática, similar al de la siguiente captura de pantalla:

Análisis de la comparación de traducciones

Informe de la comparación de traducción de Rainbow en HTML

Como podemos observar, el informe nos muestra las traducciones una debajo de la otra y nos indica el valor de similitud entre ellas en una escala del 0 al 100. En la ayuda de Rainbow con respecto a este paso (a la que podemos acceder mediante el botón Step Help, Ayuda del paso), esta cifra se basa en la distancia de Levenhstein, que mide el número de operaciones necesarias para poder pasar de una cadena a otra.

Este informe proporciona poca información si lo comparamos con otras herramientas. Por ejemplo, no señala de ninguna forma los puntos donde se producen diferencias, lo que puede dificultar la identificación y corrección de errores en segmentos largos o con muchas marcas de formato. Pese a todo, es una función de Rainbow que puede ser de utilidad en el caso de textos breves y con pocos segmentos, como el documento del ejemplo anterior, y, asimismo, una primera aproximación a otras tareas que no son realmente traducción pero que guardan gran relación con ella, como la revisión, el control de calidad o incluso el proofreading.

Buscar y reemplazar

Cuando terminamos de traducir, hay ocasiones en que, por estar despistados u otras razones, nos damos cuenta casi a última hora de que no hemos traducido un determinado término por el equivalente que nos indicaba el cliente sino por otro, que no hemos traducido ese término de forma coherente en todos los documentos, etc. ¿A quién no le ha pasado tener que ir buscando y reemplazando a toda prisa esa palabra problemática? Todo ello, unido al inconveniente de poder equivocarnos.

En situaciones así es donde podemos aprovechar la función Buscar y reemplazar de Rainbow. «No es nada del otro mundo, nada que no tenga cualquier editor de texto», pensaréis y, en parte, tenéis razón. Si solamente tenemos que llevar a cabo búsquedas y sustituciones en un documento, abrirlo en Word u otro programa y realizarlas puede que sea lo más fácil y cómodo. Sin embargo, hacer lo propio con varios documentos es otro cantar, y más si son archivos bilingües, en los que las búsquedas pueden antojarse complicadas a veces. En estos casos es en los que Rainbow puede marcar la diferencia. A continuación, vamos a ver cómo utilizar la función Buscar y reemplazar en este programa con dos archivos bilingües en formato ODT.

El primer paso seguramente ya lo intuyáis: hay que añadir los archivos con los que vamos a trabajar. A diferencia de la función anterior, aquí nos basta con añadirlos todos a la misma Input List. Acto seguido, vamos al menú Utilities > Search and replace with filter (Utilidades > Buscar y reemplazar con filtro). Justo debajo de otra opción tenemos el acceso a la búsqueda y sustitución sin filtro. Sin embargo, nosotros recurriremos a la opción con filtro. Aparecerá entonces la ventana que podemos ver en la siguiente captura de pantalla:

Ventana Buscar y reemplazar

Captura de la ventana de Buscar y reemplazar con filtro de Rainbow

Para añadir los términos que queremos buscar y reemplazar, pulsamos el botón Add… (Añadir). En la siguiente ventana, añadimos la palabra en cuestión en el cuadro superior y la palabra por la que queremos sustituirla en el cuadro inferior y pulsamos el botón OK, repitiendo este paso las veces necesarias.

Cuando hayamos terminado, podemos marcar la casilla Use regular expressions (Utilizar expresiones regulares), lo que nos permitirá, a su vez, marcar otras cuatro casillas, de las que son especialmente interesantes las dos últimas: Ignore case differences (Ignorar diferencias entre mayúsculas y minúsculas) y Replace all instances of the pattern (Reemplazar todas las apariciones del término). En nuestro caso, es importante prestar atención a las dos casillas situadas a la derecha, con el título When processing text units (i.e. using a filter) [Al procesar unidades de texto (es decir, al usar un filtro)]. Mediante este filtro, podemos marcar las dos casillas para buscar y reemplazar en el texto de origen y en el destino, respectivamente.

Para este ejemplo, he utilizado los dos textos de prueba en formato ODT empleados también para la comparación de traducciones y que he traducido utilizando Anaphraseus, del que ya hablé en su día. He buscado todos los casos en que aparecen las palabras archivo y texto y las he sustituido por texto. También he hecho lo propio con frase, que he reemplazado por oración. Como resultado, Rainbow creará copias de los documentos originales añadiendo .out antes de la extensión de archivo. En las siguientes capturas de pantalla podéis ver el documento original y el documento modificado, respectivamente.

Archivo bilingüe original

Captura del archivo bilingüe original en formato ODT abierto con LibreOffice

Archivo bilingüe modificado

Captura del archivo bilingüe modificado en formato ODT abierto con LibreOffice

Como podéis observar, Rainbow ha llevado a cabo lo que le hemos pedido a la perfección. En mi opinión, las búsquedas y sustituciones constituyen una función que es fundamental que los traductores, como mínimo, conozcan y sepan manejar. Nos ayuda a evitar posibles quebraderos de cabeza y a ahorrar un tiempo precioso que podemos dedicar a otros menesteres.

Con estas dos funciones de Rainbow doy por concluida esta entrada, pero no creáis que he terminado con Okapi Framework, ni mucho menos. De momento, ya os adelanto que en la siguiente entrada terminaré de describir las funciones más destacadas de Rainbow con el QA o Control de calidad.

Como de costumbre, termino la entrada animándoos a participar con vuestros comentarios: ¿habéis utilizado alguna vez estas funciones de Rainbow? ¿Hay alguna otra que utilicéis con frecuencia?

¡Hola a todos!

Retomo el blog con una entrada que mi amigo y antiguo profe Rubén me sugirió escribir en su día: Okapi Framework. Como ya habéis sido testigos de mis parrafadas habituales, y dado que esta herramienta es muy amplia, escribiré varias entradas sobre el tema. Aquí va la primera de ellas.

INTRODUCCIÓN

Me imagino que muchos de vosotros os habréis preguntado al leer el título: «¿Qué es Okapi Framework?». Nadie mejor que sus creadores para contárnoslo. Si prestamos atención a su página web, podemos averiguar que Okapi Framework (de ahora en en adelante, Okapi) es «un conjunto de componentes y aplicaciones de código abierto, libre y multiplataforma diseñado como apoyo a los procesos de traducción y localización». Así pues, nos queda claro que Okapi es gratuito y que no se trata de una herramienta de traducción asistida por ordenador al uso, sino de un complemento de ayuda en las tareas de traducción y localización.

A su vez, Okapi consta de varias herramientas escritas en lenguaje Java entre las que destaco Rainbow (a la que dedicaré esta entrada en exclusiva), que nos permite ejecutar multitud de procesos relacionados con la traducción y localización, CheckMate, utilizada para realizar controles de calidad en archivos bilingües y, dentro de las antiguas aplicaciones de Okapi en .NET framework, Olifant, que sirve para realizar búsquedas y cambios en distintos formatos de memorias de traducción. Cabe mencionar, así mismo, la presencia de aplicaciones en línea de comandos, destinadas a usuarios más avanzados, como Tikal, que permite unir varios archivos XLIFF, llevar a cabo conversiones de archivos o incluso traducir utilizando sistemas de memorias de traducción; o Ratel, un editor WYSIWYG empleado para crear reglas de segmentación SRX (Segmentation Rules eXchange).

RAINBOW

La primera vez que abrimos Rainbow, nos encontramos con una ventana como la de la siguiente imagen:

Rainbow

Ventana principal de Rainbow

Como se puede observar, en dicha ventana figura la clásica barra de menús, común a la mayoría de aplicaciones, donde nos serán de especial utilidad los menús Utilities y Tools (Utilidades y Herramientas, respectivamente) y una sección de botones que ejecutan las funciones más básicas, como abrir un proyecto, guardarlo, etc. Debajo de esta sección vemos de un directorio titulada Root (Raíz), que es el directorio de nuestro proyecto. El resto de la pantalla lo ocupa una sección con varias pestañas, destinadas a la listas de documentos con los que queremos trabajar (hasta un total de tres), así como otra pestaña, Languages and Encodings (Idiomas y codificaciones), donde podemos establecer, como su nombre indica, los idiomas y codificaciones de los archivos que hayamos añadido. Para terminar, en Other Settings (Otros ajustes) podemos configurar algunas características de los archivos de destino.

Creación de paquetes de traducción

La primera función de Rainbow que quiero destacar es la creación de paquetes de traducción. De esta manera, podemos preparar nuestros archivos para convertirlos a formatos compatibles con diversas herramientas tanto gratuitas como de pago, como QT Linguist (recordad que hablé de esta herramienta en la entrada anterior), OmegaT, Trados, Swordish III (que mencioné en esta entrada) o Wordfast. Así que por falta de alternativas no será.

Para acceder a esta función, tendremos que, en primer lugar, cargar los archivos que queremos convertir mediante la combinación de teclas Alt + Insert. Una vez elegidos, nos dirigiremos a Utilities > Translation Kit Creation… (Utilidades > Creación de paquetes de traducción). En la siguiente captura de pantalla podemos ver un ejemplo de esta ventana. En la parte derecha de la ventana que aparece, podemos ver la lista de formatos a los que se pueden convertir los archivos. Cuando seleccionamos uno, en la sección inferior se nos aporta una breve descripción que soluciona más de una duda. Asimismo, en la pestaña Output Location (Ubicación de los archivos de destino) podemos decidir la ubicación del paquete que creemos, así como si deseamos que el programa cree un archivo comprimido con los archivos de dicho paquete.

Creación de paquetes de traducción

Captura de pantalla de la ventana de Creación de paquetes de traducción de Rainbow

El programa nos creará un paquete en la carpeta que le hayamos indicado, con una carpeta destinada a los archivos originales y otra, de nombre, work, que contiene los archivos de trabajo o borradores, que son el resultado de la conversión que ha realizado Rainbow para hacerlos compatibles con el programa de traducción asistida elegido. Aquí tenemos un ejemplo de un paquete PO que puedo traducir mediante QT Linguist, y que he creado a partir de un archivo en formato ODT.

Archivo PO en QT Linguist

Captura de pantalla de un archivo PO en QT Linguist creado por Rainbow

Las siguientes capturas muestran, respectivamente, los paquetes de este mismo archivo obtenidos siguiendo este proceso para su posterior traducción en Swordfish III (a partir de un archivo XLIFF), OmegaT y Trados (a partir de un archivo RTF).

Archivo XLIFF en Swordfish

Captura de pantalla de archivo XLIFF creado con Rainbow y abierto en Swordfish

Traducción en OmegaT

Captura de pantalla de un texto para traducir abierto en OmegaT creado desde Rainbow

Archivo RTF bilingüe

Captura de pantalla de un archivo RTF bilingüe para Trados creado con Rainbow.

Como habréis podido comprobar ya, contamos con muchas opciones de creación de paquetes de traducción, compatibles tanto con herramientas de traducción asistida gratuitas como comerciales. Aparte de lo mostrado anteriormente, podemos crear archivos compatibles con Transifex, Wordfast y otras herramientas de traducción asistida.

Creación de memorias de traducción

Imaginaos que, utilizando Rainbow, hemos podido convertir un archivo siguiendo los pasos anteriores a un programa de traducción asistida de nuestra elección como, por ejemplo, QT Linguist. Cuando hemos terminado de traducir el archivo, caemos en la cuenta de que queremos guardar una memoria de traducción basada en dicho archivo para poder aprovechar la traducción en futuros proyectos. Sin embargo, herramientas como QT Linguist no funcionan con el concepto de memoria de traducción, al contrario que otras alternativas como Trados o Wordfast o, si hablamos de software libre, OmegaT o Anaphraseus. Pues bien, en vez de maldecir nuestra mala suerte, Rainbow nos puede ayudar a salir del apuro mediante su función de conversión de archivos, en concreto la conversión a formato TMX (Translation Memory eXchange).

A diferencia de la función de paquetes de traducción, la conversión de archivos se limita a convertir los documentos que queramos a otro formato, sin crear la estructura de carpetas más propia de un proyecto de traducción (es decir, carpetas para documentos originales y borradores y otros archivos necesarios para ser compatibles con el programa elegido). Si bien es cierto que estas dos funciones pueden llegar a solaparse (en especial en el caso de los archivos PO), creo que dan la posibilidad de que cada traductor trabaje según más le convenga.

En la situación que nos ocupa, el primer paso para obtener nuestro archivo TMX a partir de un archivo bilingüe (PO, XLIFF o bilingües de Trados) es añadirlo a la lista de archivos mediante al atajo Ctrl + Insert. A continuación nos dirigimos a Utilities > Conversion Utilities > File Format Conversion… (Utilidades > Utilidades de conversión > Conversión de formatos de archivos), donde aparecerá la siguiente ventana:

Conversión de archivos

Ventana de Rainbow de la función de conversión de archivos

En la sección Output Format (Formato de destino), elegimos el formato al que convertiremos el texto (en este caso, TMX). Marcando las casillas de debajo, podemos elegir, entre otras opciones, si solamente queremos convertir los segmentos aprobados o si queremos crear un único archivo de destino en vez de un archivo de destino por archivo original. Para terminar, elegimos el nombre y la ruta del archivo de destino y pulsamos el botón Ejecutar.

Una vez terminado el proceso, obtendremos un archivo TMX compatible con la gran mayoría de herramientas de traducción asistida, ya sean de pago o gratuitas. En la siguiente captura de pantalla podemos ver un archivo TMX creado con Rainbow a partir de un documento RTF bilingüe (convertido a su vez con Rainbow a este formato desde un archivo original ODT), y que he abierto con el programa Notepad++ (una alternativa al Bloc de notas de Windows que recomiendo encarecidamente), lo que supone una buena forma de averiguar más información sobre la estructura interna de un archivo TMX.

Archivo TMX

Captura de pantalla de archivo TMX abierto con Notepad++

Con estas dos funciones doy por terminada esta entrada dedicada a Okapi Framework y, en particular, a Rainbow. Como siempre, os animo a trastear con Okapi y con Rainbow, porque así seguro que descubrís muchas más funciones de las que da tiempo a hablar en este blog y, de paso, podéis sacarle el máximo partido de manera acorde con vuestras necesidades profesionales y particulares.

En las siguientes entradas seguiré hablando de Rainbow, así como de otras aplicaciones pertenecientes a Okapi Framework. Con respecto a vosotros: ¿conocíais esta herramienta? ¿Alguno la habéis utilizado? ¿Qué funciones destacáis y cuáles echáis de menos? ¡Espero vuestro comentarios!😉

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 1.283 seguidores