Go to the first, previous, next, last section, table of contents.


Procedimiento a seguir en C/C++

En este caso en vez de [_ ] hay que usar la macro _( ) para encerrar la cadena a traducir, Por ejemplo : printf("hello world"); Se debe escribir printf(_("hello world"));

En C/C++ no hay la casuística de tcl debida a la sustitución, y los parámetros se escriben de la forma deseada después de la cadena de formato: Por ejemplo: printf("User %s running %i threads",username,nproc); Se debe escribir printf(_("User %s running %i threads"),username,nproc);

Como en tcl, se debe prestar atención a no tratar de traducir las palabras clave, "includes" del programa, etc.

Para incluir la macro _( ) en cualquier proyecto, sin arrastrar otras declaraciones de funciones no deseadas, se ha aislado del fichero "Main.h" a un nuevo fichero de cabecera, llamado "Trad.h"

Como alternativa a Msgcat se barajó la opción de usar gettext, pero se descartó por varios inconvenientes: - Es originario de plataformas UNIX, hay que retocarlo para Windows. - Solo sirve para los ficheros C/C++, pero no para ficheros tcl. - Tiene un programa de extracción de cadenas pero sólo para C/C++, no para tcl. - Msgcat sirve para tcl y C/C++, y viene incluido de serie con tcl (con lo que garantiza un mantenimiento)


Go to the first, previous, next, last section, table of contents.