下一页 上一页 目录

4. 显示和输入中文

对于您一直以来在 DOS 或 Windows 95 中文系统环境下,并以此访问 Linux 主机的用户来说,您无疑不需要仔细阅读本节。然而,当您的本地主机是基于 Linux 的系统时,中文系统的配置就绝对是必要的了。

4.1 xcin+crxvt

如果您熟悉 X Window 系统,那么强烈建议您将 xcin 和 crxvt 的组合作为解决中文输入/输出问题的一种途径。

Xcin,是 X Window Chinese INput(X 窗口中文输入)的缩写,是一个在 X 模式下运行的中文输入系统。由于 xcin 采用客户端/服务器架构,您只需启动一个 xcin 窗口,即可在同一窗口下操作多个 crxvt 虚拟终端,这样可以节省大量资源。此外,它还提供了一些智能的输入方案,例如王兴输入法或自然输入法,它们可以自动选择匹配的词组。早期,为了转换字体和输入法表以适应 xcin,您需要在安装 xcin 之前先挂载 ETen 中文系统。后来,在 Tung-Han Hsieh < thhsieh@twclx.phys.ntu.edu.tw> 负责 xcin 的自愿维护后,这个糟糕的问题得到了解决!

最新的版本现在是 2.3.02。但这只是一个 beta 版本。为了更稳定,我建议您获取 xcin-2.1d,这是我个人推荐的版本。

获取软件

从以下 ftp 站点下载 xcin 的源代码

ftp://linux.cis.nctu.edu.tw/packages/chinese/xcin/xcin-2.1d.tar.gz
ftp://linux.cis.nctu.edu.tw/packages/chinese/xcin/xcin-2.3.02.tar.gz

xcin 的安装

您首先需要准备好 xcin-2.3.02.tar.gz 文件,以便安装 2.3.02 版本的 xcin,并在任何指定目录下解压它。

# tar xzvf xcin-2.3.02.tar.gz
....
# cd xcin-2.3.02
# ./configure (Follow the instructions on screen to modify the options you picked up in turn.)
# make
# make install

至此,您已经完成了 2.3.02 版本 xcin 的安装。

您还可以获取由 Cd Chen 为 RedHat Linux 系统维护的同类 xcin,名为 xcin-2.3.02.i386.rpm。

ftp://linux.ntcic.edu.tw/personal/cdchen/Chinese-RedHat-Packages/XCIN/RPMS/xcin-2.3.02-1.i386.rpm

通过以下方式安装

# rpm -Uvv xcin-2.3.02-3.i386.rpm

4.2 yact

yact 是一个在终端模式下运行的中文显示和输入系统。与 chdrv 最显著的不同之处在于,yact 通过 svgalib 库使用计算机的显卡。如果 svgalib 中没有包含您的显卡信息,您可能无法在 Linux 上使 yact 工作。

yact 最令人称赞的优点是其字体在显示器上以 24x24 扫描,比其他终端中文输入系统更美观。而且,在处理页面滚动时,它也比其他系统更流畅。yact 的最新版本现在是 yact-p4。

您可以在下面这里获取 yact,

ftp://linux.cis.nctu.edu.tw/packages/chinese/yact/yactp4.tar.gz
安装 yact 的方法也很简单。获取 yact 源代码后,解压它并检查 Makefile 文件是否正确,然后在 shell 提示符下直接输入 `make all install` 以完成位文件的安装。阅读 README 文件以获取更详细的信息。

接下来是字体设置步骤。yact 使用 HBF 字体,但在 yact 的软件包中找不到这些字体,这意味着您需要采取额外的措施来使其可用。最初的建议是挂载 ETen 中文系统以获取其字体。将 yact 源代码字体目录下的 HBF 字体描述文件 et24.hbf 复制到目录 /usr/local/lib/yact 并将其重命名为 hzfont.hbf。然后将 STDFONT.24、SPCFSUPP.24、SPCFONT.24 和 ASCFONT.24 字体文件复制到目录 /usr/local/lib/yact,并将 ASCFONT.24 重命名为 12x24

免费的 HBF 字体也是可用的。将这 256 个 ASCII 字体文件重命名为 12x24,并将 HBF 字体描述文件重命名为 hzfont.hbf。将描述文件和字体文件都放入 /usr/local/lib/yact 目录,一切就都好了。

4.3 bcs16

由于 yact 需要 svgalib 1024x768 模式才能工作,许多没有 ET4000 系列显卡的用户无法获得良好的支持,这让他们对这个优秀的中文系统感到失望。bcs16 是根据这些缺点从 yact 修改而来的。它只需要 640x480 模式,并且可以在大多数显卡上很好地工作。

从这个站点获取 bcs16

ftp://linux.cis.nctu.edu.tw/packages/chinese/bcs/bcs007a.tgz

安装

bcs16 的创始人是 cnoize.bbs@bbs.cis.nctu.edu.tw

4.4 chdrv

chdrv 是一个中文模拟器程序,用于通过控制台显示和输入中文。由于 chdrv 直接访问 tty 设备,因此必须由 root 用户激活。现在,chdrv 由 Yu-Chung Wang < wycc@iis.sinica.edu.tw> 维护,最新版本是 chdrv-1.0.10。

获取 chdrv

您可以从以下位置获取它

ftp://linux.cis.nctu.edu.tw/packages/chinese/chdrv/
分别获取源代码包 chdrv-1.0.10.tar.gz、二进制包 chdrvbin-1.0.10.tar.gz 和字体包 chdrvfont.tar.gz。

chdrv 的安装

解压压缩的二进制文件,

# tar xvzf chdrvbin-1.0.10.tar.gz
# mv chdrvfont.tar.gz chdrv-1.0.10/
# cd chdrv-1.0.10
阅读 INSTALL.1.0 文件中的安装说明,以修改 install 文件。如果您希望 shadow 密码工作,您需要更改 chinese.conf 中的设置。删除以下注释,
LOGINPROGRAM /bin/telnet
将此行冻结为注释,
LOGINPROGRAM /bin/login
现在,您可以执行安装脚本了。
# ./installbin

4.5 cxterm

cxterm 是一个在 X Window 系统下运行的中文虚拟终端,也是最古老的中文显示和输入虚拟终端,它提供了多种中文编码,包括 BIG5 码、GB 码、HZ 码等等。由于每个打开的 cxterm 都需要将中文数据加载到主内存中,因此系统资源消耗相当大。

获取 cxterm

最新的版本是 5.0.p3,名为 cxterm5.0.p3.tar.gz,其中包含 cxterm 代码和中文字体。您可以从下面这里获取它,

ftp://ftp.ifcss.org/pub/software/x-win/cxterm/
或者从 ftp.redhat.com 获取 rpm 包:cxterm-color-5.0p3-1.i386.rpmcxterm-color-big5-5.0p3-1.i386.rpmcxterm-color-gb-5.0p3-1.i386.rpm
ftp://ftp.redhat.com/pub/contrib/hurricane/i386/

cxterm 的安装

解压压缩包,

# tar -xvzf cxterm5.0.p3.tar.gz
上面的指令将创建一个新的目录 cxterm-5.0,然后按如下方式调用指令
# cd cxterm-5.0
# ./config.sh
如果您希望计算机上的所有用户都能正常使用 cxterm,则需要以 root 用户身份登录并执行 ``./config.sh'',然后您可以按照下面的说明完成安装步骤。
  0. Read COPYRIGHT Notice
  1. Compile, Install, and Configure "CXTERM 5.0" in One Step

  2. Compile cxterm (not to install)
  3. Install cxterm (after successful compilation in 2)
  4. Install additional Chinese font(s) for your X window
  5. Configure your account for using cxterm (after installation in 3)

  x. Exit
Please choose (0/1/2/3/4/5/x) :

如果您希望所有操作自动进行,请选择 1,然后输入要存储 cxterm 的目录名称。如果问我的建议,我会推荐 /usr/local/chinese 这个位置。压缩包中包含两种中文字体,选择 13 将使安装过程完全自动化。此外,您还可以选择 4 来安装一些额外的字体。完成此设置后,您需要将 cxtermCXterm 添加到搜索目录的路径中。

# export PATH=$PATH:/usr/local/chinese/bin

CXterm 只是一个 shell 脚本,用于加载 X 和 cxterm 的资源。要使用 GB 码,请调用以下命令,

# CXterm -gb
要使用 BIG5 码,请调用以下命令,
# CXterm -big5

CXterm 的颜色补丁

在网站 ftp://ftp.ifcss.org/pub/software/x-win/cxterm 上,也有一个 cxterm 的颜色补丁。使用此补丁可以使 cxterm 显示 ANSI 颜色。假设您将 cxterm 的原始文件放在 /tmp/cxterm-5.0 下,那么

# cp cxterm-5.0.p3-color.patch.gz /tmp
# gzip -d cxterm-5.0.p3-color.patch.gz
# patch < cxterm-5.0.p3-color.patch
# cd cxterm-5.0
# ./config.sh

4.6 XA (Xcin Anywhere)

XA 是 Xcin Anywhere 的缩写,是一个小工具,它允许您在任何常见的基于 X 的软件中使用 xcin 输入中文。如果使 XA 与 CXWin(或 XA+CV)协调工作,您可以为不支持中文的软件获得访问中文的环境。这样,xterm 将自然而然地变得像 cxterm 一样。很酷,不是吗?XA 目前非常不稳定,如果您想探索它,您必须承担所有风险。与大多数事情一样,在使用 XA 之前,您必须首先安装 xcin。您可以从下面这里获取 XA

ftp://linux.cis.nctu.edu.tw/packages/chinese/xcin/XA/

解压压缩包。运行 ./configure 以生成 mkconfig.h 文件,以便使用 ./mk 进行编译。如果编译成功,接下来输入 ./mk test xterm,看看是否可以调用 xcin 并在 xterm 下输入中文进行测试。如果没有问题,按照以下语法将 wrap.so 复制到 /usr/local/lib/

# LD_PRELOAD=/usr/local/lib/wrap.so netscape &
然后,只需按照使用 xcin 的通用方法即可。

XA 的创始人是 weijr.bbs@bbs.ntu.edu.tw

4.7 新增输入法

目前,输入法表有两种常见的格式,即 titcin,它们都是纯文本格式。(这意味着您可以直接使用文本编辑器编辑它们。)然而,大多数中文系统几乎都提供了实用程序,用于将纯文本格式的输入法表转换为特殊的二进制格式,以加快搜索速度。在设置某种输入法之前,您必须首先拥有其 titcin 或转换后的格式。

我将以博厦米输入法为例,说明如何在每种中文系统中添加它。这里提到的输入法表可以在 ftp://ftp.cis.nctu.edu.tw/UNIX/Chinese/Boshiamy/ 找到。

其他 tit 文件也可以在 ftp://ftp.ifcss.org/pub/software/x-win/cxterm/dict/ 找到。

xcin

使用 xcin 提供的实用程序 cin2tabcin 表转换为 tab 表。

# cin2tab boshiamy.cin
这将生成两个文件:boshiamy.tabboshiamy.tab.rev。将它们放入 xcin 的目录中,然后激活 xcin。
# xcin -in9 boshiamy.tab
要使用博厦米输入法,请按组合键 CTRL-ALT-9

yact 和 bcs16

yact 使用版本 2 的 cit 格式,与 cxterm 相同。您可以使用 yact 附带的工具 tit2citboshiamy.titcit 之间进行转换。

boshiamy.cit 移动到 /usr/local/lib/yact 并为其建立符号链接

# ln -s boshiamy.cit 9
像 xcin 一样,按 CTRL-ALT-9 调用博厦米输入法。

chdrv

首先,将 boshiamy.tbl 放入 /usr/local/lib/chinese。其次,修改 /etc/chinese.conf,在其中添加以下 INPUT 部分。


BEGIN INPUT
PHONETIC /usr/local/lib/chinese/phone.def
MULTI /usr/local/lib/chinese/boshiamy.tbl
END INPUT

最后,使用 chdrv 的实用程序 chconfig 使 /etc/chinese.conf 的内容生效。

cxterm

使用 cxterm 的实用程序 tit2citboshiamy.tit 转换为 citcitnf,然后修改 .Xdefaults 以设置用于激活博厦米输入法的组合键。有关安装和实现的详细信息,请参阅 cxterm 附带的技术文档。

4.8 输入法问题

在您完成中文系统的建立之后,您应该已经能够在 Linux 系统上通过显示器显示中文了。然而,当使用中文编辑器时,您会发现 Linux 系统只能显示中文,但无法接受中文输入。如果您想改善这些问题,您需要自行修改两个地方,以使 Linux 系统能够接受中文的输出和输入。首先,您需要将区域设置添加到 shell 配置文件中(关于区域设置,请参考 locale mini-HOWTO)。此外,还需要为您主目录下的 .inputrc 文件添加关于输入的设置。(如果 .inputrc 文件不存在,请自行创建。)以下是关于 shell 配置文件和 .inputrc 文件的配置,这些配置在公共领域中传播(仅供参考)。

Bash Shell:请将以下内容追加到 /etc/profile 中。


stty cs8 -istrip
stty pass8
export LANG=C
export LC_CTYPE=iso-8859-1

Tcsh Shell:请将以下内容追加到 /etc/csh.login/etc/csh.cshrc 中。


stty cs8 -istrip
stty pass8
setenv LANG C
setenv LC_CTYPE iso-8859-1

$HOME/.inputrc 文件用于设置,内容如下


set convert-meta off
set output-meta on

最后,准备一个包含中文文字的文本文件,并使用工具 grep 进行搜索。如果可以准确地找到内容,则表示您的 Linux 系统已经可以处理中文文字了。


下一页 上一页 目录