linux:bash:locales

Locales

  • LANG : establece el valor del lenguaje (y de LC_*) usado en el sistema
  • LC_ALL : establece el valor de todas las categorias y tiene prefereencia
  • definidos por POSIX
    • LC_COLLATE : funciones de cadena
    • LC_CTYPE : establece el comportamiento de funciones que tengan que ver con la convención de mayúsculas/minúsculas
    • LC_MESSAGES : message catalogs ¿?
    • LC_MONETARY : formato de moneda
    • LC_NUMERIC : formato numérico
    • LC_TIME : formato de fechas y horas

listado de locales instalados en el sistema:

locale -a

listado de locales en sistemas debian/ubuntu:

less /usr/share/i18n/SUPPORTED
sudo locale-gen en_IN
sudo locale-gen en_IN.UTF-8
sudo update-locale
$ export LANG=en_US.utf8
$ export LC_ALL=en_US.utf8
$ sudo dpkg-reconfigure locales

con sudo dpkg-reconfigure locales se pueden añadir más (por ejemplo, cuando conectas via SSH a un servidor remoto que no las tiene instaladas)

para un usuario:

"~/.bash_profile"
LANG="en_IN.utf8"
export LANG
"~/.i18n"
LANG="en_US.UTF-8"
SUPPORTED="en_IN.utf8:en_IN:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
$ locale
LANG=en_US.utf8
LANGUAGE=
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=en_US.utf8

mostrar detalle de las categorias POSIX:

locale -k LC_NUMERIC
decimal_point=","
thousands_sep=""
grouping=-1;-1
numeric-decimal-point-wc=44
numeric-thousands-sep-wc=0
numeric-codeset="UTF-8"
  • linux/bash/locales.txt
  • Darrera modificació: 07/07/2020 07:42
  • per mate