Traducción en grupo con OmegaT y Subversion

(2 Votos)
Traducción en grupo con OmegaT y Subversion

En la versión 2.6.0 OmegaT, el programa de traducción asistida gratuito y de código abierto, se introdujo una novedad interesante: la posibilidad de que dos o más traductores puedan trabajar en el mismo proyecto sin recurrir a herramientas externas y así compartir glosarios y memorias de traducción en tiempo casi real

Control de versiones a través de Apache Subversion

La traducción en equipo que ofrece OmegaT se basa en la funcionalidad «control de versiones», comúnmente utilizada por los desarrolladores de software para mantener el control de cambios en el código de un programa. Los programas que implementan el control de versiones, o versioning, son muchísimos. Dos de los más conocidos son Subversion y GIT, y, no por mera coincidencia, resulta que son los compatibles con OmegaT. Todo aquel que quiera aprender más sobre Subversion puede leer una guía muy completa de Ben Collins-Sussman, Brian W. Fitzpatrick y C. Michael Pilato en svnbook.read-bean.com.

Apache Subversion es un software que se instala en el nivel de servidor y puede acoger el código fuente de un programa en fase de desarrollo. Los programadores que participan se conectan al servidor para introducir los cambios en el código, tras lo cual Subversion crea una única versión del programa «fusionando» los diversos cambios realizados por los colaboradores. Asimismo, al cargar un proyecto de traducción de OmegaT en un servidor SVN, podremos asignarlo a diferentes traductores que trabajarán simultáneamente. Algunas nociones básicas en cuanto a terminología se refiere: repository (repositorio) es el depósito donde se guardan los archivos; checkout es la creación de una copia de trabajo desde el repository en el equipo local; commit es la copia de los cambios del equipo local en el repository.

Compartir un proyecto a través de SVN

En primer lugar, es necesario tener un servidor SVN. Hay dos opciones: instalar SVN en nuestro propio servidor, o utilizar un servicio alojado. Si buscamos en Google «free svn hosting», aparecerán varios sitios que ofrecen este servicio de forma gratuita. El procedimiento que trataremos en esta entrada se basa en el servidor SVN gratuito (limitado a 2 usuarios) que ofrece ProjectLocker. Evidentemente, al utilizar un servicio externo, deberemos asegurarnos de no incumplir ningún acuerdo de confidencialidad, ya que estaremos cargando documentos originales en un servidor fuera de nuestro control directo. Como alternativa y para evitar este problema, podemos configurar un servidor SVN privado si, por ejemplo, ya tenemos un servidor Apache que incluya software en cuestión (como VisualSVN). En este caso, la configuración es un poco diferente y la veremos en detalle en otra entrada. Sin embargo, os proporcionamos este procedimiento para Mac y esta solución para Windows. Para empezar, es conveniente hacer pruebas con ProjectLocker o un servicio similar.

Una vez dispongamos del servidor SVN, tendremos que instalar localmente un cliente SVN, con el fin de gestionar las carpetas en el equipo. Para Windows se recomienda TortoiseSVN, mientras que para Mac se recomiendan los scripts gratuitos (Subversion Script) del sitio de Sourceforge, que se pueden descargar e instalar siguiendo las instrucciones del mismo.

Después de esta breve introducción, vamos a ver paso a paso cómo podemos compartir un proyecto de OmegaT entre varios traductores. Conceptualmente hablando, existen tres fases:

  1. creación del repository en el servidor,
  2. importación del proyecto de OmegaT en el repositorio y
  3. checkout del proyecto de OmegaT.

El primer paso es el mismo en todos los sistemas operativos y, normalmente, solo lo realiza el gestor del proyecto, o, en su defecto, el traductor encargado de la gestión. Este paso consiste en crear una carpeta raíz en el servidor SVN que contendrá todos los proyectos de OmegaT que se desea compartir. Por lo que solo será necesario realizarlo una vez. La segunda parte, por el contrario, difiere dependiendo del sistema operativo y hay que realizarla cada vez que queremos importar un proyecto de OmegaT en el repositorio principal. Como hemos indicando, el procedimiento puede ser diferente de los que tratamos aquí, dependiendo del cliente SVN y del sistema operativo. El encargado de realizar este segundo paso es el gestor del proyecto. Por último, el checkout del proyecto se lleva acabo desde OmegaT y solo supone un clic al abrir el programa. Es el único paso necesario para los distintos traductores involucrados en el proyecto.

Creación del repository

  1. Crea un nuevo repository en ProjectLocker:
    1. Haz clic en New Project en el apartado Projects de ProjectLocker.
    2. Escribe el nombre y la descripción del repository.
    3. Elige SVN.
    4. Haz clic en Create Project.
    5. En la vista Projects, haz clic en Clic To View.
    6. En la ventana emergente, selecciona la URL correspondiente a Subversion (no a Trac), cópiala y pégala en un documento de texto nuevo (hará falta más adelante).
  2. Asigna a los usuarios en el repository:
    1. Haz clic en el nombre del repository y añade los usuarios que hayas creado antes. También se puede añadir un grupo.
    2. Haz clic en Manage SVN Permissions (panel izquierdo).
    3. Añadir un grupo (por ejemplo: traducción).
    4. Haz clic en el nombre del grupo.
    5. Agrega uno o más usuarios al grupo.
  3. Recomendamos crear una nueva carpeta en el ordenador, por ejemplo /Repositories/, para que resulte más cómodo, pero también se puede utilizar una carpeta existente.

Importación de proyectos (Mac)

  1. Selecciona la carpeta que acabas de crear y pon en marcha el script SVN Checkout del menú superior derecho.
  2. Pega la URL que guardaste en el paso 1.f y haz clic en OK.
  3. Elige la ruta de destino (existe una subcarpeta llamada /svn/ por defecto, pero se puede cambiar el nombre o utilizar una carpeta existente).
  4. Introduce la contraseña del administrador del equipo, el nombre de usuario y la contraseña de ProjectLocker cuando te lo pidan en la ventana de Terminal que se abre.
  5. Abre OmegaT y crea un proyecto nuevo en la carpeta /Repositories/svn/ (asegurándote de que no falta el archivo project-save.tmx)
  6. Selecciona la carpeta del proyecto que acabas de crear y pon en marcha el script SVN Add y confirma haciendo clic en OK.
  7. Selecciona la carpeta /Repositories/svn/ y pon en marcha el script SVN Commit para sincronizar el contenido de la carpeta. Confirma haciendo clic en OK.

Importación de proyectos (Windows)

  1. Abre OmegaT y crea un proyecto nuevo en una carpeta temporal.
  2. Selecciona la carpeta que acabas de crear y haz clic sobre ella con el botón secundario del ratón. Selecciona Import... en el menú contextual añadido a TortoiseSVN. Este comando agrega los archivos de la carpeta al repository que hemos creado anteriormente.
  3. En la ventana emergente, introduce el nombre de usuario y la contraseña de ProjectLocker. TortoiseSVN recuerda los datos, por lo que solo tendremos que introducirlos la primera vez que nos los soliciten.
  4. Sin cambiar ningún otro parámetro, pega la URL que guardaste en el paso 1.f y haz clic en OK. Es conveniente añadir una nota en el campo de comentarios que facilite la trazabilidad.
  5. ¡Ojo! Ten en cuenta que SVN importa todos los archivos de la carpeta seleccionada, pero no la carpeta en sí. Si se utiliza un único Repository (como sugerimos en este tutorial), hay que añadir manualmente el nombre de la carpeta del proyecto a la URL. Por ejemplo: si estás trabajando en el proyecto núm. 1, añade 2016_0001 a la URL del repositorio principal, para que quede algo como https://free5.projectlocker.com/nome-repo-principale/svn/2016_0001
  6. Puedes borrar la carpeta temporal una vez hayas descargado y gestionado el proyecto con OmegaT.

Checkout del proyecto

En este punto, todos los traductores que tengan una parte de la traducción asignada abren OmegaT y seleccionan Descargar Proyecto en Grupo... en el menú Proyecto. En la ventana emergente, seleccionan SVN, escriben la dirección URL previamente copiada (completando el número del proyecto, es decir, https://free5.projectlocker.com/nome-repo-principale/svn/2016_0001 como en el ejemplo), e indican la carpeta local del ordenador en la que desean guardar el proyecto. Si se pide autenticación, hay que introducir el nombre de usuario y la contraseña del servidor SVN (ProjectLocker en nuestro ejemplo).

Durante la primera conexión con el servidor SVN se descargan localmente todos los archivos creados en el repositorio. ¡Ojo! Hasta la versión 2.6.1 solo se versiona, es decir, «se sincroniza», el archivo que contiene las unidades traducidas (project-save.tmx). Desde la versión 2.6.1_2, también se versiona el archivo de glosario, pero solo el del proyecto, es decir, el que tenga un nombre como {project_name} -glossary.txt. Esto significa que cualquier cambio en otros archivos del proyecto, por ejemplo, cambios temporales en la segmentación o en los archivos originales, no se detectan automáticamente por OmegaT. Sin embargo, dado que todo el proyecto se carga en el servidor SVN, siempre se puede ejecutar el checkout y la sincronización manual con el cliente SVN (procurando no tener activo OmegaT durante estas operaciones, ya que puede ocasionar conflictos).

Durante la traducción, cada vez que guardas el proyecto, se sincroniza el archivo project-save.tmx, que contiene todos los cambios combinados con los realizados por los demás traductores. Ajusta el guardado automático a pocos minutos (por ejemplo, 2 o 3) para asegurarte de sincronizar tu trabajo con el de los demás frecuentemente. Lo mismo se aplica al archivo de glosario.

Es importante destacar que, si no completamos el proyecto en una sola sesión, para la próxima sesión no habrá que volver a descargar el proyecto en grupo, sino que simplemente tendremos que abrir el proyecto ya descargado. OmegaT detecta que se trata de un proyecto en grupo y se conecta al servidor de forma automática. En caso de que la conexión falle, cierra el proyecto y vuelve a abrirlo.

En comparación con el procedimiento con Dropbox que ya expusimos en italiano en una entrada anterior, la función «proyecto en grupo» tiene algunas ventajas claras. Pese a ser un poco más complejo a la hora de configurarlo por primera vez, con la función de «proyecto en grupo» de OmegaT, podemos organizarnos en grupos de trabajo formados por más de dos traductores. Por otra parte, en consonancia con el espíritu de OmegaT, solo utiliza herramientas de código abierto (tanto como Apache Subversion como Git se distribuyen con licencias de código abierto) sin depender de software comercial (como Dropbox). Además, configurando las características del servidor SVN, podemos proporcionar al cliente acceso de lectura a la carpeta que contiene el archivo de llegada, para facilitar la entrega del proyecto.

Todas estas ventajas sin mencionar que estos beneficios están a disposición de los usuarios completamente gratis. Solo con realizar una rápida comparación de los precios que los competidores comerciales consideran oportunos para sus soluciones basadas en servidores debería bastar para comprender el alcance y la importancia de esta función de OmegaT. Cualquiera que desee contribuir al proyecto con una donación puede hacerlo cómodamente a través de PayPal.


*) Lamentablemente, actualemente ProjectLocker solo ofrece servidores gratuitos para un solo usuario. En su lugar, Assembla es una buena alternativa.

Qabiria white logo

Creemos en el incremento de la productividad mediante el uso creativo de la tecnología.

Somos socios de:

logo de PIMEC

Últimas noticias

Contacto

Qabiria Studio SLNE
Carrer Lleida, 3 1-2
08912 Badalona
(Barcelona)
ESPAÑA

+34 675 800 826

qabiria

Envíanos un mensaje

Recibe nuestro boletín

¿Quieres leer los artículos y novedades de Qabiria directamente en tu bandeja de entrada?