Locales (Español)
From ArchWiki
i18n |
---|
Deutsch |
English |
Español |
Česky |
Українська |
简体中文 |
Contents |
Introducción
Los locales son utilizados en Linux para definir qué lenguaje utiliza el usuario. Como los locales definen también el mapa de caracteres que utiliza el usuario, ajustar el locale correcto es especialmente importante si el lenguaje contiene caracteres que no están contenidos en el ASCII.
El Nombrado Locale esta definido como sigue:
<lang>_<territory>.<codeset>[@<modifiers>]
Aunque en esta guía se configura un sistema que utiliza el locale es_MX.UTF-8, puede seguir este artículo fácilmente si se desea configurar otro locale diferente, cambiando es_MX por el locale correspondiente a su país. Actualmente, están disponibles estos locales para los hispanohablantes:
Locales del Español
- es_AR.UTF-8 UTF-8
- es_AR ISO-8859-1
- es_BO.UTF-8 UTF-8
- es_BO ISO-8859-1
- es_CL.UTF-8 UTF-8
- es_CL ISO-8859-1
- es_CO.UTF-8 UTF-8
- es_CO ISO-8859-1
- es_CR.UTF-8 UTF-8
- es_CR ISO-8859-1
- es_DO.UTF-8 UTF-8
- es_DO ISO-8859-1
- es_EC.UTF-8 UTF-8
- es_EC ISO-8859-1
- es_ES.UTF-8 UTF-8
- es_ES ISO-8859-1
- es_ES@euro ISO-8859-15
- es_GT.UTF-8 UTF-8
- es_GT ISO-8859-1
- es_HN.UTF-8 UTF-8
- es_HN ISO-8859-1
- es_MX.UTF-8 UTF-8
- es_MX ISO-8859-1
- es_NI.UTF-8 UTF-8
- es_NI ISO-8859-1
- es_PA.UTF-8 UTF-8
- es_PA ISO-8859-1
- es_PE.UTF-8 UTF-8
- es_PE ISO-8859-1
- es_PR.UTF-8 UTF-8
- es_PR ISO-8859-1
- es_PY.UTF-8 UTF-8
- es_PY ISO-8859-1
- es_SV.UTF-8 UTF-8
- es_SV ISO-8859-1
- es_US.UTF-8 UTF-8
- es_US ISO-8859-1
- es_UY.UTF-8 UTF-8
- es_UY ISO-8859-1
- es_VE.UTF-8 UTF-8
- es_VE ISO-8859-1
Nota: AR = Argentina, MX = Mexico, ES, España, etc.
Habilitando el locale necesario
Primero es necesario que se habiliten los locales que se quieren soportar en el sistema. Para habilitar o deshabilirarlos, se utiliza el archivo /etc/locale.gen
. Este contiene todos los locale que se pueden habilitar, y sólo se tiene que descomentar las lineas que se desean.
Como se quiere una configuración UTF-8 en español para el sistema, habilitamos es_MX.UTF-8. Pero por compatibilidad con los programas que no soportan UTF-8 aún, es recomendable dar soporte a cualquier otro locale, también con el prefijo es_MX. Teniendo esto en mente, habilitamos este conjuno de locales:
es_MX.UTF-8 UTF-8 es_MX ISO-8859-1
Después de haber habilitado los locales necesarios, se tendra que ejecutar el comando locale-gen
como usuario root para actualizarlos:
# locale-gen Generating locales... es_MX.UTF-8... done es_MX.ISO-8859-1... done Generation complete.
Configurando la localización del sistema completo
Para definir cual locale debe ser usada por el sistema, se puede puede añadir fácilmente su localización en su archivo /etc/rc.conf . Como ha añadido el estandar ISO-8859 sólo para compatibilidad (hacia atrás), añadimos es_ES.UTF-8 aquí: LOCALE="es_MX.utf8"
Ahora, la configuración de la localización en todo el sistema se actualizará después de reiniciar el equipo.
Importante: Es necesario que escriba el nombre de la localidad exactamente como es mostrada en la salida de `locale -a`. E.g. LOCALE="es_MX.utf8" es válido, mientras que LOCALE="en_US.UTF-8" no lo es.
Estableciendo Locales por usuario
Como hemos comentado anteriormente, algunos usuarios quizá prefieran definir una locale diferente de la del sistema general. En este caso, puedes exportar LC_ALL en tu ~/.bashrc. Por ejemplo, puedes utilizar la locale es_ES.iso88591, aunque generalmente no encontrarás ventajas sobre utf8.
export LC_ALL=es_ES.iso88591
Tu locale será actualizada tan pronto como recargues tu ~/.bashrc. Generalmente, esto ocurre cuando inicias sesión (no es necesario un reinicio completo de la máquina) o cuando lo fuerzas con el siguiente comando:
$ source ~/.bashrc
Estableciendo el idioma
El idioma que utiliza el sistema para interactuar con el usuario, está determinado por las locales, mediante la locale LC_LANG. Para establecer tu idioma preferido, debes exportar la variable LC_LANG en tu archivo ~/.bashrc.
export LC_LANG=es_ES.utf8
Después de recargar tu configuración de ~/.bashrc, los programas que hagan uso de dicha variable, utilizarán el idioma establecido, siempre y cuando el programa en cuestión esté bien internacionalizado.
Estableciendo el día de inicio de semana
En un montón de paises, el primer día de la semana es el lunes. El sistema, por defecto, comienza la semana en domingo. Para cambiar este comportamiento, modifica, o incluye, las siguientes líneas debajo de la sección LC_TIME en /usr/share/i18n/locales/<tu_locale>
week 7;19971130;5 first_weekday 2 first_workday 2
Y después ejecuta:
# locale-gen
y reinicia las X. Nota: si utilizas un entorno de escritorio como KDE o Gnome, no es necesario cambiar esto con este método.
Algunas preguntas
¿Cómo puedo obtener una lista de los nombres de locales disponibles?
Puedes obtener los nombres correctos de todas las locales disponibles mediante este comando:
$ locale -a
¿Cómo veo que locale estoy usando?
Simplemente escribe en un terminal:
$ locale
Mi terminal no soporta caracteres UTF-8
Desafortunadamente algunos terminales no soportan caracteres UTF-8. Si uno quiere usarlos debera usar un terminar que soporte caracteres UTF-8.
Lista de terminales que soportan UTF-8:
- gnome-terminal
- gnustep-terminal
- konsole
- mlterm
- urxvt (rxvt-unicode)
- xfce-terminal
- xterm
Nota: Esta lista puede estar incompleta
xterm no soporta caracteres UTF-8 en mi sistema
xterm sólo soportará UTF-8 si has ejecutado como uxterm o xterm -u8