Propuesta para el artículo: "Trabajando hacia la internacionalización" Fecha: 23 de Junio 1999 1. Objetivo GNU/Linux en idioma del usuario. Todo: desde programas de usuario hasta mensajes del kernel. 2. Traducción de documentos 2.1 Introducción a los proyectos de Documentación LDP: particular de Linux (Instalación, Mantenimiento, Desarrollo...), y páginas de manual (no exclusivo de Linux). En algunos proyectos (como Debian) grupos de documentación exclusivos (DDP), GNU también lo tiene: puede estar financiado o no. Incluso revistas de Linux: openresources, linux gazette, linux journal, linuxfocus... (online o no) 2.1.1 Servidores de web Los servidores de web también son documentación. Medios para facilitar acceso a usuario (el servidor en su idioma) [ probar servidores de distribuciones y ver en qué idiomas están ] 2.2 Inglés como idioma universal 2.3 Cómo se lleva a cabo la traducción Grupos de trabajo por idiomas, coordinados por lista de distribución y con repostiorio de "activos" -> documentos traducidos y documentos en fase de traducción. 2.3.1 Ejemplo: Castellanización LUCAS, INSFLUG 2.3.2 Ejemplo: dentro de proyectos Lista de correo de traducción en Debian, traducción del servidor de WWW. Generalmente serán desarrolladores de la propia distribución, con participación esporádica de usuarios de la misma. 3. Traducción de programas 3.1 Por qué traducir los programas 3.2 Cómo se sabe qué idioma es el del usuario. Shell: variables de entorno. Ficheros de configuración. 3.3 Tipos de traducción 3.3.1 Traducción estática De ficheros determinados (manuales incluidos en el programa, o leídos por el mismo). De ficheros incluido (headers) que en tiempo de compilación (y mediante opción) ofrecen los mensajes, en los programas para los mensajes se utilizan defines. La traducción se realiza por selección del usuario o por ejecución de un binario determinado (que está adapatado) 3.3.1.1 Ejemplo ficheros: xaos 3.3.1.2 Ejemplo binarios: traducción de arranque de Debian 3.3.2 Dificultades Los usuarios tienen difícil contribuir al esfuerzo inicial, serán en la mayor parte desarrolladores. 3.3.2 Traducción dinámica En tiempo de ejecución el programa "adivina" el lenguaje del usuario y le ofrece todos los mensajes/ayuda en su idioma (también implica uso de formatos de fecha y formatos monetarios...) 3.3.2.1 Internacionalización en el proyecto GNU: gettext 3.3.2.2 Prepara un programa para internacionalización 3.3.2.3 Herramientas de gettext 3.3.2.4 Ficheros pot Más fácil de traducir por cualquiera aunque en algunos casos es necesario acceder a las fuentes. 3.3.2.5 Formas de coordinación (propuesto) Objetivo GNU: internacionalizar todos los programas y que los traduzcan los grupos 4. ¿Quién traduce? No es necesario ser desarrollador, objetivos del proyecto GNU. Aunque a veces los mensajes están ligados al programa: necesario conocimientos del lenguaje en que están hechos (generalmente C) 4.1 Ciclo de vida de una traducción 4.1.1 Cómo generalmente es Usuario con experiencia que desea ver los programas en su idioma. Modifica en una de las formas citadas y envía "parche" al desarrollador. Una vez hecho no vuelve a mirarlo, no hay actualización generalmente (hasta que llega otro usuario que está descontento porque ve parte de los mensajes en un idioma y parte en otro) 4.1.2 Cómo debería ser Siempre necesario "primer empujón", la parte más difícil es terminar todos los contenidos iniciales. Los contenidos varían (necesario herramientas de seguimiento como CVS) y hay que actualizar los cambios. Revisión continuada. Contar experiencia de traducción del www de Debian (aún no 100% traducido)