有许多网页都讨论这个问题。Netscape (2.0 版以后) 同时支持 BIG5 及 GB 编码。要在 Netscape 下显示中文有三个步骤:
netscape
,将 Document Encoding
设定为 Tranditional Chinese (Big5)
或 Simplified Chinese
.
Options/Document Encoding/...
中设定。View/Encoding/...
中设定。Options/General Preferences/Fonts
设定。Edit/Preferences.../Appearance/Fonts
里设定。Fixed(HKU) Size 16.0
。这是因为 /usr/X11R6/lib/X11/app-defaults/Netscape
的设定。
假设你有下列这些 BIG5 字型
# xlsfonts | grep gb2312
-hku-fixed-medium-r-normal--0-0-72-72-c-0-gb2312.hku-0
-hku-fixed-medium-r-normal--16-160-72-72-c-160-gb2312.hku-0
-kc-kai-medium-r-normal-fantizi-0-0-75-75-c-0-gb2312.eten.3.10-1
-kc-kai-medium-r-normal-fantizi-20-200-75-75-c-200-gb2312.eten.3.10-1
-kc-kai-medium-r-normal-fantizi-24-240-75-75-c-240-gb2312.eten.3.10-1
-kc-ming-medium-r-normal-fantizi-0-0-75-75-c-0-gb2312.eten.3.10-1
-kc-ming-medium-r-normal-fantizi-15-150-75-75-c-160-gb2312.eten.3.10-1
-kc-ming-medium-r-normal-fantizi-24-240-75-75-c-240-gb2312.eten.3.10-1
在 /usr/X11R6/lib/X11/app-defaults/Netscape
上加一行
*documentFonts.charset*gb2312.eten.3.10-1: x-x-gb2312
如此 Netscape 就能够使用这些字型了。
另一个解决的方法是为你的字型名称加上别名(alias): 在你的字型目录下的 fonts.alias
文档中加(如果没有这个文档就自己建)
-gb2312-taipeik-medium-r-normal--16-160-72-72-c-160-gb2312.hku-1 taipei16
-gb2312-taipeik-medium-r-normal--20-200-72-72-c-200-gb2312.hku-1 taipeik20
-gb2312-taipeik-medium-r-normal--24-240-72-72-c-240-gb2312.hku-1 taipeik24
其中 taipeik20
等你是要为它取别名的字型名称。修改过要后用
# xset fp rehash
重新载入字型名称才会生效。
你可能会发现在中英文夹杂的网页里中英文字型的比例并不正确(如英文字太小)。这是因为你的选用的英文字型和中文字型大小并不配合的缘故。 回到字型设定中选 Western(iso-8859-1), 然后更改英文字型的大小。调到你认为适当的大小比例即可。
因为 sendmail 8.8.x
预设会将所有 8-bit 的信件编码后再送出,这或多或少会对收信人造成一些影响(参见
下一小节 的解决方法)。
现在大部份的主机都已能直接传送 8-bit 的信件,所以你最好重新编译 sendmail
, 将编码功能关掉。
sendmail
:
ftp://ftp.sendmail.org/ucb/src/sendmail/
Makefile
:
# tar zxvf sendmail-8.8.8.tar.gz
# cd src/Makefiles
# chmod u+w Makefile.Linux
# vi Makefile.Linux
在 CFLAGS+=
后加上 -DMIME8TO7=0
.sendmail
:
# cd ..
# ./makesendmail all install
sendmail
行程:
# kill -9 `head -1 /var/run/sendmail.pid`
sendmail
:
# /usr/sbin/sendmail -bd -q1h
procmail
是一个电子邮件过滤器(mail filter). 它可将到的信件在存入你的信箱前先做处理,例如将信件分类等。
不过这里要教你的是如何利用 procmail
来将被编码的中文信件解码成纯文字,以及在不同编码的信件转换为你常用的编码。
在你的 home 目录下建立 .procmailrc
文档,内容如下:
# 在用 procmail 处理前先将信件储存下来,以免发生意外 # 你可以设定哪些信件不必备份,例如由 MAILER-DAEMON 来的退信 :0 c * !^From.*MAILER-DAEMON mail/procmail-backup # 将以 quoted-printable 或 base64 编码的信件解码 :0 * ^Content-Type: *text/plain { :0 fbw * ^Content-Transfer-Encoding: *quoted-printable | mimencode -u -q :0 Afhw | formail -I "Content-Transfer-Encoding: 8bit" \ -I "X-Mimed-Autoconverted: quoted-printable to 8bit by procmail" :0 fbw * ^Content-Transfer-Encoding: *base64 | mimencode -u -b :0 Afhw | formail -I "Content-Transfer-Encoding: 8bit" \ -I "X-Mimed-Autoconverted: base64 to 8bit by procmail" } # 这里判断信件是否为 GB 编码,若是则转为 BIG5 编码 # 如果你要由 BIG5 转为 GB 码,要将例子中所有的 gb2312 # 及 gb2312 互换,并将 hc -m b2g 改为 hc -m g2b :0 * ^Content-Type:.*text/plain;.*charset=gb2312 { :0 fw | hc -m b2g -t /usr/local/lib/chinese/hc.tab :0 Afhw | formail -I "Content-Type: text/plain; charset=gb2312" \ -I "X-Charset-Autoconverted: gb2312 to gb2312 by procmail" } # 将信件存回信箱 :0: ${ORGMAIL}
这个例子中,配合了 mimencode
, formail
将信件解码,并用
hc
将 GB 编码的信件转为 BIG5 编码。所以你还必须安装这些工具。
最后再将更改你的 .forward
档就可以了
"|IFS=' ' && exec /usr/bin/procmail -f- ~/.procmailrc ||exit 75 name"
注意: 其中最后的 name
要改为你自己的签入名称(login name).
如果你在自己的机器上可以输入中文,但 telnet 到别的机器后却无法输入中文,那么问题可能出在 telnet
程序上。
当你还在 telnet 连线中时可以按 Ctrl-]
跳出,在 telnet>
提示符号下输入 set binary 即可。
你也可以在连线时用 telnet -8
. (但是在连某些站台时会出问题...?)
另一个较简单的办法是直接改用可传输 8-bit 的 telnet
程序。从下面地点可取得执行档:
ftp://linux.cis.nctu.edu.tw/packages/chinese/misc/
less
本身就可直接显示中文了,只要设定下面的环境变数即可:
# export LESSCHARSET=latin1
Pine 3.95 版以后就可以支持阅读及输入中文信件了。进入 pine 之后选 SETUP/Config
在 feature list
中勾选(按 X
):
[X] enable-8bit-esmtp-negotiation
[X] enable-8bit-nntp-posting
然后在 character-set
上按 C
, 将其值改为 gb2312 或 gb2312. 按 E
脱离储存即可。
你也可以安装能显示中文信息的 cpine:
ftp://ftp.vit.edu.tw/unix/linux/chinese/cpine-3.91.bin.tgz
ftp://linux.cis.nctu.edu.tw/packages/network/samba/samba-1.9.17p5.tar.gz
ftp://linux.cis.nctu.edu.tw/packages/chinese/samba-gb2312-patch/samba-1.9.17p2-BIG5-patch-0.gz
# tar zxvf samba-1.9.17p5.tar.gz
# cd samba-1.9.17p5/source
# zcat samba-1.9.17p2-BIG5-patch-0.gz | patch -s
Lynx v2.7 已经可直接接观看中文的网页了。执行 lynx, 按 O)ption
/ C)haracter set
, 按上下键选 Taipei(Big5)
,再按 '>' 存档即可。
启动 minicom
时加上 -l
选项即可显示中文。
如果你在你的 .plan
中使用中文别人却看不到,那可能是因为你的 fingerd
无法送出 8-bit 的中文字。
到下面地点取回 cfingerd
:
ftp://nctuccca.edu.tw/OS/Linux/packages/network/finger/cfingerd-1.3.2.tar.gz
解开后,执行 ./Configure
再 make all
即可。
再来修改 /etc/inetd.conf
, 将原来 finger
的项目改为:
finger stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.cfingerd
最后让 inetd
重新读入设定档:
# kill -HUP `cat /var/run/inetd.pid`
TinTin++ 并非中文软件。它只是在你玩中文 mud 时非常的有用。你可在此取得:
ftp://ftp.princeton.edu/pub/tintin++
下面是一些中文 mud 站:
FengYun fengyun.com 5555
Xi You Ji 129.105.79.24 6905
Xia ke Xing 207.76.64.2 5555