Linux 版 (精华区)

发信人: don (驿路梨花), 信区: Linux
标  题: 在RH6.2中安装Chinput2.1,
发信站: 紫 丁 香 (Tue May  9 10:21:36 2000), 转信

发信人: null (钠尔), 信区: LINUX
标  题:  在RH6.2中安装Chinput2.1,
发信站: 碧海青天 (Fri May  5 12:18:25 2000), 转信


RedHat 6.2 中文显示与输入的设置
Wu YuLun (migr@operamail.com) 2000/4
本文将介绍在 RedHat 6.2 中,设置中文显示和输入的方法。感谢网友 Rigel、于明俭
老师等给予的帮助。特别感谢于老师开发了Chinput中文输入软件,使在Linux下可以方
便的使用中文。
RedHat 6.2 中分发的 XFree86-3.3.6 视窗软件目前只支持中文点阵字库的显示,无中
文 TrueType 字体的支持,要使用中文 TrueType 字体,可以选择 TurboLinux 中文版
,或等到 RedHat 公司发布新的包含 XFree86-4.0 的版本。
希望大家能帮我找出文中的错误,交流经验,提供更多的修改软件配置使其支持中文的
方法。
升级到 RedHat 6.2
=================
升级到新的版本一般是获得一张新版CD,重新安装选择升级。但我个人则是从网上下载
到部分更新的软件包,自行升级的。如果你也是使用这种方法,则有些事情需注意,若
不是,可以忽略。
必须更新的软件包。除了kernel,glibc和XFree86等相关软件是必须更新的外(否则就
不算是升级),还有些软件包包含了新的特性,将会影响到系统的运行,所以必须更新
。如:egcs-*, autoconf, automake, make 等。
在 XFree86 的更新中,xfs 需要特别注意:当你升级 XFree86-xfs 后,它并不用新的
配置文件替换旧的,而是将其保存为 .rpmnew 形式。应将 /etc/X11/fs/config.rpmsn
ew 改成 config,并重新使用 chkfontpath 命令重新配置字体搜索路径。
Locale 的设置
=============
由于在RedHat的 Glibc 2.1.3 中未包含zh_CN.GB2312,需从台湾的Linux中文扩展项目
的ftp网站获取中文GB2312场所的源码包。下载地址如下:
ftp://cle.linux.org.tw/pub/CLE/SRPMS/SRPMS/
locale-zh-0.9.src.rpm <== 目前的版本,包含GB和BIG5
下载后,以root身份,编译该源码包,由于本次的Glibc的发行版有所改动,旧的场所数
据可能用不了。步聚如下:
rpm -ivh locale-zh-0.9.src.rpm
该命令将源码包安装在 /usr/src/redhat/ 目录下,进入SPECS子目录,输入
rpm -ba zh-localedata.spec
建立RPM包。如果无问题的话,生成的RPM包在RPMS/i386目录下,可以把它保存起来,可
供以后使用。在SRPMS下,生成一个新的源码包,不需要可删除。安装locale:
rpm -Uvh locale-zh-0.9.i386.rpm
安装完,设置使用该场所,以bash为例:
export LC_ALL=zh_CN.GB2312
使用locale命令可以看到所有的LC_*变量都换过来了,检查该locale是否有效。有两种
方法,一是使用glibc的setlocale(LC_ALL, "")函数来检测,检测程序如下:
testlocale.c
#
int main(void)
{
char *current_locale;
current_locale=setlocale(LC_ALL, "");
if(current_locale)
printf("Current locale: %s\n", current_locale);
else
printf("Doesn't support.\n");
return 0;
}
编译:gcc testlocale.c -o testlocale
执先:若支持,则显示场所名
另一种更简单的方法是呼唤一个命令,看是否locale起作用了,如 rpm -qi kernel 如
果你看到显示结果的时间变成 ??y??m??d,那么locale已经生效了。
另外,关于/usr/share/locale/locale.alias文件中可以定义locale的别名,该别名可
以有助于记忆,如在该文件中加入一行为:
china zh_CN.GB2312
然后使用 export LC_ALL=china 则完成与上一种方法相同的功能,而且更直观。为了在
以后登录后就使用中文的locale,可以将上一行加入到你的HOME目录的.bashrc文件中。

接下是就是有关XLC_LOCALE的设置了。在 /usr/lib/X11/locale/locale.alias 文件加
入一行:
zh_CN.GB2312 zh_CN.eucCN
该命令指定当终端locale为 zh_CN.GB2312 时,X Windows 使用 zh_CN/XLC_LOCATE 为
场所定义。
GTK工具集的资源文件的修改。在 /etc/gtk/gtkrc.zh_CN 文件中将所有的字体定义改为

fontset = "-*-*-medium-r-normal--16-*-*-*-*-*-iso8859-1,\
-*-*-medium-r-normal--16-*-*-*-*-*-gb2312.1980-0"
由于GTK自定义的字体描叙为14点阵象素的汉字,我个人认为很难看的,所有都改成16点
阵的象素了。不过,在设置桌面主题的时候,主题的资源定义与之有冲突,会造成死机
。所以在未修改主题定义前,请使用GTK的自定义主题,免得遇到麻烦。
修改完之后,可以试一试中文的显示了。我使用的是GNOME桌面的,启动 X 后,最明显
的改变是字体为16点阵的了,变得大了一些,如果你以前就是用这么大的字体,那可能
感觉不到。选择工具菜单中的 Text File Viewer 程序,打开一个中文文件,无问题的
话,就可以看到熟悉的中文了。
Chinput 的安装
==============
自从于明俭老师在他的Chinput中文输入软件中加入了XIM支持,符合 Linux 国际化标准
,我们就可以在任何的 Linux 产品中输入中文了。该软件可以从他的主页下载。
http://www.turbolinux.com.cn/~justiny/download/chinput-2.1.tar.gz
下载后,解开该文件:tar -xvzf chinput-2.1.tar.gz
解开后,再对源码作一点点改动。进入 Chinput-2.1/src 里,使用你喜欢的编辑器,打
开 chinput.c 文件,查找 GBK 字样,将其改为 GB2312。再查找
system("/usr/bin/zwincontrol &");
语句,将其取消(在前面加上 // ),该语句是启动 ZWinPro 汉化平台的工具条的,c
hinput 的包里没有。
修改完后,回到 Chinput-2.1 目录下,执行 make 建立该软件。软件的安装请参阅其自
带的文档。
安装完成后,可以尝试中文输入了。进入 X Windows 环境。选择Run,输入 chinput,
中文输入服务器就加载了。调用一个支持 XIM 输入的程序,如 gedit,输入几个汉字试
试,很好用。
为了能在下次进入GNOME时自动启动输入服务器,可在GNOME的设置自启动的程序中加入
chinput。
注:chinput 输入服务器,仅对支持 XIM 的软件有效,如果该软件支持这种输入方式,
敲入 ctrl-space 就会出现输入条,否则无任何显示。
其它软件的中文支持设置
======================
有些软件需要设置相应的资源文件,才能使用中文。
GNOME 菜单的汉化。对于GNOME,有些菜单项可以直接修改,而有些则需要源程序才能修
改,所以只能汉化一部分。
汉化GNOME的系统菜单项:
在 /usr/share/gnome/apps/ 下,有一些以 .desktop 为后缀的文件,打开该文件,加
入一行
Name[zh]=你想要的中文名
则可对相应的菜单项增加中文名,很容易,一看就会。GNOME的个人菜单项存放在 HOME
 目录下的 .gnome/apps 目录里,形式相同。
另外,也可以把 TurboLinux 中的程序汉化包取过来用。是一些名字为“程序名.mo”的
文件。
网络资源
========
www.linuxforum.net 中国Linux论坛
www.turbolinux.com.cn/~justiny/ 于明俭的主页,关于Chinput的资料。


--

--
一条驿路,一种氛围。
一朵梨花,一种思考。
希望能在Linux这条驿路上与你同行!

※ 来源:.紫 丁 香 bbs.hit.edu.cn.[FROM: 202.118.239.63]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.562毫秒