我运行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中,我无法显示unicode符号,例如:C-x 8 RET 03bb
outputs \u03bb
,而不是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 频道的 ansivirus 的建议解决此问题所采取的步骤:
将其添加到~/.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_*