3
On my system, the locale variable LC_CTYPE
is set to an illegal value, which causes issues on Linux systems. It's set to:
$ 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-8
is not a legal value on Linux; eg.:
$ 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").
But where does LC_CTYPE
get set in the first place? It's not in any file in /etc
or $HOME
(I did a sudo fgrep -ri LC_CTYPE /etc $HOME
).
I'm using iTerm2 as my terminal application.