Я пытаюсь установить LC_CTYPE
, LC_COLLATE
на C
, а оставшиеся LC_*
установить на "en_US.UTF-8"
.Я работаю внутри Ubuntu 16.04 VM.Моя текущая среда имеет:
$ locale
LANG=en_US.UTF-8
LANGUAGE=en_US
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
и
$ locale -a
C
C.UTF-8
en_US.utf8
<some other locales>
POSIX
Когда я запускаю
$ sudo update-locale LC_CTYPE=C
LC_CTYPE не устанавливается
$ locale
LANG=en_US.UTF-8
LANGUAGE=en_US
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
I может увидеть, что по умолчанию записано в файл
$ cat /etc/default/locale
# File generated by update-locale
LC_CTYPE=C
, но когда я source ~/.bashrc
или перезагружаю ВМ, он все равно не показывает "C"
.Также нет переменной LC_CYTPE
(чего я не понимаю).
$ echo $LC_CTYPE
<empty string here>
Чего мне не хватает?