⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chinese-howto-5.html

📁 Linux初学者最好的老师就是howto了。相当于函数man。
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.7">
 <TITLE>Linux Chinese HOWTO 中文版: 中文 X Window</TITLE>
 <LINK HREF="Chinese-HOWTO-6.html" REL=next>
 <LINK HREF="Chinese-HOWTO-4.html" REL=previous>
 <LINK HREF="Chinese-HOWTO.html#toc5" REL=contents>
</HEAD>
<BODY>
<A HREF="Chinese-HOWTO-6.html">Next</A>
<A HREF="Chinese-HOWTO-4.html">Previous</A>
<A HREF="Chinese-HOWTO.html#toc5">Contents</A>
<HR>
<H2><A NAME="s5">5. 中文 X Window</A></H2>

<P>X Window 系统是 UNIX 下强而有力的图形环境。XFree86 由 MIT X Window 系统 X11R6 改版而来,它是免费的。
<H2><A NAME="cxwin"></A> <A NAME="ss5.1">5.1 CXWin</A>
</H2>

<P>中文 X Window (以下简称 CXWin)是 XFree86 的一个修补(patch),使得它可以在 X Window 下显示中文字型。
作者为交大
<A HREF="mailto:srlee@csie.nctu.edu.tw">李欣□</A>。
目前的 CXWin 仅支援 BIG5 编码。CXWin 能让你拥有中文的下拉选单,中文视窗标题,以及在各种不同的视窗管理员及应用软体中显示中文。
<P>
<H3>如何取得</H3>

<P>你可以在此取得 CXWin 3.3:
<BLOCKQUOTE>
<A HREF="ftp://linux.cis.nctu.edu.tw/packages/X/Xserver/CXwin/3.3/">ftp://linux.cis.nctu.edu.tw/packages/X/Xserver/CXwin/3.3/</A></BLOCKQUOTE>
<P>如果你使用的是 XFree86 3.2, 你可以在这里取得 3.2 版的 Linux ELF 格式:
<BLOCKQUOTE>
<A HREF="ftp://linux.cis.nctu.edu.tw/packages/chinese/CXwin/binaries/">ftp://linux.cis.nctu.edu.tw/packages/chinese/CXwin/binaries/</A></BLOCKQUOTE>
<P>你仅需要取得你所需要的 X server 即可。例如你用的是 <CODE>XF86_SVGA</CODE>, 就取回 <CODE>XF86_SVGA.gz</CODE> 就行了。
<CODE>XF86_SVGA.gz</CODE> 应该可以在大部份的显示卡上工作。
<P>如果你的系统是 RPM 相容的,你也可以取得 RPM 包装的最新版 CXWin 3.3.1: 
<BLOCKQUOTE>
<A HREF="ftp://linux.cis.nctu.edu.tw/packages/X/Xserver/CXwin/3.3.1/">ftp://linux.cis.nctu.edu.tw/packages/X/Xserver/CXwin/3.3.1/</A></BLOCKQUOTE>
<P>
<H3>修补档(Patches)</H3>

<P>如果你有 XFree86 的原始程式码,你可以在同样的地点取得修补档并自行编译成执行档。
<P>
<H3>如何安装</H3>

<P>如果你安装的是 CXWin 3.3, 首先要确定你有这些 shared libraries(可以用 <CODE>ldconfig -p</CODE> 来观察):
<BLOCKQUOTE><CODE>
<PRE>
libm.so.5 => /lib/libm.so.5.0.6
libdl.so.1 => /lib/libdl.so.1.7.14
libc.so.5 => /lib/libc.so.5.3.12
</PRE>
</CODE></BLOCKQUOTE>
<P>如果你用的是 CXWin 3.2, 你需要的是 <CODE>libc-5.2.18</CODE> 或以後的版本。
<P>首先,解开以 gzip 压缩的档案:
<BLOCKQUOTE><CODE>
<PRE>
# gzip -d XF86_SVGA.gz
</PRE>
</CODE></BLOCKQUOTE>

然後以 root 的身份,先将原来的 X server
备份下来:
<BLOCKQUOTE><CODE>
<PRE>
# cd /usr/X11R6/bin
# mv XF86_SVGA XF86_SVGA_BACKUP
</PRE>
</CODE></BLOCKQUOTE>

把刚解开的 CXWin 放在适当的地方,并建立适当的符号连结(symbolic link):
<BLOCKQUOTE><CODE>
<PRE>
# mv /tmp/XF86_SVGA /usr/X11R6/bin
# chown root.bin XF86_SVGA
# chmod 4755 XF86_SVGA
# ln -sf XF86_SVGA X
</PRE>
</CODE></BLOCKQUOTE>
<P>如果你要安装的是 RPM 包装就更简单了:
<BLOCKQUOTE><CODE>
<PRE>
# rpm -Uvv XFree86-SVGA-3.3.1-1c.i386.rpm
</PRE>
</CODE></BLOCKQUOTE>
<P>CXwin 还需要下面<EM>四种 BIG5 字型</EM>才能正常使用:
<CODE>taipei15</CODE>, <CODE>taipei16</CODE>, <CODE>taipeik20</CODE> 与 <CODE>taipeik24</CODE>.
请按照下一节方法来安装这些中文字型。
<P>
<H2><A NAME="xfont"></A> <A NAME="ss5.2">5.2 安装中文字型</A>
</H2>

<H3>何处取得字型</H3>

<P>很可能你的系统已经安装了某些中文字型。你可以用下法找出已安装的 GB 字型:
<BLOCKQUOTE><CODE>
<PRE>
# xlsfonts | grep gb
-cclib-song-medium-r-normal--0-0-72-72-c-0-gb2312.1980-1
-cclib-song-medium-r-normal--16-160-72-72-c-160-gb2312.1980-1
-isas-fangsong ti-medium-r-normal--0-0-72-72-c-0-gb2312.1980-0
-isas-fangsong ti-medium-r-normal--16-160-72-72-c-160-gb2312.1980-0
-isas-song ti-medium-r-normal--0-0-72-72-c-0-gb2312.1980-0
-isas-song ti-medium-r-normal--16-160-72-72-c-160-gb2312.1980-0
-isas-song ti-medium-r-normal--24-240-72-72-c-240-gb2312.1980-0
hanzigb13fs
hanzigb13st
hanzigb16fs
hanzigb16st
hanzigb24st
</PRE>
</CODE></BLOCKQUOTE>

最後五个是前五个的别名。要得知已安装的 BIG5 字型用:
<BLOCKQUOTE><CODE>
<PRE>
# xlsfonts | grep big5
-kc-kai-medium-r-normal-fantizi-0-0-75-75-c-0-big5.eten.3.10-1
-kc-kai-medium-r-normal-fantizi-20-200-75-75-c-200-big5.eten.3.10-1
-kc-kai-medium-r-normal-fantizi-24-240-75-75-c-240-big5.eten.3.10-1
-kc-ming-medium-r-normal-fantizi-0-0-75-75-c-0-big5.eten.3.10-1
-kc-ming-medium-r-normal-fantizi-15-150-75-75-c-160-big5.eten.3.10-1
-kc-ming-medium-r-normal-fantizi-24-240-75-75-c-240-big5.eten.3.10-1
-uw-ming-medium-r-normal-fantizi-0-0-75-75-c-0-big5.eten.3.10-1
-uw-ming-medium-r-normal-fantizi-16-160-75-75-c-160-big5.eten.3.10-1
-uw-ming-medium-r-normal-fantizi-20-200-75-75-c-200-big5.eten.3.10-1
-uw-songti-medium-r-normal-fantizi-0-0-75-75-c-0-big5.eten.3.10-1
-uw-songti-medium-r-normal-fantizi-20-200-75-75-c-200-big5.eten.3.10-1
-uw-songti-medium-r-normal-fantizi-24-240-75-75-c-240-big5.eten.3.10-1
</PRE>
</CODE></BLOCKQUOTE>

如果你还没有安装任何字型,或是想装更多的字型,都可以在
<CODE>
<A HREF="ftp://ftp.ifcss.org/pub/software/fonts/">ftp://ftp.ifcss.org/pub/software/fonts/</A></CODE>
取得。其中 <CODE>gb/bdf/</CODE> 是 GB 字型,<CODE>big5/bdf</CODE>
是 BIG5 字型。
<P>
<H3>安装 X 字型</H3>

<P>假设你取得一 BIG5 字型 <CODE>eb5-24k2.bdf.gz</CODE>
与 GB 字型 <CODE>gb24st.bdf.gz</CODE>。首先将其转换为 <CODE>.pcf</CODE> 格式
<BLOCKQUOTE><CODE>
<PRE>
# gzip -cd eb5-24k2.bdf.gz | bdftopcf -t > eb5-24k2.pcf
# gzip -cd gb24st.bdf.gz | bdftopcf -t > gb24st.pcf
# compress *.pcf
</PRE>
</CODE></BLOCKQUOTE>

然後安装在 <CODE>/usr/X11R6/lib/X11/fonts/misc</CODE>
<BLOCKQUOTE><CODE>
<PRE>
# mv *.pcf.Z /usr/X11R6/lib/X11/fonts/misc/
# cd /usr/X11R6/lib/X11/fonts/misc
# mkfontdir .
</PRE>
</CODE></BLOCKQUOTE>

请观察 <CODE>fonts.dir</CODE>,现在应该包括下面两行
<BLOCKQUOTE><CODE>
<PRE>
eb5-24k2.pcf.Z -kc-kai-medium-r-normal-fantizi-24-240-75-75-c-240-big5.eten.3.10-1
gb24st.pcf.Z -isas-song ti-medium-r-normal--24-240-72-72-c-240-gb2312.1980-0
</PRE>
</CODE></BLOCKQUOTE>

你可以为这些字型名称建立别名(aliases)。这样当你使用中文软体时可以节省打字时间。
在 <CODE>fonts.alias</CODE> 加下面两行
<BLOCKQUOTE><CODE>
<PRE>
gb24st    "-isas-song ti-medium-r-normal--24-240-72-72-c-240-gb2312.1980-0"
taipeik24 "-kc-kai-medium-r-normal-fantizi-24-240-75-75-c-240-big5.eten.3.10-1"
</PRE>
</CODE></BLOCKQUOTE>

再来告诉 X Server 重新读入字型
<BLOCKQUOTE><CODE>
<PRE>
# xset fp rehash
</PRE>
</CODE></BLOCKQUOTE>

如果一切顺利,你就可以使用新字型了:
<BLOCKQUOTE><CODE>
<PRE>
# cxterm -GB -fn 12x24 -fh gb24st &amp;
</PRE>
</CODE></BLOCKQUOTE>
<P>你也可以将字型放到另外一个目录下,如 <CODE>/usr/X11R6/lib/X11/fonts/chinese</CODE>.
这样的话你必须加这行到 <CODE>/etc/XF86Config</CODE> 的 Section "Files" 中
<BLOCKQUOTE><CODE>
<PRE>
    FontPath    "/usr/X11R6/lib/X11/fonts/chinese/"
</PRE>
</CODE></BLOCKQUOTE>
<P>这样你下次启动 X Window 时就可使用这些字型了。
<P>
<H3>将其它字型转换为 X 字型</H3>

<P>由 lwj 所写的一个 TTF2BDF 程式能让你将 Windows 的 TTF 字型转换为 BDF 字型。可从下面地点取得:
<BLOCKQUOTE>
<A HREF="ftp://linux.cis.nctu.edu.tw/packages/chinese/TTF2BDF.EXE">ftp://linux.cis.nctu.edu.tw/packages/chinese/TTF2BDF.EXE</A></BLOCKQUOTE>

这是一个 Win32 程式。因此你必须在 Windows 95/NT 上执行。
<P>再来将 BDF 转换为 PCF 字型就可以在 X Window 下使用了。(X Window 也可直接用 BDF 字型,但 BDF 字型较大,还是转换为 PCF 再用较佳。)
<BLOCKQUOTE><CODE>
<PRE>
# bdftopcf -t &lt; ming.bdf > ming.pcf
</PRE>
</CODE></BLOCKQUOTE>
<P>你也可将 HBF 字型转换为 BDF 与 PCF 字型。在此可取得转换的工具程式:
<BLOCKQUOTE>
<A HREF="ftp://ftp.ifcss.org/pub/software/fonts/utils/hbf.tar.gz">ftp://ftp.ifcss.org/pub/software/fonts/utils/hbf.tar.gz</A></BLOCKQUOTE>
<P>
<BLOCKQUOTE><CODE>
<PRE>
# hbftobdf ccfs24.hbf > ccfs24.bdf
# bdftopcf -t &lt; ccfs24.bdf > ccfs24.pcf
</PRE>
</CODE></BLOCKQUOTE>
<P>其它的字型转换工具还有:
<BLOCKQUOTE>
<A HREF="ftp://crl.nmsu.edu/CLR/multiling/General/ttf2bdf-1.8-ELF.tar.gz">ftp://crl.nmsu.edu/CLR/multiling/General/ttf2bdf-1.8-ELF.tar.gz</A><BR>
<A HREF="ftp://crl.nmsu.edu/CLR/multiling/General/xmbdfed-3.0.tar.gz">ftp://crl.nmsu.edu/CLR/multiling/General/xmbdfed-3.0.tar.gz</A></BLOCKQUOTE>

亦为不错的工具。
<P>
<H2><A NAME="ss5.3">5.3 TaBE 及 B5LE</A>
</H2>

<P>TaBE 及 B5LE(Big5 Locale Environment) 是从 locale 著手为 X Window 加入中文能力的计画。
若能完成的话可望彻底解决 X Window 下的中文显示及输入问题。
<P>因为 TaBE 的作者 shawn 去当兵了,TaBE 的网页己经被移除了(太惨了吧?),目前计画也已停摆。
<P>B5LE 的作者是 Thinker &lt;
<A HREF="mailto:Thinker.bbs@bbs.yzu.edu.tw">Thinker.bbs@bbs.yzu.edu.tw</A>&gt;.
然而其主要的发展平台是 FreeBSD. 若有人成功在 Linux 上安装 B5LE 请让我知道。
相关的网页资料请见
<BLOCKQUOTE>
<A HREF="http://ftp-cnpa.yzit.edu.tw/~thinker/B5LE/">http://ftp-cnpa.yzit.edu.tw/~thinker/B5LE/</A></BLOCKQUOTE>
<P>
<P>
<HR>
<A HREF="Chinese-HOWTO-6.html">Next</A>
<A HREF="Chinese-HOWTO-4.html">Previous</A>
<A HREF="Chinese-HOWTO.html#toc5">Contents</A>
</BODY>
</HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -