当前位置:Linux教程 - RedHat - RedHat7-Chinput3-tiny-HOWTO

RedHat7-Chinput3-tiny-HOWTO

本文将描述如何在 RedHat 7.0 中安装 Chinput 3.0 中文输入服务器。

目录
下载所需要的软件
locale
中文 TrueType 字体
Chinput
致谢
1. 下载所需要的软件
为了顺利的完成安装,你将需要以下软件:

zh_CN (使用 RedHat 7.0 beta 需要下载该文件)
从 RedHat 的 CVS 中下载最新的版本。http://sources.redhat.com/glibc/ 或从我的主页 http://homepage.sanxia.net.cn/~migr 下载。
pth
GNU 的可移植线程库,从 http://www.gnu.org/software/pth 中下载。
unicon2-im
Chinput-3.0.tar.gz
Chinput-3.0-1.patch
ZWinControl.tar.gz (可选)
以上程序从于明俭的主页下载,http://go.163.com/~yumingjian。
2. Locale
当你使用 RedHat 7.0 beta 版时:

你需要下载中文 locale 定义文件 zh_CN。
编译新 locale,以 root 身份执行:localedef -f GB2312 -i zh_CN zh_CN.gb2312 若无错误提示,则编译成功,在 /usr/lib/locale 下会增加 zh_CN.gb2312 目录。
确定在 /usr/lib/gconv/gconv-modules 文件中包含了 alias GB2312-1980// EUC-CN// 一行,若没有,加入它。
使用 export LC_ALL=zh_CN.gb2312 启用中文 locale 支持。执行命令 date,看看有无变化?

为在下一次自动进入中文支持状态,在 HOME 目录下的 .bashrc 中加入:

export LANG=zh_CN.gb2312
export LC_ALL=zh_CN.gb2312

或根据你的需要来设置。

3. 中文 TrueType 字体
为了在 RedHat 7.0 中使用中文 TrueType 字体,应禁用 xfs 字体服务器,xfs 在启动时会自动更新字体目录下的 fonts.dir 文件,这样会影响到我们所作的修改。切换至 root 身份,````su root'''',执行 setup 工具,关闭 xfs。

进入 /etc/X11 目录,打开 XF86Config-4 文件,将 FontPath 改为你所需要的字体路径。

Section ""Files""
# FontPath ""unix/:7100""
FontPath ""/usr/X11R6/lib/X11/fonts/misc:unscaled""
FontPath ""/usr/X11R6/lib/X11/fonts/75dpi:unscaled""
FontPath ""/usr/X11R6/lib/X11/fonts/100dpi:unscaled""
FontPath ""/usr/X11R6/lib/X11/fonts/misc""
FontPath ""/usr/X11R6/lib/X11/fonts/Type1""
FontPath ""/usr/X11R6/lib/X11/fonts/Speedo""
FontPath ""/usr/X11R6/lib/X11/fonts/75dpi""
FontPath ""/usr/X11R6/lib/X11/fonts/100dpi""
FontPath ""/usr/share/fonts/default/TrueType""
FontPath ""/usr/share/fonts/default/Type1""
EndSection

加载 X-TrueType 字体解释器。

Section ""Module""
...
Load ""xtt""
EndSection

将你的 Windows 的中文 TrueType 字体复制到 /usr/share/fonts/default/TrueType 目录下,
cp /你的windows映射/windows/fonts/simsun.ttf /usr/share/fonts/default/TrueType

执行 ttmkfdir > fonts.dir,生成 fonts.dir 文件,将 simsun 的字符集改为 gb2312.1980-0。生成 fonts.scale 文件,cat fonts.dir > fonts.scale。

例:fonts.dir

3
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-ascii-0
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-iso8859-1
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0

若你使用 freetype 字体解释器,需将 /usr/X11R6/lib/X11/fonts/encodings/encodings.dir 复制到 /usr/share/fonts/default/TrueType。

将 /etc/gtk/gtkrc.zh_CN 中的字体定义改变为 TrueType 字体定义。

style ""gtk-default-zh-cn"" {
""-misc-SimSun-medium-r-normal--12-0-0-0-p-0-*-*""
}

至此,中文 TrueType 字体安装完成!

4. Chinput
首先完成安装 pth (pth 安装参见其安装说明)。

将 unicon2-im 解到 /usr/lib 目录下。

解开 Chinput-3.0.tar.gz,进入 Chinput-3.0 目录,
patch -p1 < Chinput-3.0-1.patch,make,make install (详细过程参见其安装说明)。

修改 /usr/lib/ZWinPro/Chinput.ad 文件:

由于 XFree86 没有自带的 BIG5 码字体,若你不需要输入 BIG5 码字符,则对 Chinput.ad 做以下调整:

...
chinput.gblocale = zh_CN.gb2312
chinput.big5locale = zh_CN.gb2312
...
chinput.gbfont = -*-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0
chinput.big5font = -*-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0

注意:在 Chinput.ad 的字体定义中,不能出现空格,这是由于 Chinput 的限制。

将 export XMODIFIERS=@im=Chinput 加入你的 HOME 目录下的 .bashrc 文件中。并重新登录,使其生效。

由于 Chinput 需要 libstdc++-libc6.1-2.so.3,而 RedHat 的 compat-libstdc++ 兼容库中只包含 libstdc++-2-libc6.1-1-2.9.0.so,则需手动建立一个库链接:

# ln -s libstdc++-2-libc6.1-1-2.9.0.so libstdc++-libc6.1-2.so.3

安装 ZWinControl,Chinput 控制程序。

至此,Chinput 的安装也完成了!

将 Chinput 加入到你的 GNOME 桌面的自启动程序中吧。

5. 致谢
感谢于明俭及其它的程序员们为 Linux 中文化所作出的贡献。特别感谢 rigel 为 glibc 2.2 重写了中文 locale 文件,并给予我帮助。