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

Re: Locales y mayúsculas y minúsculas



El día 30 de octubre de 2016, 18:40, José Miguel (sio2)
<sio2.sio2+lista.debian@gmail.com> escribió:
> 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 ---
>


Creo que tr no soporta utf8.
puedes usar gawk que si lo hace.
(En mi instalación awk es un link a gawk y si me funciona bien. Hay
que instalar gawk)

S2.


Reply to: