Nota:
Parece ser que el scoop es un kbron de mucho cuidado y me ha chafado todos los bonitos caracteres japoneses. Como Murphy existe, no me he dado cuenta hasta darle al "Preview" después de escribir la entrada entera y me da pena tirar este tocho a la basura. Así que la posteo tal cual y en "Linux y la lengua japonesa" la tenéis tal y como debió aparecer en Libertonia.
... Y ya de paso ¡Campaña por una Libertonia en utf-8 ya! :-).
Ahora sí, la entrada:
Mi objetivo era tener un sistema bilingüe español-japonés, de tal forma que todas las aplicaciones tuvieran como lenguaje base el español pero qué, llegado el caso, pudiese escribir un correo o un documento en el mismo KMail o LyX, o mantener una conversación por el MS Messenger o Jabber con Kopete en japonés.
La primera piedra en el camino son las fuentes: la representación correcta de los caracteres japoneses en pantalla, junto a el resto de menús e información localizada en español.
La descripción del problema es la siguiente: si queremos que nuestro sistema siga "españolizado" no basta con que instalemos fuentes adicionales japonesas. Necesitamos que en una misma aplicación se representen el alfabeto occidental (con su "ñ", sus vocales acentuadas y demás) junto a los kanjis y los kana japoneses.
Una solución es usar fuentes que engloben los dos juegos de signos (y muchos más). Por ejemplo la "Arial MS Unicode" (24 MB de fuente truetype) aunque, por desgracia, esta fuente ya no está disponible para su descarga en la web de Microsoft (si bien se puede encontrar aún en otros servidores ftp de la red, o en el cd del MS Office 2000).
La otra solución, la solución "moderna", es confiar en la potencia de Pango y de Qt. Ambos permiten mezclar distintas fuentes en la misma ventana, de manera que no te obligan a cargar una fuente de 24 MB como la anterior y además te permiten seguir con tus bonitas fuentes y no sufrir la espartana Arial por todo el escritorio. El resultado práctico es que tanto Gnome 2.0 como KDE no tienen ningún problema para representar caracteres japoneses mientras el resto del interfaz continua localizado a nuestro gusto. El resto de aplicaciones, sean Xlib, Gtk1.x o Motif no tienen tanta suerte.
Evidentemente, para que el sistema mezcle las fuentes, la codificación de entrada que definamos es importante, pero aquí de nuevo uno puede ponerse en manos de los adelantos de la técnica y no preocuparse de nada más :-): KDE usa en la mayoría de las distribuciones utf-8 como codificación predeterminada, así que este problema está resuelto de antemano. RedHat configura todo el sistema por defecto en utf-8 y en Mandrake, con su localedrake, no pone pegas. Podéis comprobar ahora si vuestro sistema representa correctamente el japonés visitando la página de nuestros tocayos LILO (Linux Install Learning Osaka).
Ahora llegamos al quid de la cuestión: ¿cómo leches escribo japonés con este teclado? :-) y la respuesta es: "casi igual que como lo haría un japones". La orientación del texto no es problema porque, aunque tradicionalmente el japonés de arriba a abajo y de derecha a izquierda, no hay mayor problema en escribirlo de izquierda a derecha y de arriba a abajo (como el español, vamos) y, por otro lado, para escribir los kana y los kanji en un ordenador con un interfaz de entrada universal (el teclado) habitualmente occidental (Estadounidense), los japoneses recurren a un pequeño ayudante: el IME o "Input Method Editor". MS Windows tiene dos versiones de su "Global IME": una para el MS Office XP y otra el MS Outlook y MS Internet Explorer, disponibles para su descarga en la Sección Global IME de la web de MS IExplorer.
Las X, que son lo que nos interesa, tienen desde antaño infraestructura para "enchufar" nuevos métodos de entrada: el XIM (que está apunto de ser reemplazado por el superior IIIMF que permite, entre otras cosas, seleccionar el método de entrada "en caliente"). De hecho, este protocolo ha servido de "inspiración" a Microsoft en el desarrollo de su soporte para IME.
El IME clásico de las X es kinput2 que, a través de XIM, permite que escribamos en japonés en todas las aplicaciones (bueno, casi todas: por desgracia el LyX no, pero hay un CJK-LyX paralelo y ahora que se basa en Qt es de esperar que lo soporte de serie en breve), de forma transparente: sin tener que modificar una línea de código o una línea de configuración en las mismas. Para usarlo necesitaremos un servidor XIM apropiado, como Canna o FreeWnn, que hagan la conversión romaji a kana y kana a kanji. El servidor Canna incluye soporte, además de para kinput2, para otras aplicaciones que lo usan directamente como Vim o Emacs (Mule).
Kinput2 es una aplicación Xlib y, como tal, se configura completamente desde un farragoso archivo de recursos (p.ej /etc/X11/app-defaults/Kinput2). Es interesante que incluyáis en ese archivo, en los locales "permitidos" para kinput2, vuestro local habitual, de manera que podáis usarlo sin tener que fijar el LANG y el LC_ALL a algo como ja_JP. Después, para utilizarlo debéis seguir estos pasos:
- Aseguraos de que tenéis el servidor XIM corriendo
- Arrancad el kinput2 (se puede hacer en el Xclients o en cualquier momento). Por ejemplo, si usais el servidor Canna:
$ kinput2 -canna &
- Fijad la variable de entorno XMODIFIERS adecuadamente. Por ejemplo con:
$ export XMODIFIERS="@im=kinput2"
- Arrancad la aplicación en la que queráis trabajar en japonés.
Otra forma de hacerlo es con un pequeño script lanzador de aplicaciones en japonés. Si vais a usar sólo muy de vez en cuando el soporte de japonés, podéis escribir este script "japo":
#!/bin/sh
XMODIFIERS="@im=kinput2" LANG=ja_JP LC_ALL=ja_JP ${1+"$@"}
Y luego arrancar la aplicación que queramos con: "japo editor &", por ejemplo.
Sea como sea, una vez dentro de la aplicación el uso de kinput2 es muy sencillo. Para empezar, se activa y se desactiva con Shift-Espacio o C-Kanji si tienes un teclado japonés de 106 teclas (siendo este atajo configurable en el archivo de recursos). Se indica que nos encontramos modo de entrada japones por una pequeña ventana emergente que contiene una "a" (la vocal "a" en hiragana: "?"), que aparece ligeramente por debajo del cursor. A partir de ahí, podemos escribir el japonés en romaji y veremos como nuestras pulsaciones se traducen en los símbolos del silabario hiragana. Si en algún momento queremos transcribir esa palabra en katakana o con su kanji podemos o bien pulsar Control-n, que selecciona directamente la siguiente transcripción posible con esa fonética, sin los kanji (katakana y romaji) o pulsar Espacio y se nos muestra en otra ventana modal todas las posibles transcripciones, incluyendo los kanji. Para validar una transcripción simplemente la seleccionamos con los cursores y pulsamos Enter.
Una relación completa de los atajos de kinput2 la podéis consultar en esta guía de kinput2 en la web de Mozilla.
Mencionar que hay otras propuestas para los métodos de entrada en Linux. Gtk-2 tiene su propia infraestructura (independiente de las X) y el im-ja es un IME compatible con ella. Incluye incorporada además una versión adaptada del kanjipad (un widget de reconocimiento de escritura de kanji muy efectivo, por la disciplina que exige la escritura de kanji. Recordemos que los programas de reconocimiento de escritura manual no reconcen el símbolo completo sino que se guian del orden de dibujado de los trazos). Las ventajas de usarlo son que es independiente de las X (funciona igual en DirectFB o en Windows, por decir algo) y el aspecto visual es mejor. La desventaja es que sólo funciona con las aplicaciones Gtk 2. También hay una versión experimental de un servidor de entrada IIIMF: el iiimf-skk. En ambos casos, la mécanica de cara al usuario, a la hora de escribir, es casi la misma que con kinput2.
A lo mejor te estás preguntando si este sistema de entrada tan complicado, con tantos atajos, funciona. Pues sí, funciona y es ágil. Te permite escribir japonés bastante deprisa... O al menos, más rápido de lo que tarda en pensar en japonés un ?? (gaijin :-)).
Para poner algún ejemplo, esta noticia la estoy escribiendo en Konqueror y esta sería la transcripción del departamento usando escritura japonesa y kinput2, con muy poquitas pulsaciones:
???????????
También se pueden escribir otras verdades fundamentales (para los usuarios de Linux de la túnica naranja). Esa frase mezcla katakana, kanji e hiragana:
??????????
Si no visualizas correctamente los ejemplos, puede que no tengas instaladas las fuentes o puede que vuestro navegador no entienda utf-8 (espero que scoop sí lo soporte. Nota a posteriori: pues no, este pequeño bastardo no lo soporta, ...). En ese caso, forzad la codificación de la página (en Konqueror se hace desde el menú "Ver", ignoro en otros navegadores cómo).
Para completar, haré una referencia rápida a algunas aplicaciones que merecen la pena si estamos haciendo nuestros pinitos en esto del japonés.
- Kiten: un decente diccionario Japonés-Inglés, Inglés-Japonés para KDE, con búsqueda de kanjis por grado, radicales y número de trazos, que "desconjuga" los verbos y adjetivos y que permite personalizar tests de kanji para su estudio.
- Kanatest: un sencillísima aplicación para aprender los silabarios hiragana y katakana. Se muestran los símbolos y tienes que transcribirlos en romaji. Guarda nuestras estadísitcas y las horas que le hemos dedicado.
- JWPce: ésta es una aplicación para Windows, pero la incluyo porque es soft libre y porque usa exclusivamente el api Win32, así que compilarla contra Wine es sencillo. Se trata de un editor de texto en japonés con funciones de diccionario y otras ayudas.
- Aunque no sea una aplicación, es un enlace interesante: Linux-nihongo HOWTO. El Howto de Linux en japonés (afortunadamente en inglés :-)).
- Etc. Echad un vistazo en freshmeat, vagos :-)
Fdo. ??? ;-)