|
发表于 2003-4-3 10:34:59
|
显示全部楼层
oh,运行了一下locale命令,出现一堆输出,
LANG=C
LC_CTYPE="zh_CN.GB2312"
LC_NUMERIC="zh_CN.GB2312"
LC_TIME="zh_CN.GB2312"
LC_COLLATE="zh_CN.GB2312"
LC_MONETARY="zh_CN.GB2312"
LC_MESSAGES="zh_CN.GB2312"
LC_ALL=zh_CN.GB2312
它们都是什么意思?
A. 这些环境变量就是和你使用的语言环境相关的信息。LANG是语言环境,不过
这个变量的等级最低,改变别的环境变量可以使之失效。LC_CTYPE是表明字
符分类应该使用哪个locale的资料,正是一个locale最基本的要素,通常和
该locale使用的编码有关,要使用中文locale的话,一定要设置这个变量。
LC_NUMERIC,LC_TIME,LC_COLLATE,LC_MONETARY分别表示数字,时间,排
序和货币单位使用哪个locale的资料,LC_MESSAGE表示应该使用哪个locale
的信息作为输出,对于中文用户,如果你想看中文界面的话,最好还是设成
中文的。LC_ALL是表示上面所有的资料,只要设置了LC_ALL为某个特定的变
量,其它的会自动跟着变过来,如果没有什么很充分的理由,通常是设置
LC_ALL就够了,不用每个变量一一去设置。glib-2.2中还添加了几个变量,
比如LC_PAPER,LC_ADDRESS等,大体从名字可以猜出意思。
除了这几个环境变量之外,还有一个LANGUAGE的环境变量,设置它之后,
LC_MESSAGES就失效了,LANGUAGE比LC_MESSAGES酷的是,你可以通过设置
LANGUAGE来使用多个locale,比如
export LANGUAGE=de:fr:en
这个在多语言的程序中可能有用,不过我从来没有使用过这个玩意。 |
|