Redhat中文解决方案V0.2
原文: http://personal.xfol.com/~zovlinux/credhat.htm
--------------------------
写在前面:我用此方法在RedHat 6.0和manderak上均成功,而且在manderak中不必修
改任何*.h文件,全部用RPM包都可以安装。注意,请务必将屏幕保护程序关掉,否则会
出现按一个键有两个字符的情况。Good luck!
Redhat中文解决方案Ver0.2 by iamin
好象大家目前都比较关心Linux的中文处理,前段时间我一直也在忙着试用各种
有关的软件,解决自己的中文使用问题,小有收获,上次已经把一点经验写出来作为V0.11
版,这段时间我对原来的方案作了比较大的修改,自认为比以前要完善一些,这次写了个
Ver0.2供大家参考. 不过现在中文的Linux(Xterm Linux/Turbo Linux等等)呼之欲出,希
望他们能一劳永逸的解决这个问题,这样也许以后我就可以休息了因为V0.11和
V0.2采用的是两种不同的中文包装方案,所以在这篇文章里我同时列出了两个方案的对比
,请不要搞混淆了.
[Image]
v0.1 说明 : 1999/2/26
Redhat中文解决方案第一个版本,介绍我所使用的Redhat中文方案.
v0.11 修改说明 :1999/2/27
1 增加安装步骤中.inputrc文件的说明.
2 提供KDE1.1 RPM,CXwin,Xa-104等提到的软件的下载地址.
3 增加KDE安装简要说明.
v0.2 修改说明 :1999/3/15
1 改用chinput作为中文输入服务器和中文包装.不需要中文X服务器,这样可以不再
限定于Xfree3.3.2了,并且支持GB/BIG5/JIS/韩文码的同屏显示转换.
2 增加在线英汉字典的介绍,安装和使用说明.
3 修改V0.11中出现的关于KDE语言选择中的输入错误.
4 修改包装netscape的方法.
5 修改启动脚本中xcin的执行方法(v0.11有错误).
6 给出所有提到的软件详细下载地址列表和文件大小说明.提供所需中文简繁X字体
的下载链接.
7 修改版权和感谢一节部分内容.
[Image]
一.所用的硬件配置:
k6-233+华硕v3000显卡+64M SDRAM+15\"MAG+GVC33.6K+NE2000兼容网卡+SPV586A主
板+4.3G钻四+24X三星光驱
二.软件环境
V0.11解决方案下:
系统为Win98+Redhat Linux 5.1其中Redhat为D版的,双光碟,自带cxterm,Xcin,浏
览器升级为netscape 4.08 (自带的为4.05)桌面管理器为KDE1.1 Xwindow服务器为
XF86 3.3.2.采用CXWIN0.5作中文X服务器,XA1.04作中文包装.
V0.2解决方案下:
系统为Win98+Redhat Linux 5.1其中Redhat为D版的,双光碟,自带cxterm,Xcin,浏
览器升级为netscape 4.08(自带的为4.05)桌面管理器为KDE1.1或gnome1.0, Xwindow
服务器为XF86 3.3.2,采用Chinput1.4作为中文输入服务器和中文包装方案.不再采用
Cxwin0.5作为中文X服务器,所用字库为国人自制的一个中文字体包装,包括字体,在线
英汉字典为xcdict和edict,GB/BIG5内码转换工具为hc-30和HZ-2.0.
三.选用说明:
V0.11解决方案下:
1.采用Redhat能减少一些编译上的麻烦,自带软件包比slackware丰富.
2.cxterm必备,一方面可以在Xwin下上BBS比较方便,另一方面,其它不少中文输入服
务器需要的它的中文输入法.
3.Xcin原来是为crxvt设计的中文输入服务器.但如果xwin软件经xa包装后,一般都可
以输入中文而无须修改xwindow程序,而像chinput和zhxwin由于安装程序不够完善,一方
面需要编译,另一方面要使用它还得修改字库,字体,修改编译头文件,初学者一般都感到
麻烦,我写出来出也挺麻烦...:-)所以就选用xcin,况且它的联想功能也比chinput强.
4.桌面管理器的种类很多,我觉得KDE比较容易上手,界面也很漂亮适用,最特别的是它
提供了简体中文的界面插件,如果X服务器支持中文(解决窗口的桌单的中文问题)在一般的
x-term上也可直接显示中文.
5.目前能找到比较好的中文x服务器为cxwin,在网络工作室下载的cxwin0.5只支持
XF863.3.2的X服务器.如果是3.3.3还不知道是否可用,要想界面中文化,必备.CXwin0.5
只支持GB中文.
V0.2解决方案下的补充和修改:
1.使用chinput1.41作为中文输入服务器和中文包装.因为上次写的时候我拿到的
chinput不全,很多功能不能使用,所以选用了Xcin+Xa.后来我找到了chinput作者所完
成的几个软件包,试用之后发现chinput除了输入时的联想功能不够强和在部分KDE程序
(如knote)里不能输入完整的汉字外,在兼容性,实用性和配置功等其他方面的确相当不
错,所以这一次改向大家推荐采用Chinput.
2.Chinput的功能较强兼容性也比较好,因此不再需要Cxwin0.5作为X服务器,直接对
startx脚本进行中文包装就可以使桌面管理器支持中文.这样如果你没有采用XFree86
3.3.2作为X服务器(如Xfree3.3.3/AX4.1),也能使用我所写的方案了.而且大多数情况
下可以支持特定窗口和软件的GB/BIG解码转换和取消包装,比cxwin方便很多.
3.最近gnome也出了期待以久的1.0版,现在有了RPM包装的下载,大家也可以采用gnome
作为桌面管理器,,不比KDE差(不过它不能像KDE那样选择界面的语言为简体中文).其实这
个方案可以对几乎所有的X服务器和桌面管理器进行中文包装.
四.文中提到的各项软件的下载地址
(注意这些链结不一定永远有效,如果有所改动请自行寻找)
包
软件名称 下载地址 软件 装
大小 类
型
chinput1.41 ftp.openunix.org/pub/chinese/chinese_gb/system/Chinput-1.4.1-linux.tar.gz 2.84Mgz
(要对源码稍作修改,见下文)
chinput1.41 ftp.openunix.org/pub/chinese/chinese_gb/RPMS/chinput-1.4.linux-1.i386.rpm 1.63MRPM
(注意:这个包可能工作不正常)
xa1.04 ftp.openunix.org/pub/chinese/chinese_gb/RPMS/xa-1.04-1.i386.rpm 9.33kRPM
xcin mud.263.net.cn/pub/linux/chinese/XcinGB/xcin-2_3.rpm 805k RPM
cxterm5.0P ftp.freesoft.cei.gov.cn/pub/mirrors/ftp.redhat.com/ 503k RPM
redhat/contrib/libc6/i386/cxterm-color-gb-5.0.p3-2.i386.rpm
cdict ftp.openunix.org/pub/chinese/chinese_gb/RPMS/cdict-1.0-1.i386.rpm 7.4M RPM
edict chinput软件包自带 X X
cxwin0.5 studio.sinet.net.cn/pub/chinese/GB/CXWIN/v0.5/binaries/RedHat >1M gz
KDE1.1 ftp.kde.org/pub/kde/stable/1.1/distribution/rpm/RedHat-5.1/i386 16.8MRPM
GNOME1.0 ftp.snoopy.net/pub/mirrors/GNOME/gnome-1.0/redhat/i386/ 23M RPM
中文字体 ftp.openunix.org/pub/chinese/chinese_gb/RPMS/xfonts-chinese-1.i386.rpm
xfonts-chines (包括5种简体字库和2种繁体字库) 3.52MRPM
五.安装步骤
V0.11解决方案下:(采用Xa+Xcin)
0.下载你所需的各项软件.
1.正确安装完Redhat并安装中文部件cxterm和xcin .
2.为了能在x-term中显示中文,必须在用户目录($HOME)中建立一个.inputrc文件(
注意前面的\".\"字符,不能少),内容如下:
set convert-meta off
set output-meta on
3.下载cxwin0.5中合适的X服务器.目前所用英文X服务器类型可以在/usr/X11R6/bin
下用\" ls XF86_* \"看到,比如我所用的为XF86_SVGA.在网络工作室下载一个同样的x服务
器.如XF86_SVGA.gz,拷贝到/usr/X11R6/bin,备份原来的文件 gzip -d XF86_SVGA.gz,现
在你的XF86就可以支持简体中文了.
4.在北京Linux俱乐部(BJLUG)下载XA-1.04(这里的连接是gz包的)如果是gz包请按他
的说明编译,如果是RPM包就直接安装吧.
5.正确安装KDE1.1
下载编译好并按rpm 格式打包的KDE 文件.下载完后先安装文件
qt-1.40-1rh51.i386.rpm (用命令 rpm -Uhv,也可以用Redhat自带的Xwin下的RPM管理器)
,如果要自己编译其他KDE 应用程序的话还要安装文件 qt-devel-1.40-1rh51.i386.rpm
,然后按顺序安装 kdesupport, kdelibs 和 kdebase 三个包, 最后再安装其他 rpm 文件
...待全部 rpm 包安装完后输入usekde,它将自动修改$HOME/.Xcilent配置文件,再startx
就可以进入KDE界面了.
6.修改KDE的启动脚本,在Redhat下,只要在/opy/kde/bin/下的startkde脚本的倒数
第二行中插入一行\"exec xcin &\".保证每次执行中文输入服务器xcin.
7.启动kde进入kde控制中心,选择Desktop-Langurage可以看到很多语言的选择,在最
后可以看到zh_CN.GB2312 的选择.选择这一项(注意:必须把分辩调到1024X768,否则无法
列出这一选项,如果你不能上到1024的分辨率,那么自己在配置文件的语言一项修改.重新
启动kde,所有的界面中文化,绝大部分KDE自带的应用程序,包括kppp.kirc.kedit等等连
帮助也都翻译成了中文.:-)
8.解决输入问题
按照XA的说明,你可以修改每一应用程序的启动脚本,增加LD_PRELOAD的环境变量,如
果觉的麻烦,可以在xterm下输入 \" xa 执行程序名 \",来运行该程序,注意不要把
LD_PRELOAD加到KDE的启动脚本中否则可能无故死机 !
注意:对于Redhat的Netscape, 一般用netscape启动的是一个脚本,它将自己规定
LD_PRELOAD使得Xa设置的 LD_PRELOAD环境失效, 你可以用如下方法对这个脚本进行
修改:编辑在/usr/bin 下的netscape脚本,将
LD_PRELOAD=$locale_load 这一行改为: LD_PRELOAD=$locale_load:$LD_PRELOAD
也可以在KDE的任务栏中增加一个netscape的图标,修改其运行命令为
xa netscape-navigator那么就可以像 win98一样点击图标执行netscape了!
如果按照以上的步骤做下来,你甚至无需在netscape中选择中文简体解码就能置示
和输入中文,(当然Big5解码还得自己选择)
9.一般来说 ,这就差不多成功了。记住启动kirc,kedit,licq之类需要中文的程序时
用xa,那么就没什么不能输入中文的问题了.
V0.2解决方案下:(采用Chinput)
0.下载你所需的各项软件.
1.正确安装完Redhat并安装中文部件cxterm,安装我提供的中文字库.都是RPM包,安
装很方便!
2.为了能在x-term中显示中文,必须在用户目录($HOME)中建立一个.inputrc文件(
注意前面的\".\"字符,不能少),内容如下:
set convert-meta off
set output-meta on
3.安装chinput.1.4.1
我给出的chinput的RPM包虽然安装很方便,但它并不适应RedHat5.1.自己编译才能有
好的效果.
tar zxvf Chinput-1.4.1-linux.tar.gz 到某一目录.
如下修改部分库文件:
因为在Redhat 5.1下,libX11.so的位置与源文件的定义不同,所以要在chinput的目录
(Chinput-1.4.1-linux) 下,进入warp子目录,修改warp.h 中的
#define FILE_XLIB_SHARED \"/usr/X11/lib/libX11.so\" 这一行为
#define FILE_XLIB_SHARED \"/usr/X11R6/lib/libX11.so\"
同样,由于我们第1步装的中文繁体字库的全称和源文件的定义也不一样,所以要将同
一目录下的font.h 中繁体字库定义的六行:
#define HANZIB5FONT12 \"-eten-fixed-medium-r-normal--*-110-75-75-c-*-big5.eten-0\"
#define HANZIB5FONT16 \"-eten-fixed-medium-r-normal--16-150-75-75-c-*-big5.eten-0\"
#define HANZIB5FONT20 \"-eten-fixed-medium-r-normal--*-190-75-75-c-*-big5.eten-0\"
#define HANZIB5FONT24 \"-eten-fixed-medium-r-normal--24-230-75-75-c-*-big5.eten-0\"
#define HANZIB5FONT28 \"-eten-fixed-medium-r-normal--*-270-75-75-c-*-big5.eten-0\"
#define HANZIB5FONT32 \"-eten-fixed-medium-r-normal--*-310-75-75-c-*-big5.eten-0\"
改为
#define HANZIB5FONT12 \"-eten-fixed-medium-r-normal--*-110-75-75-c-*-big5.et-0\"
#define HANZIB5FONT16 \"-eten-fixed-medium-r-normal--16-150-75-75-c-*-big5.et-0\"
#define HANZIB5FONT20 \"-eten-fixed-medium-r-normal--*-190-75-75-c-*-big5.et-0\"
#define HANZIB5FONT24 \"-eten-fixed-medium-r-normal--24-230-75-75-c-*-big5.et-0\"
#define HANZIB5FONT28 \"-eten-fixed-medium-r-normal--*-270-75-75-c-*-big5.et-0\"
#define HANZIB5FONT32 \"-eten-fixed-medium-r-normal--*-310-75-75-c-*-big5.et-0\"
这样才能使GB和BIG码随时转换和同屏显示.
编译chinput \" make;make install \"
完成后请仔细阅读chinput带的文档(/doc/gb/下),这对你充分使用它的各种功能极有
帮助.
4.正确安装cdict1.0.1,这是一个RPM包,用来提供详细的英汉字典,很方便.当然也可以
不装.
5.正确安装KDE1.1
下载编译好并按rpm 格式打包的KDE 文件.下载完后先安装文件
qt-1.40-1rh51.i386.rpm (用命令 rpm -Uhv,也可以用Redhat自带的Xwin下的RPM管理器)
,如果要自己编译其他KDE 应用程序的话还要安装文件qt-devel-1.40-1rh51.i386.rpm ,
然后按顺序安装 kdesupport, kdelibs 和 kdebase 三个包, 最后再安装其他 rpm 文件.
待全部 rpm 包安装完后输入usekde,它将自动修改$HOME/.Xcilent配置文件,再startx
就可以进入KDE界面了.
6.启动kde进入kde控制中心,选择Desktop-Langurage可以看到很多语言的选择,在最
后可以看到zh_CN.GB2312的选择.选择这一项(注意:必须把分辩调到1024X768,否则无法
列出这一选项,如果你不能上到1024的分辨率,那么自己在配置文件的语言一项修改.
7.Xwin下KDE的中文化
用 \"run startx\"来重新启动kde(run 是 chinput自带的包装脚本\" run startx\"可以
将整个Xwin包装起来,起到以前cxwin0.5的作用),这时所有的界面中文化,绝大部分KDE自
带的应用程序,包括kppp.kirc.kedit等等连帮助也都翻译成了中文.:-).
8.解决中文输入问题
在一个xterm下输入\"chinput&\"(或自己做一个快捷方式)来启动汉字输入服务器,之后
你可以随便运行各种X程序,你会发现此时都能顺利的输入中文.(当然你不要把chinput的
输入条关了)
注意:对于Redhat的Netscape, 一般用netscape启动的是一个脚本,它将自己规定
LD_PRELOAD使得chinput设置的LD_PRELOAD环境失效, 你可以用如下方法对这个脚本
进行修改:编辑在/usr/bin 下的netscape脚本,将
\"LD_PRELOAD=$locale_load\" 这一行改为: \"LD_PRELOAD=$locale_load:$LD_PRELOAD\"
这样只要启动了chinput输入服务器,在netscape下就能轻松的输入中文了.
9.内码转换和在线英汉字典
其实这在chinput的文档中都讲的比较详细了,这里我再介绍一下.
在任何激活的窗口和应用程序的界面下,按住shift键后再按下鼠标的右键,就能弹出
一个中文包装配置菜单,可以选择是否对此窗口中文包装(一般都需要,但有时可以不用
包装,因为包装后的刷新速度会变慢,运行cdict也不需要包装,否则不能正常工作),也可
以选择GB/BIG5/日文/韩文/的内码转换,在不同窗口下能采用不同的编码,这样就能支持
这四钟编码的同屏显示.能选择在线英汉字典的配置(注意:要使用此功能,请先运行cdict
或edict驻留内存),至于网页翻译我还未能试出来.
五.版权和感谢
本文档可以自由传播,但请不要擅自修改.有任何意见或应用于商业用途请与
[email protected]联系.设置好后的界面可以参见我使用的中文KDE屏幕快照V0.11 ,V0.2
的快照还没来得及做:-)
写完这份简单的介绍,我想感谢文中提到各项软件的开发者们;我在武汉Linixer俱
乐部(WHLUG)的各位朋友,提供软件下载的北京Linux俱乐部(BJLUG)和网络工作室.我所
做的一切只不过是集中了这些辛勤工作的自由软件
开发者的成果而已.
发布人:netbull 来自:LinuxAid