Sobre traducciones y fallos que cuestan tiempo ...
Juan F. Ruiz  Marzo 22 2008
Juan F. Ruiz  Marzo 22 2008
Hola, compañeros.


Os voy a hablar un poco de mi experiencia traduciendo de inglés a castellano una plantilla de Notes.

Primero miré en la documentación de Notes/Domino sobre las bases de datos multilingües y cómo configurar una base de datos para que soportara varios idiomas ... y la verdad, la forma que adoptaron para esto en Lotus/IBM no me gustó nada .... De cada objeto de diseño que soporte la funcionalidad de mostrarse en varios lenguajes ( formularios, subformularios, etc. ) debes hacer una copia  y a éstos cambiarles una propiedad que digan en el lenguaje en el que están. Luego traduces todas estas copias con el lenguaje indicado ... Con esto la base de datos se hace enorme y aparte, como no seas organizado, te puedes hacer un lío de narices, si tienes que tocar código, o enlazar algunos objetos a otros ...

Imaginad el resultado : un usuario inglés hace click sobre un documento en una vista en inglés y le aparece el documento con los nombres de los campos, las etiquetas y las instrucciones en castellano ...

Así que deseché esa opción y me puse a traducir directamente los objetos de diseño del inglés al castellano ... Y aquí empieza el trabajo de chinos de ver lo que se debe cambiar y lo que no ... aparte de empezar a pegarte con las entidades HTML ... Porque, al principio, no me dí cuenta de una propiedad muy importante de formularios y páginas .. y me lié a poner ñ donde había una 'ñ', á donde había una á ... y así ....

Luego descubrí que había bloques que no se mostraban, o se descolocaban los DIV's ... hasta que veía que se me había olvidado cerrar una comilla, etc...

Despues de unos días, llegué a un punto, donde algunas partes de la plantilla ( un blog ) parecían ser "intraducibles" ... me explico: si las traducía, la funcionalidad se iba al carajo, si lo dejaba en inglés todo iba bien ... Así que tuve que tocar código en algunos sitios. Por cierto, la funcionalidad de sindicación ( los RSS ) me dió mucha lata, ya que van en XML, y como el XML no esté validado .... así como algunas otras partes de la plantilla hasta que ví la luz ...

Navegando por las propiedades de un formulario, me di cuenta de que en la pestaña segunda ( La del gorrito ese raro ) hay un conjunto de propiedades que se aplican si se accede al formulario por web ... Una era "Content Type" que estaba fijada como "text/html" y luego otra cuyo nombre es "Character Set" ... ¡Dios! Si me hubiera dado cuenta de esta propiedad al principio no habría tenido tantos problemas ... Seleccioné "Unicode (UTF-8)" y todo empezó a funcionar como es debido ...

Os voy a dejar un pequeño código en @Fórmula que os permite convertir los caracteres latinos a sus correspondientes entidades HTML  :

listaLatin1:="á":"é":"í":"ó":"ú":"ñ":"Ñ":"Á":"É":"Í":"Ó":"Ú":"¿":"¡";
listaHtmlLatin1:="á":"é":"í":"ó":"ú":"ñ":
"Ñ":"Á":"É":"Í":"Ó":"Ú":"¿":"¡";
tmp:=@ReplaceSubstring(txtCampo;"&";"&");
FIELD txtHTMLCampo := @ReplaceSubstring(tmp;listaLatin1;listaHtmlLatin1);
@True

Este código lo colocaís en un botón, junto con dos campos de texto editables, uno de nombre "txtCampo" y el otro de nombre "txtHTMLCampo"  en un formulario y ya está.

Recursos

Sobre traducciones y fallos que cuestan tiempo ...