Locales y mayúsculas y minúsculas
Un saludo a la lista. A ver si alguno es capaz de explicarse cómo sucede
esto en mi sistema.
Resulta que tengo estas locales:
$ locale
LANG=es_ES.UTF-8
LANGUAGE=
LC_CTYPE="es_ES.UTF-8"
LC_NUMERIC="es_ES.UTF-8"
LC_TIME="es_ES.UTF-8"
LC_COLLATE="es_ES.UTF-8"
LC_MONETARY="es_ES.UTF-8"
LC_MESSAGES="es_ES.UTF-8"
LC_PAPER="es_ES.UTF-8"
LC_NAME="es_ES.UTF-8"
LC_ADDRESS="es_ES.UTF-8"
LC_TELEPHONE="es_ES.UTF-8"
LC_MEASUREMENT="es_ES.UTF-8"
LC_IDENTIFICATION="es_ES.UTF-8"
LC_ALL=
Vamos, que mi sistema está configurado en castellano y utf-8. Todo me
marcha bien, pero he intentado lo siguiente y no he obtenido el
resultado esperado:
$ tr '[:lower:]' '[:upper:]' <<<"adiós"
ADIóS
$ awk '{print toupper($0)}' <<<"adiós"
ADIóS
O sea, el sistema no es capaz de saber que la mayúscula de la ó es la Ó.
De hecho, no es capaz de saber que "ó" es una letra:
$ tr -d '[:alpha:]' <<<"adiós"
ó
Sin embargo, tengo mi sistema (LC_CTYPE en concreto) en utf8, ¿no
debería ser capaz?
python sí funciona bien:
$ python3 -c 'print("adiós".upper())'
ADIÓS
--
e non l'arbitrio de femina lieve,
che sempre inchina a quel che men far deve.
--- Ludovico Ariosto ---
Reply to: