Previous Next Table of Contents

3. Adaptando terminfo

Las definición para la terminal de Linux que trae ncurses está pensada para usar los códigos de la cp437. Esto provocará que al cambiar de fuente veamos letras en vez de los símbolos gráficos. Afortunadamente esto no es difícil de solucionar cambiando la definición de terminal en /usr/lib/terminfo/l/linux.

NOTA: si tu distribución de Linux es antigua, es posible que la definición de terminal esté en /usr/lib/terminfo/c/console. Teclea

$ echo $TERM
para saber cuál te corresponde.

Primeramente deberemos extraer el fichero binario en forma de texto editable:

# infocmp > linux.original.tic
# cp linux.original.tic linux.tic
NOTA1: si tu distribución de Linux es antigua, es posible que el equivalente a infocmp se llame untic.
NOTA2: asegúrate de estar en la consola normal (modo texto). Si estás en un xterm, será ésta la información que se vuelque al fichero.

Guarda el fichero linux.original.tic por si es necesario volver a restaurar la definición original, y edita los cambios sobre linux.tic. Éstos son los siguientes:

Ya puedes proceder a compilar:

# tic linux.tic

Tras lo cual ya debería estar listo el sistema.

3.1 Probando si funciona

Seguramente tendrás el Midnight Commander. Ejecútalo para ver si los cambios han tenido efecto.

¡Pero si sale hecho un cristo!

Calma, calma. Pulsa F9 y entra en el menú Options. Selecciona Display bits y elige la opción Full 8 bits. Asegúrate de pasar por el Ok o darle con el ratón. ¿Mejor ahora? Vuelve a entrar en el menú y graba los cambios con Save setup.

En caso de que estés leyendo esto con Lynx, debes saber que en las fuentes de este navegador viene una página que te será muy útil para ver los cambios que has realizado. Dicha página se llama iso8859-1.html, y si estás leyendo esto conectado puedes verla en http://www.uni-passau.de/~ramsch/iso8859-1.html.

3.2 Nota sobre slang

Las versiones de slang anteriores a la 0.99-32 no determinan cuáles son los caracteres gráficos leyendo terminfo, sino que usan unos predeterminados (si la terminal es linux). Si tu versión de esta librería es anterior, puedes actualizarte obteniendo la última versión en ftp://space.mit.edu/pub/davis/slang. Algunos programas que usan slang son slrn, jed y Lynx (si se compila con esta opción).

3.3 Nota sobre reset

Algo que no sé cómo evitar es que al ejecutar reset los caracteres vuelvan a ser "remapeados" como si la fuente fuese la cp437. El único apaño que se me ocurre es incluir esta línea en /etc/profile o en el .profile del usuario:

alias reset='reset ; echo -ne "\033(K"'


Previous Next Table of Contents