最简洁方法:
-
编辑/etc/locale.gen 文件,去掉zh_CN.UTF-8前面的#号
-
你可以设置整个系统的locale,编辑/etc/locale.conf,写下如下内容
LANG="zh_CN.UTF-8",但是不建议这样做,这样做在某些地方会产生乱马
-
建议设置局部的locale,编辑~/.bashrc,添加:
export LANGUAGE="zh_CN:UTF-8"
一、显示中文
要显示中文,需要生成中文语言包和安装中文字体
1、生成中文语言包
archlinux使用locale-gen脚本生产相应的语言包,locale-gen路径 /etc/sbin/locale-gen(如果不是,使用find命令查找),使用编译器打开该脚本。例如,使用nano编辑器
- nano /etc/sbin/locale-gen
找到下面代码
- LOCALEGEN=/etc/locale.gen
- LOCALES=/usr/share/i18n/locales
上面第一行是语言包的配置路径;第二行是一些本地化(区域)习惯的配置文件路径,例如货币符号,时间格式,日期格式等等。
按照上面代码,找到 /etc/locale.gen,打开编辑,选择相应的语言(取消行首的注释)。推荐使用UTF-8的那个,兼容性强。
- zh_CN.GB18030 GB18030
- zh_CN.UTF-8 UTF8
执行命令,生成语言包
- locale-gen
2、安装中文字体
推荐使用文泉驿。
- pacman -S wqy-zenhei
二、输入中文
要输入中文,需要在显示中文的基础上使用中文输入法。
1、中文输入法。
支持中文输入的常见输入法有scim,fcitx ,ibus。推荐使用ibus,不推荐scim,因为scim已经停止维护了。不过我使用的是scim拼音输入法。
①安装scim
- pacman -S scim scim-pinyin
②配置scim。
在启动scim中文输入法之前,下面的环境变量必须被设置为特定的值。
- export LANG="zh_CN.UTF-8"
- export XMODIFIERS=@im=SCIM
- export GTK_IM_MODULE="scim"
- export QT_IM_MODULE="scim"
上面代码第一行是设置系统语言为中文,这个环境变量对于scim中文输入法是必须的;第三行和第四行是为了是scim能兼容gtk、qt程序(当然,有些时候scim不能正常工作)
③启动scim
- scim -d
④启用桌面环境时自动设置scim
尽管不是必须的,但是如果在启用桌面环境时能自动设置②③也是好的。
使用startx启动桌面环境只需要在X的配置文件中设置一般情况下startx 会读取配置文件 ~/.xinitrc (也可以指定其他的配置文件,参见http://blog.csdn.net/holdsky/article/details/8498711 startx部分),在该文件中添加
- export LANG="zh_CN.UTF8"
- export XMODIFIERS=@im=SCIM
- export GTK_IM_MODULE="scim"
- export QT_IM_MODULE="scim"
- scim -d
需要说一下我的体验,我使用lxde桌面环境。我在启动lxde前,环境变量LANG不是中文,启动后改为中文(zh_CN.UTF-8),然后启动scim,结果scim不能工作。只有在启动lxde前将LANG设置为中文才能使scim正常工作。而且,环境变量的导入也不适用export,而是直接赋值,我的配置为:
- LANG="zh_CN.UTF-8"
- scim -d
- startlxde
三、关于locale详细介绍
详细参见https://wiki.archlinux.org/index.php/Locale
多说一句,locale的环境变量的优先级为 LC_ALL > LC_XXXX > LANG 。
LC_XXXX为LC_TIME ,LC_CTYPE之类的具体locale。执行命令 locale 可以获得的locale的所有环境变量的值