Acentos en Solaris

Explicación teórica

Unix utiliza, en general, por defecto el mecanismo de las "dead keys" para acentos y diéresis.

Esto es, para poner p.e. "á" simplemente se pulsa la tecla de acento, y no pasa nada hasta que se pulsa la "a".

El problema es que los códigos internos ("keysymname") de Sun para las "dead keys" son distintos que para el resto del mundo.

Así pues, p.e. de forma habitual estará definida en tu servidor X11 la tecla de acento grave como

    keysym grave = dead_grave dead_circumflex bracketleft dead_breve

(puede variar, eso es para un teclado típico en el que se tiene en la misma tecla, normal, con mayúsculas y alt-gr respectivamente, acento grave, diéresis y apertura de llaves)

Para que funcione ejecutando clientes X11 remotos de Sun, debería ser

    keysym grave = SunFA_Grave dead_circumflex bracketleft dead_breve

Ahora bien, este tipo de cosas se pueden modificar utilizando la orden xmodmap. Un ejemplo sería:

	xmodmap -e "keysym grave = SunFA_Grave dead_circumflex bracketleft dead_breve"	

Pero eso modificaría la tecla de acento para todos los programas X11 que se ejecuten (es decir, se perdería el manejo estándar de acentos).

También se puede modificar otra tecla para tener en ella los acentos, p.e. en un teclado concreto en el que el código para la tecla F10 es 87 (como se puede ver usando "xev") se podría ejecutar

	xmodmap -e "keycode 87 = SunFA_Acute SunFA_Diaeresis SunFA_Grave"
y así, tecleando F10-a se escribiría "á" en los clientes X11 de Sun.

Tabla de clientes X11 típicos y su funcionamiento

Acentos estándarAcentos SunFA
xterm (sun)nosi
gedit (sun)nosi
gedit (sun-csw)nono
nedit (sun-local)nosi
nedit (sun-csw)nono
xemacs (sun)sisi
dtpad (sun)nosi
gvim (sun)nosi
vi (sun, term)sino
vim (sun, term)sino
xterm (linux)sino
gnome-teminal (linux)sino
gedit (linux)sino
nedit (linux)sino
gvim (linux)sino
vim (linux, term)sino

Notas:

Resumen y recomendaciones

Cuando se desee editar remotamente un fichero del servidor de docencia, la forma más rápida y que menos problemas da es la utilización de "vim" sobre el terminal. No requiere servidor X11 y es una de las opciones más ligeras.

En caso de que no se desee utilizar "vim", aquí hay algunas alternativas:

En cualquier caso, siempre que se trabaja con acentos hay que tener muy claro que juego de caracteres se desea usar y asegurarse de que todos los programas que se utilizan estan configurados para usarlo.


Last Modified: October 25, 2010