Chinaunix首页 | 论坛 | 博客
  • 博客访问: 57401
  • 博文数量: 11
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 102
  • 用 户 组: 普通用户
  • 注册时间: 2014-10-05 16:20
文章分类
文章存档

2017年(4)

2014年(7)

我的朋友

分类: LINUX

2014-12-14 13:51:07

 一般我们刚刚安装好的gentoo默认是不支持中文的,所以我们要在完成基本系统的安装后,增加系统对中文语系的支持.

  首先我们要进入/etc/locale.gen文件中,我们在安装过程也曾使用过这个文件夹中,这个文件夹的作用主要是把我们想要系统支持的语系和编码加入里面.中文所用的编码不外乎这么几种:gb2312 ,gbk ,gb18030和国际使用的utf-8编码.

  修改文件,在/etc/locale.gen中加入
    zh_CN.gb2312 GB2312
      zh_CN.gbk GBK
      zh_CN.gb18030 GB18030
      zh_CN.UTF-8 UTF-8
  注意第二个字段按一定要使用大写字母.原因我们稍后解释.

  在增加系统对中文的支持之后,现在如果我们要更改默认的语系为中文的话,就可以这么做,找到/etc/env.d/02locale文件,将LOCALE变量的值由en_US.UTF-8更改为zh_CN.UTF-8,即可,当然也可以换成我们上面增加的语系的任何一种.

  附:locale的命名规则,以zh_CN.UTF-8为例,zh表示语系为中文,CN则表示中国大陆地区,而UTF-8不多说就是我们所说的万国码编码了。

      当然除了利用文件来进行修改之外,我们还可以使用localedef命令,关于locale命令的具体用法请man,简单说一下如何使用localedef来增加语系。如果我们增加对zh_CN.UTF-8的支持,我们可以这样使用命令:


      #localedef -i zh_CN -f UTF-8 zh_CN.UTF-8

      简单说一下-i和-f这两个选项:
      -i  SOURCEFILE :指定包含语言环境类别源定义的文件的路径名。如果没有给出此标志,那么源定义从标准输入上读取。  
      -F  CHARMAP  :指定包含了字符符号映射以及将元素符号整理为实际字符编码的文件名称。一个语言环境与且仅与一个代码集关联。如果没有指定该标志,那么采用 ISO 8859-1 代码集。
   
     如果你有好奇心,你就会想在我们使用了上面的命令时,zh_CN和UTF-8是从哪儿获得的,好,现在我们来解答这个问题,我们知道系统的资源文件大部分都放置在/usr/share/这个文件中,我们的语系文件的位置就放在/usr/share/i18n中,在我的gentoo上的这个文件中,含有两个文件夹和一个文本文件,其中SUPPORTED文件说明的是系统默认支持的语系,locale文件夹放的是我们系统可以支持的语系,而charmap放的则是则是系统的编码表,这两个文件夹分别得对应上面的两个选项,看了这两个文件夹之后,你也就明白了为什么我们在上面说的在/etc/locale.gen加入的文字的第二个字段要大写的原因了。


阅读(3454) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~