有許多網頁都討論這個問題。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 big5
-hku-fixed-medium-r-normal--0-0-72-72-c-0-big5.hku-0
-hku-fixed-medium-r-normal--16-160-72-72-c-160-big5.hku-0
-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
在 /usr/X11R6/lib/X11/app-defaults/Netscape 上加一行
*documentFonts.charset*big5.eten.3.10-1: x-x-big5
如此 Netscape 就能夠使用這些字型了。
另一個解決的方法是為你的字型名稱加上別名(alias): 在你的字型目錄下的 fonts.alias 檔案中加(如果沒有這個檔案就自己建)
-big5-taipeik-medium-r-normal--16-160-72-72-c-160-big5.hku-1 taipei16
-big5-taipeik-medium-r-normal--20-200-72-72-c-200-big5.hku-1 taipeik20
-big5-taipeik-medium-r-normal--24-240-72-72-c-240-big5.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 碼,要將例子中所有的 big5
# 及 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=big5" \
-I "X-Charset-Autoconverted: gb2312 to big5 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, 將其值改為 big5 或 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-big5-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