我通常配置我的ubuntu通过
sudo locale-gen --purge en_US.UTF-8
我已经安装了语言环境
# locale -a C C.UTF-8 en_US.utf8 POSIX
可以,因为我错过了en_US吗?
解决方法
是的,你可能很好.假设en_US.utf8包含UTF-8美国/英语语言环境,它应该可以正常工作.这就是我自己使用的:
% echo $LANG en_US.UTF-8
如果你运行locale -v -a,它会更具描述性:
% locale -v -a locale: en_US archive: /usr/lib64/locale/locale-archive ------------------------------------------------------------------------------- title | English locale for the USA source | Free Software Foundation,Inc. address | http://www.gnu.org/software/libc/ email | bug-glibc-locales@gnu.org language | English territory | USA revision | 1.0 date | 2000-06-24 codeset | ISO-8859-1 locale: en_US.utf8 archive: /usr/lib64/locale/locale-archive ------------------------------------------------------------------------------- title | English locale for the USA source | Free Software Foundation,Inc. address | http://www.gnu.org/software/libc/ email | bug-glibc-locales@gnu.org language | English territory | USA revision | 1.0 date | 2000-06-24 codeset | UTF-8
en_US和en_US.utf8之间的唯一区别是前者使用ISO-8859-1作为字符集,而后者使用UTF-8.喜欢UTF-8.它们的唯一区别在于它们能够代表哪些角色. ISO-8859-1代表许多美国人常用的字符(英文字母,加上几个带重音的字母),而UTF-8编码所有Unicode,因此,几乎可以想到任何语言.今天的UTF-8是文本的事实标准编码. (这就是你应该喜欢它的原因.)