En macos, LC_CTYPE está configurado en un valor incorrecto: ¿dónde cambiarlo para iTerm2?

0

En mi sistema, la variable de configuración regional LC_CTYPEestá establecida en un valor ilegal, lo que causa problemas en los sistemas Linux. Está configurado para:

$ locale
LANG=
LC_COLLATE="C"
LC_CTYPE="UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

LC_CTYPE=UTF-8no es un valor legal en Linux; p.ej.:

$ ssh front1
Linux front1 3.16.0-7-amd64 #1 SMP Debian 3.16.59-1 (2018-10-03) x86_64

The programs included with the Debian GNU/Linux system are free software;
…
alex@front1 ~> perl
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LC_CTYPE = "UTF-8",
    LANG = "en_US"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US").

Pero, ¿dónde LC_CTYPEse establece en primer lugar? No está en ningún archivo en /etco $HOME(hice a sudo fgrep -ri LC_CTYPE /etc $HOME).

Estoy usando iTerm2 como mi aplicación de terminal.

Alexander Skwar
fuente

Respuestas:

1

Después de un poco de ddg , me encontré con la publicación del blog Configuración de configuraciones regionales correctamente en la aplicación Mac OSX Terminal en el blog de Remi Bergsma . Resulta que también iTerm2 tiene esa configuración. Deshabilitarlo, hace que iTerm2 no arruine la configuración regional.

Preferencias de iTerm2 -> Configuración regional

Ahora está configurado así:

$ locale
LANG=
LC_COLLATE="C"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

Lo que tampoco es genial, ya que configuré mi sistema en alemán suizo. La aplicación de terminal normal es mejor en ese sentido:

$ locale
LANG="de_CH.UTF-8"
LC_COLLATE="de_CH.UTF-8"
LC_CTYPE="de_CH.UTF-8"
LC_MESSAGES="de_CH.UTF-8"
LC_MONETARY="de_CH.UTF-8"
LC_NUMERIC="de_CH.UTF-8"
LC_TIME="de_CH.UTF-8"
LC_ALL=
Alexander Skwar
fuente