[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

ISO-8859-1 y cp437



Hola, saludos:


	Tengo un problema al intentar imprimir (o visualizar) la letra "ñ".
Parece ser que la consola esta bien configurada pues el teclado muestra
la "ñ" cuado la pulso. El problema surge cuando intento imprimir un
fichero que contiene letras "ñ". He conectado una impresora serie al
ttyS0 y he realizado las siguientes pruebas:


1. # printf "ñ" > /dev/ttyS0

	Obtengo en la impresora un carácter (que ahora no encuentro) que es el
signo más y debajo el menos.

2. # printf "\xF1" > /dev/ttyS0

	Supuestamente este código hexadecimal corresponde a la letra "ñ" segun
el código ISO 8859-1 (Latin 1), que supuestamente es el que tiene la
consola (tenego en el entorno LC_ALL=es_ES). Obtengo en la impresora el
mismo carácter del punto anterior (un signo mas-menos).

3. # printf "\xF1" > /dev/console

	Muestra en la pantalla una "ñ" efectivamente.

4. # printf "\xA5" > /dev/ttyS0

	He descubierto que mandando ese código hexadecimal al puerto serie
obtengo en la impresora la dichosa "ñ". El código hexadecimal
corresponde con la codificación CP437.

No entiendo que pasa. Parece ser que la consola está correctamente
configurada con su mapa de teclado español y su juego de caracteres
ISO-8859-1, pero cuando salgo por el puerto serie se interpretan los
códigos enviados según el CP437.

Se puede pensar que la impresora está configurada con el juego de
caracteres CP437, pero no es asi. He probado con otra impresora que va
por el puerto paralelo y mediante el tradicional "lpr" he intentado
imprimir un fichero lleno de letras "ñ", he obtenido una hoja llena de
signos más-menos como explicaba en el punto 1.



Reply to: