自由软件 BlueGroup
 站内搜索:  
您的位置:首页> 中文系统

 技术交流
分类目录:
  系 统 管 理
  硬 件 安 装
  网 络 通 讯
  系 统 安 全
  中 文 环 境
  数 据 库
  应 用 编 程

 入门指南
什么是 LINUX?
Linux各种发行版说明

Linux 基本知识
Linux 安装指南
Linux 命令简介

中文Linux 发行版本
LINUX中文平台
中文延伸套件 CLE(台湾)

 CLDP
中文HOWTO文档
中文mini-HOWTO文档
把Chinput-2.1移植到Redhat6.2上的经验

作 者: wuyulun

Subject 在RH6.2中安装Chinput2.1,全文,请网友指教。 Posted by wuyulun Posted on 4/19/2000 11:20 AM 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.rpmsnew 改成 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 汉化平台的工具条的, chinput 的包里没有。修改完后,回到 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”的文件。



Copyright © 2000 LSLNET.COM Website. All rights reserved. 蓝森林网站版权所有。 E-mail : contact@lslnet.com