这是我的 Linux 盒子:
- CentOS Linux 6.0 版(最终版)
- x86_64
使用文本编辑器(vi 或 pico...)我看到重音字母有奇怪的字符(è、ì、à、ù)
这是我的区域设置:
LANG=en_US.UTF-8
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=
如果我切换到iso-8859-9
这样:
export LANG="en_US.ISO-8859-1"
我正确地看到了字符,但我必须在此服务器上使用 utf-8。
任何想法?
答案1
你的描述很模糊。您的终端不支持 Unicode,或者您正在编辑 latin1 (= iso-8859-1) 格式的文件。
在 bash 或 zsh shell 上,使用LC_CTYPE=en_US.UTF-8
, run echo $'\xc3a9'
。如果您看到é
,则您的终端支持 UTF-8。如果您看到é
,则您的终端显示 latin1。
如果您的终端不支持 UTF-8,您需要购买一个支持 UTF-8 的终端。或者,也可以配置您的系统以实现此目的。
如果您确定您的终端支持 UTF-8,但您é
在显示包含 的文件时看到类似的情况é
,则问题在于您的文件采用 latin1 编码。将它们重新编码为 UTF-8。