Я бегу Ubuntu 12.04
, я не могу установить язык en_US.utf8
. Я установил LANG
, настроив, /etc/default/locale
как описано здесь .
$cat /etc/default/locale
LANG=en_US.utf8
$locale
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=POSIX
Но это не работает, как вы можете видеть выше. Как мне установить эту LANG
переменную в en_US.utf8
?
Причина, по которой я спрашиваю, заключается в том, что при запуске у echo -e "\x03\bb"
меня unicode greek letter lambda symbol
отображается корректно, но моя проблема связана с emacs. В emacs я не могу отображать символы юникода, например: C-x 8 RET 03bb
output \u03bb
вместо a greek letter lambda symbol
. Я думал, что проблема с этими настройками локали, но я не могу установить их.
Редактировать : я думаю, что проблема исправлена.
$su $USER -c 'env; echo ==; locale' | egrep '==|LANG'
LANG=en_US
LANGUAGE=en_US
==
LANG=en_US
LANGUAGE=en_US
Решение для меня было, я использовал mintty для SSH Ubuntu 12.04
Server Edition
, поэтому мне пришлось настроить ~/.pam_environment
и
~/.etc/ssh_config
, и ~/bashrc
. Но моя настоящая проблема с emacs была не в этой конфигурации Ubuntu, поэтому я понятия не имею, для чего используется эта
LANG
переменная конфигурация или я установил ее на правильные значения.
Изменить 2: Вот шаги, которые я предпринял, чтобы решить эту проблему, следуя советам по антивирусной программе из канала #ubuntu irc:
Добавьте это к ~/.bash_profile
export LANGUAGE="en"
export LANG="C"
export LC_MESSAGES="C"
Добавьте это к ~/.pam_environment
(так что это должно быть проблематично)
LANG=en_US
LANGUAGE=en_US
Добавьте это к /etc/ssh/sshd_config
UsePAM yes
Закомментируйте это в /etc/ssh/ssh_config
# SendEnv LANG LC_*
LANG
присутствовать при запуске , su
но не тогда , когда вы войти через SSH тогда? Что ты изменил? Обратите внимание, что en_US
это не локаль Unicode.
su $USER -c 'env; echo ==; locale' | egrep '==|LANG'
? Используете ли вы среду графического интерфейса по умолчанию (Unity), если не то, что вы используете, и какой менеджер дисплея?