miércoles, 29 de agosto de 2012

Mapa del teclado en consala - Debian Wheezy

Cuando estamos instalando Debian GNU/Linux y somos españoles lo mas normal es seleccionar el idioma y la distribución del teclado en español.

Suele pasar que por error nuestro en alguna actualización, o por un fallo del paquete de idiomas en una actualización, etc.... el mapa del teclado se desconfigure y lo habitual es que el mapa del teclado se autoconfigure por defecto en ingles.

Uno de los aspectos más molestos es no poder escribir con naturalidad en nuestro idioma (español en este manual) por falta de soporte de los caracteres especiales en el software. El juego de caracteres básico de ASCII es de 7 bits, y no incluye ni las vocales acentuadas ni la letra 'ñ'.

Existe la norma ISO-8859-15 también llamada ISO-Latin1 que abarca todos los caracteres.

Aun así existen problemas con el correo electrónico, muchos sistemas solo respetan 7 bits, por lo tanto, textos que podemos ver correctamente en nuestro ordenador probablemente se visualizará muy mal cuando los enviemos a otra persona.




Configurando la consola

Locales
Si usamos el comando locale en la consola de Debian GNU/Linux, este nos muestra la zona geográfica actualmente configurada.



En caso que tengamos el idioma mal configurado tendríamos que volver a reconfigurar las locales para el idioma español.

Para reconfigurar las locales usamos el siguiente comando:
dpkg-reconfigure locales

Debian GNU/Linux usa el paquete "locales" para instalar uno o varios de los muchísimos idiomas a los que esta traducidos.

Lo mas normal es que tengamos instalado dicho paquete, en caso de no ser así procederemos a su instalación, como siempre hacemos en este blog usamos synaptic o bien desde consola.

# apt-get install locales





Cambiar el idioma por defecto a español.

Lanzamos un consola virtual y nos logeamos como usuario root, y ejecutamos el siguiente comando:

dpkg-reconfigure locales


Al pulsar intro nos presenta el siguiente asistente de configuración en el cual hemos de ir seleccionando la o las opciones que nos interesen.

Observación: en este tipo de menús usamos las teclas de cursores (las flechitas) para movernos, la barra espaciadora la usamos para seleccionar, la tecla tabulador (Tab, arriba de Bloqueo Mayúsculas) la usamos para alternas entre las opciones disponibles y la tecla Intro (enter) se usa para aceptar la selección.

Para poner nuestro sistema Debian GNU/Linux en idioma español hemos de marcar las siguientes opciones.

es_ES@euro ISO-8859-15
es_ES ISO-8859-1
es_ES.UTF-8 UTF-8


==================================================
NOTA: las dos primeras letras en minúsculas indican el idioma ("es" para español), las siguientes dos en mayúsculas indican el país ("ES" para España) y lo siguiente a partir del idioma ("@euro ISO-8859-15" "ISO-8859-1" "UTF-8") es el tipo de codificación que utilizan para representar los caracteres.
==================================================


En la siguiente pantalla nos pregunta: ¿cual de los idiomas seleccionados quiere que sea el predeterminado?, en mi caso he elegido es_ES.UTF-8



En la siguiente pantalla nos informa que se ha completado con éxito, la instalación de los idiomas seleccionados.



Para asegurarnos que todo se ha configurado perfectamente usamos el siguiente comando:

locale



==================================================


Explicación de las normas de codificación de caracteres:

ISO 8859-1: es una norma de la ISO que define la codificación del alfabeto latino, incluye los diacriticos (como letras acentuadas, ñ, ç), y letras especiales (como ß, Ø), necesarios para la escritura de las siguientes lenguas originarias de Europa occidental: afrikaans, alemán, aragonés, catalán, danés, escocés, español, feroés, finés, francés, gaélico, gallego, inglés, islandés, italiano, neerlandés, noruego, portugués, sueco y vasco.

También conocida como Alfabeto Latino n.º 1 o ISO Latín 1

Esta norma pertenece al grupo de juegos de caracteres de la ISO conocidas como ISO-8859 que se caracterizan por poseer la codificación ASCII en su rango inicial (128 caracteres) y otros 128 caracteres para cada codificación, con lo que en total utilizan 8 bits.

Los caracteres de ISO-8859-1 son además los primeros 256 caracteres del estándar ISO 10646 (Unicode).


ISO 8859-15; es la parte 15 de ISO 8859,un estándar de codificación de caracteres definido por la Organización Internacional para la Estandarización (ISO). Es similar a ISO 8859-1 pero sustituye algunos símbolos poco comunes por el símbolo del euro y algunos otros caracteres que faltaban. Codifica los caracteres con 8 bits y puede usarse para representar el alfabeto y otros caracteres importantes para almacenar textos en: inglés, francés, alemán, español y portugués (entre otros idiomas de Europa occidental) en ordenadores.

Este conjunto de caracteres tambieén se denomina ISO_8859-15 y Latín-9.


UTF-8; (8-bit Unicode Transformation Format) es una norma de transmisión de longitud variable para caracteres codificados utilizando Unicode. Usa grupos de bytes para representar el estándar de Unicode para los alfabetos de muchos de los lenguajes del mundo. Es especialmente útil para la transmisión sobre sistemas de correo de 8 bits.





Re-Configurando la consola

Para reconfigurar la consola hemos de instalar con la ayuda de synaptic o bien desde consola, los siguientes paquetes (los paquetes antiguos como console-data, console-common y console-tools, ya no son necesarios y es recomendable borrarlos) :

apt-get install console-setup
apt-get install console-setup-linux



Ahora tenemos que reconfigurar el mapa del teclado para la consola de Debian GNU/Linux.

Lanzamos una consola o terminal tty como administrador y ejecutamos el siguiente comando dpkg-reconfigure console-setup, para reconfigurar el mapa del teclado en español.


Al cargar el asistente, lo primero que tenemos que seleccionar es el tipo de mapa de teclado que vamos a usar, en nuestro caso seleccionamos UTF-8 pulsamos en aceptar para continuar.


Ahora seleccionamos el Conjunto de caracteres que debe utilizar la tipografía en la consola, seleccionamos Buscar el conjunto de caracteres óptimo. Pulsamos en Aceptar para continuar.


en la siguiente pantalla seleccionamos el tipo de letra a usar. podemos seleccionar cualquier opción pero preferimos la opción: No cambie la tipografía del arranque/núcleo


Como el proceso de reconfigurar el teclado ha sido perfecto nos devuelve a la consola o terminal tty, para seguir trabajando con ella.


Con esto ya tenemos nuestra consola configurada en perfecto español español, podemos usar acentos y la letra ñ.



Algunas capturas de pantalla demostrativas.





















.

5 comentarios:

belerioth dijo...

Recientemente instalé iBus en Debian Wheezy y se me desconfiguró el idioma del sistema (estaba en Español de México) y se pasó a Inglés. Tu aporte me sirvió mucho para restaurarlo, si acaso tuve que agregar idioma Español de España y hacer un reinicio de Debian para que tuviera efecto, pero nuevamente tengo mi sistema en Español de México.

Gracias por publicar esta información, me fue de mucha utilidad.

Matias dijo...

Gracias, realmente me ha sido de gran ayuda... aq todavía me resta algun problemilla.

Unknown dijo...

Muchísimas gracias por compartir tus conocimientos. Casi me vuelvo loco para poder escribir bien cno mi teclado por consola en la raspberry pi con SO variante al Raspbian. En todos los sitios te dice como cambiar en la interfaz gráfica pero nadie en consola.

Muchas gracias, un saludo

moonwatcher dijo...

hola, muy útil el articulo. Estaba instalando Debian en otra partición desde mi sistema principal /debian testing) y me lié un poco a la hora de configurar el teclado. Cuando reinicié y entré al nuevo sistema era imposible escribir nada ...XD.
Así es facil. Saludos.

Unknown dijo...

Hola. Debían funciona perfecto, pero POL no acepta usar tildes y eso afecta el uso de Excel (que debo usar por el uso de tablas dinámicas). La alternativa Ubuntuniana de marcar "Ninguno" en Ibus no me ha resultado, también hice lo que indicas acá y sin resultado. ¿Alguna otra idea que pudiera aplicar? Gracias