una traductor traducir traducciones script para pagina español ejemplo con como codigo internationalization diff gettext

internationalization - traducir - traductor de html a español



Cómo trabajar eficientemente con los archivos PO de gettext al realizar ediciones pequeñas a valores de texto grandes (2)

En busca de sugerencias y / o herramientas sobre cómo trabajar de manera eficiente con los archivos PO gettext al realizar ediciones pequeñas a los valores grandes de los msgid.

Ejemplo: Tenemos muchos mensajes de oraciones múltiples / párrafos múltiples que se almacenan en nuestros archivos de catálogo de mensajes de PO. Si hacemos un pequeño cambio en un mensaje, quizás editando una sola oración o incluso corrigiendo la puntuación, perdemos nuestra traducción original cuando ejecutamos la utilidad msgmerge.

En lugar de volver a traducir los mensajes largos (que ya pasaron por un proceso de aprobación editorial) desde cero, nuestros traductores regresan a copias de seguridad de sus archivos PO y buscan manualmente el texto del último par de traducción msgid / msgstr, que luego difieren los valores de msgid actuales para ver qué ha cambiado, seguido de una copia y pegado de la última traducción que luego editan para reflejar el valor de msgid actualizado.

¡Eso es mucho trabajo! Ciertamente debe haber una mejor manera de manejar este tipo de flujo de trabajo?

¿Existe alguna forma de mejores prácticas para archivar y encontrar traducciones anteriores que ya no están en un archivo PO? Una idea que nos viene a la mente es almacenar una id. De mensaje única en el texto de nuestros mensajes o en los comentarios que preceden a nuestro mensaje y usar esta identificación para recuperar pares de traducción de msgid / msgstr para su revisión. ¿O hay editores de PO o servicios en línea que hacen que este proceso sea más eficiente?

Gracias, Malcolm


He estado buscando una forma de hacer cambios menores a los msgids sin alterar las traducciones existentes, por ejemplo, correcciones de errores en el texto fuente. Aquí hay una receta que acabo de elaborar que no incluye sitios web:

  1. Use msgen de GNU gettext para generar un archivo po inglés a inglés:

    msgen project.pot >corrections.po

  2. Edite manualmente msgstr s en "corrections.po" para reflejar las correcciones de errores realizadas en el texto de origen, por lo que tenemos una asignación de las cadenas corregidas sin corregir. (No he pensado en cómo automatizar este bit).

  3. Para cada traducción "real" (por ejemplo, ca.po ): abuse poswap del Translate Toolkit ( translate-toolkit en Ubuntu) para cambiar los msgids:

    poswap -i corrections.po -t ca.po -o ca.new.po

Esto parece perder los comentarios de cabecera y las cadenas obsoletas de los archivos gettext po de GNU, pero corregirlos manualmente es mucho menos trabajo que modificar manualmente los archivos .gidg en cada traducción (y probablemente podría ser fácilmente un script).

(Obviamente, esto solo debe usarse en circunstancias excepcionales, donde está absolutamente seguro de que ninguno de los traductores necesita la oportunidad de volver a revisar sus traducciones).


El soporte de la memoria de traducción de Virtaal probablemente pueda ayudar con esto. Si sus unidades originales están en la memoria de traducción, se mostrarán (con diferencias) dentro de un cierto margen de cambio (basado en la distancia de Levenshtein). Todavía contendrá la traducción original (no modificada), pero al menos el texto original es más accesible y las diferencias resaltadas.

No estoy 100% seguro, pero Pootle también podría ofrecer una solución basada en la web. Si necesita ayuda, solicite #pootle en FreeNode.

La mejora más general es, por supuesto, separar / segmentar las unidades lo más posible.