archlinux 的中文环境

通常,在装 archlinux 的时候,就已经在 /etc/rc.conf 里面指定了 LOCALE 为 zh_CN.utf8。但是这样有一个缺点,就是没有 X 的话,中文都会显示成方块。比如关机的时候那一行中文提示(已经退出 X 了),看着就很别扭。而且这样的情况用 zhcon、cce 也不好解决。

今天在从 linuxsir 上 jarryson 的回帖里得到的了启示,于是立即动手实验了一下。

先改 /etc/rc.conf,将 LOCALE 改回 en_US.utf8。注意检查一下 /etc/locale.gen,如果这里面的 en_US.utf8 之前是被注释掉的话要去掉注释,然后运行一下 locale-gen。这一步完成之后,系统的默认 LOCALE 就是英文的了。启动、关机的时候不会再出现中文了。

然后是指定自己的 LOCALE。像我这样用 GDM 来进行登录的用户可以把配置写在 ~/.xprofile 里面。我的是这样的

export LANG="zh_CN.utf8"

export XMODIFIERS="@im=SCIM"
export GTK_IM_MODULE="scim"
export QT_IM_MODULE="scim"

scim -d &


需要注意的是,虽然不指定第一行,在 GDM 中通过选择语言的办法也能使自己的 gnome 运行在 zh_CN.utf8 的环境里,但是似乎 GDM 指定 LOCALE 比启动 scim 要晚,所以 scim 还会使用系统默认 LOCALE,这可能会导致输入法的字体比较难看。

评论