我通常通过以下方式配置我的 Ubuntu
sudo locale-gen --purge en_US.UTF-8
我已经安装了语言环境
# locale -a
C
C.UTF-8
en_US.utf8
POSIX
我失踪了,没事吧en_US
?
答案1
是的,你可能没问题。假设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 | [email protected]
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 | [email protected]
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 已成为文本的实际标准编码。(这就是您应该更喜欢它的原因。)
答案2
en_US.utf8 包含 ASCII 的所有内容,但我认为它仅涵盖了这些内容。您的系统将无法打印/查看除这些字符之外的字符,并且在遇到这些未知字符之一时将显示一个框(或一个带有问号的框)。