手工打造中文系統 -- Slackware 中文化 ===================================================================== 前言 --------------------------------------------------------------------- 本篇將說明如何在 Slackware Linux 上「手動」建構自己的中文系統,以作為 喜歡 DIY 或是想瞭解中文系統運作原理的讀者們的一份參考文件。時值 CLE1.0 即行推出之際,部份資料或許有些過時,但其基本運作原理還是不變的! 因事務繁忙未及推出,但本篇應不失其參考價值,此點望請海涵並加指教。 現今 Linux 的中文化已非難事,各家廠商及組織也發展出多種可行的解決方案, 包括從系統國際化/區域化(i18n/L10n)的支援到所謂的內核漢化技術等等, 皆使得 Linux 上已能具備相當完善的中文環境了。另外安裝方面也有詳足的進步, 除簡單易行外多數發行套件還有中文的安裝介面!並在安裝完畢後立即有中文 系統可用,甚是便利。但這些都已在安裝過程中「自動」的中文化了,對想要 一探究竟的朋友們不免可惜,因此儘管坊間及網站上已有相關書籍雜誌或文件 作詳盡介紹的今天,筆者還是特地把它分享出來。此外因大部份的文件資料都以 RedHat Linux 為解說對象,所以筆者特地選在 Slackware 這套 Distribution 上作解說,目的就是除了讓讀者瞭解運作原理外也體會一下不同套件間的風格。 準備 --------------------------------------------------------------------- 底下就以國人用得最為普遍的 CLE 中文延伸安裝套件作為藍本加以說明,有興 趣的朋友不妨跟著實作看看。首先請讀者們找一個白老鼠磁區將 Slackware7.1 (英文版)安裝起來,再來請讀者找出 Slackware7.1+CLE0.9p1 或 RedHat6.2+CLE0.9p1 的光碟備用,此為讀者安裝方便起見。而必要時會列出 多個安裝套件的出處,至於選擇哪種安裝方式就看您方便囉。 除此之外也可從網路上直接抓取,底下是何處 download 的列表。 path-1 (RedHat6.2+CLE0.9p1 source rpm path) ftp://cle.linux.org.tw/pub/CLE/stable/v0.9p1/RedHat/SRPMS/CLE-SRPMS/ path-2 (RedHat6.2+CLE0.9p1 rpm path) ftp://cle.linux.org.tw/pub/CLE/stable/v0.9p1/RedHat/i386/CLE/RPMS/ path-3 (Slackware7.1+CLE0.9p1 source path) ftp://cle.linux.org.tw/pub/CLE/stable/v0.9p1/Slackware/source/ path-4 (Slackware7.1+CLE0.9p1 tgz path) ftp://cle.linux.org.tw/pub/CLE/stable/v0.9p1/Slackware/i386/ path-1 是 RedHat6.2+CLE0.9p1 的 source rpm path-2 是 RedHat6.2+CLE0.9p1 的 rpm path-3 是 Slackware7.1+CLE0.9p1 的 source package path-4 是 Slackware7.1+CLE0.9p1 的 tgz package 所以您如有 RedHat6.2+CLE0.9p1 的 CD 就等於 path-2,而如有 Salckware7.1+CLE 0.9p1 的 CD 也就等於 path-4,它們的內容都是一樣的。 在底下的篇幅中我都直寫出 path-? 來同時代表套件的下載路徑或是位於 CD 的哪個目錄內。另外以下所有的安裝步驟皆請在 console 模式下以 root 身份 執行之,這點請注意一下。 OK! 正式上路囉, Are you ready!! 基本概念 --------------------------------------------------------------------- 首先講一下中文的基本觀念: 簡而言之,要為系統中文化,就是要為系統加上一個能支援中文的「環境」, 也就是要使系統具備下列基本的「能力」: 1.中文顯示 2.中文輸入 3.中文列印 4.中文訊息 5.中文處理 所以在 Slackware(v7.1)上要建構中文化系統基本上就是要: 1.GNU C 函式庫對中文區域化環境 (locale-zh) 的支援 2.安裝中文字型 -- 包括 taipei 點陣字或中文 TreuType 向量字 3.裝上 X Font Server 使 X Window 可使用 ttf 4.裝上 XIM 中文輸入法 -- xcin 5.裝上中文列印相關程式 -- ghostscript 及 VFlib2 6.其它中文程式 以上就是建構一個基本的中文系統應有的需求,這樣就可作到中文的顯示、輸入、 列印及處理,底下就以此為主題分加說明。 (一)、中文顯示 ==================================================================== 1.) 安裝「中文區域化環境」 1-1.) Locale database 在整個中文化過程中,就以系統底層 C 函式庫的國際化及裡面區域化環境的 支援最為重要。目前 Slackware 7.1 中的 C library (glibc 2.1.3) 國際化 方面已支援雙位元組的編碼系統,對我們用的 BIG5 或 GB 碼已有一個基本的 支援,但在裡面卻缺少了 BIG5 及 GB 碼的「區域環境資料庫 locale database」 ,所以中文化的第一步就必須為系統加上中文的 locale 才行。建議大家抓取 CLE 的 source rpm 回來重新 compile,以使不同版本間的 glibc 其資料庫格 式為一致。 1-1-1.請在根目錄下先建立一個工作用的目錄,以方便管理存放抓取或解開的 檔案 ~# mkdir work 1-1-2.抓取 path-1 中的 locale-zh-0.9-3.src.rpm 1-1-3.下指令重新編譯 ~# rpm --rebuild locale-zh-0.9-3.src.rpm 1-1-4.約 1 分鐘內即可編譯完成,會在 /usr/src/rpm/RPMS/i386/ 目錄內產生 locale-zh-0.9-3.i386.rpm 這個檔 1-1-5.安裝 ~# rpm -ihv --nodeps locale-zh-0.9-3.i386.rpm 這樣您就可在底下這兩個目錄內找到定義中文區域化環境的資料, 像是 LC_COLLATE、LC_CTYPE、LC_MONETARY、LC_NUMERIC、LC_TIME 及增加 LC/MESSAGES/ 子目錄內的一些 .mo 訊息檔 /usr/share/locale/zh_TW.Big5/ /usr/share/locale/zh_CN.GB2312/ 1-2.) 設定語系 起碼有兩個方法可設定您系統上的語系,我都把它們給寫出來,但我還是 建議以 1-2-1 方式較為妥當,一來較符合 CLE 典型的處理方式,二來可適用 於後續套件(如 locale_config) 的安裝。 1-2-1.先建立這個目錄 /etc/sysconfig, 再抓取 path-4/slakware/y3/syspatch.tgz 這個檔, 放在工作目錄內並解開它 ~# mkdir /etc/sysconfig ~# cp syspatch.tgz(your path) /root/work ~# cd /root/work ~# tar zxvf syspatch.tgz 此時會產生 etc/、root/、usr/ 及 var/ 四個子目錄,進入 etc/ 內 分別將底下這三個檔依其路徑放置好, ~# cp /root/work/etc/sysconfig/i18n /etc/sysconfig ~# cp /root/work/etc/profile.d/lang.sh /etc/profile.d ~# cp /root/work/etc/profile.d/lang.csh /etc/profile.d 它們的作用分別是: /etc/sysconfig/i18n --> 語系設定檔 /etc/profile.d/lang.sh --> sh,bash Shell 下 i18n file 搜尋設定檔 /etc/profile.d/lang.csh --> csh,tcsh Shell 下 i18n file 搜尋設定檔 找到 /etc/profile 這個檔的 locale 環境變數設定並註銷掉(line 39), 就像這樣 # Set default POSIX locale: #export LC_ALL=POSIX 1-2-2.或是編輯 /etc/profile,找到下面這段,把 LC_ALL=POSIX 這行給 remark 掉,並在其下加入 LANG=zh_TW.Big5,就像這樣: # Set default POSIX locale: #export LC_ALL=POSIX LANG=zh_TW.Big5 1-2-3.請登出系統再重新 login,打 locale 指令看看, 這時系統語系是不是為中文 BIG5 碼的設定了(zh_TW.Big5),就像這樣: LANG=zh_TW.Big5 LC_CTYPE="zh_TW.Big5" LC_NUMERIC="zh_TW.Big5" LC_TIME="zh_TW.Big5" LC_COLLATE="zh_TW.Big5" LC_MONETARY="zh_TW.Big5" LC_MESSAGES="zh_TW.Big5" LC_ALL= Hello,成功了嗎?? 2.) Qt patch 為能在 KDE 內正常中文顯示及中文輸入(一次輸入及刪除一個中文字), 須安裝 qt1x library 的 package。請從 path-4/slakware/y3 中抓取 ttfp.tgz 到工作目錄內解開並安裝之(不過 /root/work/root 目錄先改名一下以免重疊) ~# cp ttfp.tgz(your path) /root/work ~# cd /root/work ~# mv root root1 ~# tar zxvf ttfp.tgz 此時產生 root/ 目錄, 請進入其 TTF_PRINT/ 子目錄內並安裝 qt1x library 的 rpm 套件 ~# cd /root/work/root/TTF_PRINT ~# rpm -ihv --nodeps qt1x-1.45-3CLE.i386.rpm ~# rpm -ihv --nodeps qt1x-GL-1.45-3CLE.i386.rpm ~# rpm -ihv --nodeps qt1x-devel-1.45-3CLE.i386.rpm 3.) 中文字型 再來我們要幫 X Window 裝上中文字型。XFree86 自從 3.3.4 版後就直接提供 中文區域化環境,尤其是現在的 XFree86 3.3.6 對中文的支援是更加的完全, 所以我們不用再費心地替 X Window 裝上中文區域化資料及修正 X lib 了, 只要再裝上中文字型即可。 3-1.) 中文點陣字型 (taipeifonts 台北點陣字型) 請從 path-4/slakware/x2 目錄中直接以 pkgtool 指令安裝 tpfonts.tgz 套件 即可,或是從 path-2 以 rpm 指令安裝 taipeifonts-1.2-14.noarch.rpm 這個 套件亦可。這套 taipeifonts 內建16、20、24點三套中文點陣字體已足夠在 X Window 內作為中文的一般顯示及輸入之用途了。指令如下 ~# rpm -ihv --nodeps taipeifonts-1.2-14.noarch.rpm 再來就可組態您的 X Window System 了,而為避免在 GNOME 下的亂碼問題也 請作個連結,指令如下 ~# xf86config ~# ln -s /usr/etc/gtk/gtkrc.zh_TW.Big5 /usr/etc/gtk/gtkrc.zh_TW.big5 另外為解決進入 GNOME 時的 delay 現象,您可在 /usr/X11R6/bin/startx 裡加上 '-deferglyphs 16' 這個參數,它可稍稍加速 X Window 載入中文 字型的速度(它用在 TTF 上較為顯著),但在 gmc 或是一些 widget 的放大 縮小紐處依然會被 hang 住,請注意一下!! 這個參數是加在 serverargs 之後 serverargs="-deferglyphs 16" (第 24 行) 最後為了讓使用 GB 簡體中文的朋友們也能正常的使用 KDE,請在 /var/X11R6/lib/locale/locale.dir 這個檔案內加入 XLC_LOCALE 的 zh_CN 名稱,就像這樣 zh/XLC_LOCALE zh_CN.eucCN (原有,第 172 行) zh/XLC_LOCALE zh_CN.GB2312 (加入行) zh/XLC_LOCALE zh_CN (加入行) 退出系統再 login,打 startx 指令進入 X Window 看看,是否為中文化的 界面了,恭喜您! 此時 X Window 畫面就像這樣 圖01 (繁體中文畫面) 圖02 (簡體中文畫面) 3-2.) 中文 TTF 向量字型 (ttf-arphic 文鼎向量字型) 為因應近來越來越多的應用軟體都要有 TTF 向量字型的支援,所以有必要替 X 加上 TrueType Font 的支援。TTF 字型因具有可自由縮放功能並可作粗、 斜體變化及字型美觀等特性,這些皆非點陣字型所能比擬的!所以使系統對 TrueType 字型具備支援的能力就變成必備的事了! 因目錄架構及字型管理設定方式的差異,這裡將不引用 CLE v0.9p1 的 XFree86*.rpm 套件組來作 TTF 的支援,所以您不用 patch X Server ,只要 裝上 X Font Server 的套件並再作一些設定即可讓您的 X 具備支援 TTF 的 能力,它們就是 「xfs-xtt」 四個套件組。這四個套件皆轉檔自 Debian/GNU Linux 的 deb package,它們在 Slackware 上一樣運用自如。 底下開始囉 :)) 3-2.1 進入/root/work/root/ TTF_PRINT/ 目錄中並安裝 xfs-xtt 這四個套件。 ~# cd /root/work/root/TTF_PRINT ~# rpm -ihv --nodeps freetype2-1.3.1-2.i386.rpm ~# rpm -ihv --nodeps libxfont-xtt-1.3.0.1-13.i386.rpm ~# rpm -ihv --nodeps zlib1g-1.1.3-6.i386.rpm ~# rpm -ihv --nodeps xfs-xtt-1.3.0.1-13.i386.rpm 3-2-2. 從 path-4/slakware/x2 以 pkgtool 指令安裝 ttfbkai.tgz、 ttfbming.tg、zttfgkai.tgz及 ttfgming.tgz 這四套文鼎 TTF 字型, 您也可從 path-2 以 rpm 指令安裝 ~# rpm -ihv --nodeps ttf-arphic_bkai-2.11-1.noarch.rpm ~# rpm -ihv --nodeps ttf-arphic_bming-2.11-1.noarch.rpm ~# rpm -ihv --nodeps ttf-arphic_gkai-2.11-1.noarch.rpm ~# rpm -ihv --nodeps ttf-arphic_gming-2.11-1.noarch.rpm 此時您將在 /usr/share/fonts/ttf 內看到這四套文鼎字型 (bsmi00lp.ttf,bkai00mp.ttf,gkai00mp.ttf 及 gbsn00lp.ttf) 3-2-3. 建立 /usr/X11R6/lib/X11/fonts/TrueType 目錄並作好以下的連結。 ~# mkdir -p /usr/X11R6/lib/X11/fonts/TrueType ~# cd /usr/X11R6/lib/X11/fonts/TrueType ~# ln -sf /usr/share/fonts/ttf/bsmi00lp.ttf bsmi00lp.ttf ~# ln -sf /usr/share/fonts/ttf/bkai00mp.ttf bkai00mp.ttf ~# ln -sf /usr/X11R6/lib/X11/fonts/TrueType/bsmi00lp.ttf default_ming-big5-0.ttf ~# ln -sf /usr/X11R6/lib/X11/fonts/TrueType/gbsn00lp.ttf default_ming-iso8859-1.ttf ~# ln -sf /usr/X11R6/lib/X11/fonts/TrueType/gbsn00lp.ttf default_ming-gb2312.1980-0.ttf ~# ln -sf /usr/share/fonts/ttf/gbsn00lp.ttf gbsn00lp.ttf ~# ln -sf /usr/share/fonts/ttf/gkai00mp.ttf gkai00mp.ttf 3-2-4. 從 /root/work/root/TTF_PRINT/ 目錄中拷背 scaled 字形定義檔 fonts.scale,字形名稱檔 fonts.dir 及字形對應表 fonts.alias 等 三個檔到 TrueType 這個字型目錄。 ~# cp -f /root/work/root/TTF_PRINT/fonts.* /usr/X11R6/lib/X11/fonts/TrueType 以上準備妥當後,我們開始進入各項基本的設定。 3-2-5. 編輯 /etc/XF86Config ,註銷掉字型路徑的 Fontpath 並加入 FontPath "unix/:8000" 這一行,就像這樣 # FontPath "/usr/X11R6/lib/X11/fonts/local/" (第 56 行) # FontPath "/usr/X11R6/lib/X11/fonts/misc/" # FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" # FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" # FontPath "/usr/X11R6/lib/X11/fonts/Type1/" # FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" # FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" # FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" FontPath "unix/:8000" 3-2-6. 編輯 /etc/X11/xfs/config 這個檔,找到這段 # paths to search for fonts (第 13 行) catalogue=/usr/lib/X11/fonts/misc/,/usr/lib/X11/fonts/cyrillic/, .....以下略 為編輯方便,請加以斷行並加入 75dpi 及 100dpi 兩個字型路徑, 並請調整 TrueType 路徑到 misc/ 後面,就像這樣 catalogue = /usr/lib/X11/fonts/75dpi/, /usr/lib/X11/fonts/100dpi/, /usr/lib/X11/fonts/misc/, /usr/lib/X11/fonts/TrueType/, /usr/lib/X11/fonts/cyrillic/, /usr/lib/X11/fonts/Speedo/, /usr/lib/X11/fonts/Type1/, /usr/lib/X11/fonts/100dpi/:unscaled, /usr/lib/X11/fonts/75dpi/:unscaled 這樣 X Window 內的字體大小就較為適當了。另外請記得,最後一行不要加 "," 逗號,但倒數第二行要加哦!! 接著在其底下隔一行的開頭加入 port = 8000 port = 8000 所以這段最後就像這樣 # paths to search for fonts catalogue = /usr/lib/X11/fonts/75dpi/, /usr/lib/X11/fonts/100dpi/, /usr/lib/X11/fonts/misc/, /usr/lib/X11/fonts/TrueType/, /usr/lib/X11/fonts/cyrillic/, /usr/lib/X11/fonts/Speedo/, /usr/lib/X11/fonts/Type1/, /usr/lib/X11/fonts/100dpi/:unscaled, /usr/lib/X11/fonts/75dpi/:unscaled port = 8000 然後再往下找到 deferglyphs = all 這一行,將它改成 deferglyphs = 16 就可存檔離開了! 3-2-7. 啟動 xfs-xtt 這個 X TTF Server 先執行 ldconfig 指令,再執行 xfs-xtt -config /usr/X11R6/lib/X11/fs/config -port 8000 ~# ldconfig -v -v -v ~# xfs-xtt -config /usr/X11R6/lib/X11/fs/config -port 8000 這樣 X Font Server 「xfs-xtt」應可正常啟動了 :)) 可打 ps -e 看有無 xfs-xtt 這個 process,如有就表示載入 OK ! 3-2-8. 進入 X Window 測試看看 進入 X ,開啟 Netscape ,看看能否在 Edit -> Preferences -> Appearance -> Fonts 中找到中文 TTF 字型選項(Ar Pl Kaitim Big5 及 Ar Pl Mingti2l Big5) 如有的話,就大功告成囉(如圖03)。您也可在 X Window 內打 xlsfonts | grep big5-0 看中文 TrueType 字型有無列出,如像這樣就表示 這些字型有安裝成功。 圖03 -aliasarphic-ar pl kaitim big5-bold-i-normal--14-140-0-0-c-140-big5-0 -aliasarphic-ar pl kaitim big5-bold-i-normal--16-160-0-0-c-160-big5-0 -aliasarphic-ar pl kaitim big5-bold-i-normal--18-180-0-0-c-180-big5-0 .................................... .................................... -aliasarphic-ar pl kaitim big5-medium-i-normal--14-140-0-0-c-140-big5-0 -aliasarphic-ar pl kaitim big5-medium-i-normal--16-160-0-0-c-160-big5-0 -aliasarphic-ar pl kaitim big5-medium-i-normal--18-180-0-0-c-180-big5-0 .................................... .................................... 3-2-9. 自動載入 xfs-xtt 為能自動載入 xfs-xtt,您可在 /usr/bin 內編輯一個名為 xfs-xtt 的 script,並在 /etc/rc.d/rc.local 內加入啟動設定,讓每次重開機即可 自動的 load xfs-xtt。分別將內容寫在底下供參考: 3-2-9-1. /usr/bin/xfs-xtt 先編輯 /usr/bin/xfs-xtt ,內容如下 #!/bin/bash cd /usr/bin/X11/ ./xfs-xtt -config /usr/X11R6/lib/X11/fs/config 再 chmod 之 ~# chmod 755 /usr/bin/xfs-xtt 3-2-9-2. 在 /etc/rc.d/rc.local 內加入 echo "Starting TrueType Font Server ..." xfs-xtt & 當然您也可直接拷貝 /root/work/root/TTF_PRINT 目錄內的 這些檔案而不用自己動手 ~# cd /root/work/root/TTF_PRINT ~# cp -f rc.local /etc/rc.d/ ~# cp -f xfs-xtt /usr/bin/ 3-2-10. reboot 有關中文顯示的部份已全部解說完畢,不知大家實作得如何? 接下去的將是中文輸入的部份,加油!! (二)、中文輸入 ===================================================================== 接下來就是中文輸入的部份囉,為分別在 console 及 X Window 中皆能中文 輸入,我們分別裝上所須的中文輸入法吧。 4.) 中文主控台及文字編輯程式 4-1. jmce (繁體中文環境) 及 cce (簡體中文環境) 請從 path-4/slakware/y1 中直接以 pkgtool 安裝 jmce.tgz 及 cce.tgz 同樣的也可從 path-2 中以 rpm 安裝 jmce 及 cce 的 rpm 套件,指令如下 ~# rpm -ihv --nodeps jmce-0.37-1.i386.rpm ~# rpm -ihv --nodeps cce-0.36-1.i386.rpm 4-2. qe 中文編輯程式 請從 path-4/slakware/y1 的 qe.tgz 安裝或從 path-3/RPMS 中 qe 的 rpm 套件來安裝,這是因為 qe 執行時需要 libncurses.so.4.2 這支 library,所以這個 rpm 是筆者在加入此函式庫後重加編譯。 這裡附帶一提的是,在 path-3/RPMS 目錄中如見到有 Sl 或 SlCLE 代號 的 rpm 者,表示為能在 Slackware 上順利使用而重加編譯的。 ~# rpm -ihv --nodeps qe-0.0.34-1Sl.i386.rpm 5.) Xcin & Crxvt 最常用的 X 中文輸入法程式及中文視窗當然也要裝上去,請直接以 pkgtool 安裝 path-4/slakware/y1 目錄中的 libtabe.tgz,xcin.tgz,及 rxvt-cle.tgz 這三個套件。當您也可從 path-3/RPMS/ 目錄中的 libtabe,xcin 及 rxvt 三個 rpm 去安裝,這三個 rpm 其實就是這三個 tgz 的原始檔案。另外請 注意它們是有安裝順序的,如下所示: 5-1.這兩個是 Xcin 中文輸入法 ~# rpm -ihv --nodeps libtabe-0.1.8-1Sl.i386.rpm ~# rpm -ihv --nodeps xcin-2.5.2-1Sl.i386.rpm 5-2.這一個是 rxvt 中日韓文視窗 ~# rpm -ihv --nodeps rxvt-2.7.3-2SlCLE.i386.rpm 這三個套件也重加 compile 以使在 Slackware7.1 上能順利使用,Xcin 主要是改變 xcinrc 之設定及在 KDE 上加入 link,而 rxvt 則是取消 --enable-utmp 這個 make 參數,加入 libutempter.so.0.5.1 及在 KDE 上 作一些 link,有興趣的人皆可從 path-3/SRPMS 目錄中解開其 source RPM 來看看。 6.) Kedit 及 Netscape 的中文輸入 6-1.Kedit 再來將輸入法判斷程式 xcin-im.sh 及 xcin-im.csh 拷背到 /etc/profile.d/ 目錄內,這樣就可在 kedit 內輸入中文了 ~# cp /root/work/etc/profile.d/xcin-im* /etc/profile.d 6-2.Netscape 設定 X 的資源設定檔, 請在自家目錄內編輯一個資源設定檔(.Xresources) 這樣不僅可以使您在 Netscape 或其它 AP 下正常的中文輸入,如再安裝 列印程式更可中文列印。這裡分別列出繁簡中文環境下不同的設定內容供 參考,這樣您就可自由的在 Netscape 輸入中文了。 6-2-1.繁體中文環境(zh_TW.Big5)的設定內容 # (一).Netscape 中文輸入設定部份: # 啟動 Netscape 如果出現亂碼時請先改一下 [檢視]--> [編碼方式] # --> [繁體中文(Big5)] 看看 Netscape*useStderrDialog: False Netscape*preeditType: Root Netscape*fontList: \ -*-helvetica-bold-r-*-120-*-iso8859-1;-*-big5-0: Netscape*XmLGrid*fontList: \ -*-helvetica-medium-r-*-120-*-iso8859-1;-*-big5-0:,\ -*-helvetica-bold-r-*-120-*-iso8859-1;-*-big5-0:=BOLD,\ -*-helvetica-medium-o-*-120-*-iso8859-1;-*-big5-0:=ITALIC # 可以了嗎? 如果還有問題時(如中文字會亂掉或對不齊),您可能 # 需要 libnsfix.so 來修正了 # (二).Netscape 中文列印設定部份: # 底下這些描述可讓您在 Netscape 裡列印中文檔案,請不要註解掉 Netscape*documentFonts.big5*psname: Arphic-MingB5-ETen-B5-H Netscape*documentFonts.big5*pscode: big5 Netscape*documentFonts.big5*pswidth: 1000 Netscape*documentFonts.big5*psascent: 880 # (三).xedit 中文輸入設定部份: # 底下這些描述可讓您在 xedit 裡輸入中文字,請不要註解掉 xtDefaultFontSet: -*-big5-0,-adobe-*-iso8859-1 xedit*international: True xedit*fontSet: -*-16-*-big5-1, -adobe-*-16-*-iso8859-1 .Xedit.shellext.inputMethod: xcin .Xedit.shellext.preeditType: Root 6-2-2.簡體中文環境(zh_CN.GB2312)的設定內容 # (一).Netscape 中文輸入設定部份: # 啟動 Netscape 如果出現亂碼時請先改一下 [檢視]--> [編碼方式] # --> [繁體中文(Big5)] 看看 Netscape*useStderrDialog: False Netscape*preeditType: Root Netscape*fontList: \ -*-helvetica-bold-r-*-120-*-iso8859-1;-*-gb2312.1980-0: Netscape*XmLGrid*fontList: \ -*-helvetica-bold-r-*-120-*-iso8859-1;-*-gb2312.1980-0:=BOLD,\ -*-helvetica-medium-o-*-120-*-iso8859-1;-*-gb2312.1980-0:=ITALIC # 可以了嗎? 如果還有問題時(如中文字會亂掉或對不齊),您可能 # 需要 libnsfix.so 來修正了 # (二).Netscape 中文列印設定部份: # 底下這些描述可讓您在 Netscape 裡列印中文檔案,請不要註解掉 Netscape*documentFonts.gb2312*psname: Arphic-KaiGB-GB-EUC-H Netscape*documentFonts.gb2312*pscode: gb2312 Netscape*documentFonts.gb2312*pswidth: 1000 Netscape*documentFonts.gb2312*psascent: 950 # (三).xedit 中文輸入設定部份: # 底下這些描述可讓您在 xedit 裡輸入中文字,請不要註解掉 xtDefaultFontSet: -*-big5-0,-adobe-*-iso8859-1,-*-gb2312.1980-0 xedit*international: True xedit*fontSet: -*-16-*-big5-1, -adobe-*-16-*-iso8859-1, -*-16-*-gb2312.1980-0 .Xedit.shellext.inputMethod: xcin .Xedit.shellext.preeditType: Root 另外在 Netscape 中於叫出輸入法打字前請先按 [Ctrl]+[Alt]+F 三鍵以 固定住輸入法之輸入狀態,否則它又會跳回 [英數] 模式ㄛ! OK ^_^ 到這裡您可試著在繁或簡體環境中輸入中文字了,如(圖04)所示﹕ 圖04 接下來就是中文列印的上場了!! (三)、中文列印 ===================================================================== 這裡提供兩種環境下(命令列及視窗環境)的列印方法,建議兩種皆裝上去以方便 使用,其中命令列模式就是 bg5ps 這支程式,如再安裝 VFlib2 及 ghostscript 這兩支程式及列印引擎更可讓您在像 Netscape 這種視窗下可直接以 lpr 列印 中文文件,分述如下: 7.) 安裝 bg5ps、VFlib2 及 ghostscript-5.50 7-1.安裝 bg5ps 7-1-1.請從 /root/work/root/TTF_PRINT 目錄中安裝這支 rpm ~# rpm -ihv --nodeps bg5ps-1.2-2.i386.rpm 7-1-2 改一下 /etc/bg5ps.conf 中這兩項設定 a.第二行的中文字型路徑 chineseFontPath="/usr/share/fonts/truetype/" 改為這樣 chineseFontPath="/usr/share/fonts/ttf/" b.拿掉最後一行的 arphic/ 這些字樣,變成這樣就可以了。 fontName="bsmi00lp.ttf" 7-2.安裝ghostscript-5.50 及 VFlib2 直接從 path-4/slakware/y2 中安裝 gs55.tgz、gsfont55.tgz、 vflib2.tgz 及 vflib2dv.tgz 這四個 tgz 套件或是從 path-2 安裝這 四個 rpm ~# rpm -ihv --nodeps ghostscript-5.50-7CLE.i386.rpm ~# rpm -ihv --nodeps ghostscript-fonts-5.50-3.noarch.rpm ~# rpm -ihv --nodeps VFlib2-2.25.1-2CLE.i386.rpm ~# rpm -ihv --nodeps VFlib2-devel-2.25.1-2CLE.i386.rpm 8.)安裝 xa+cv 直接從 path-4/slakware/x2 中安裝 xa+cv.tgz 或從 path-2 安裝之 ~# rpm -ihv --nodeps xa+cv-0.7-pre1.i386.rpm 另外從工作目錄中拷貝 xa+cv.sh 及 xa+cv.csh 到 /etc/profile.d/ 目錄中並重新 login。 ~# cp /root/work/etc/profile.d/xa+cv* /etc/profile.d 9.) 印表組態 (APSfilter) 執行系統中 apsfilter 程式的 SETUP script,以設定您的印表組態 ~# cd /usr/lib/apsfilter ~# ./SETUP 這樣您的系統在 X 中就具備列印 Postscript 文件的能力了。 如果不幸沒有組態成功,您可再次執行 /usr/lib/apsfilter/SETUP 這支安裝的 script 來,測試列印的功能: a.命令列下(不分 Console 或 X 的 terminal) cat big5text | bg5ps | lpr 有沒出紙呢? b. X Window 中 在 Netscape 中打幾個字,再直接以 lpr 列印,可以嗎?有無亂碼?? 好了,中文化最重要的部份業已說明完畢,不知大家實作得如何? 再下去的章節就是有關中文訊息、處理的部份,另外也要 介紹一些有用的中文應用軟體。 (四)、中文訊息 ===================================================================== 一些中文訊息的中譯也要裝上去,以備參考。 像是中文 HOWTO 及一些訊息說明檔案。 10.) 中文訊息部份 10-1.中文 HOWTO 直接從 path-4/slakware/f1 裝上中文 HOWTO 的 chwtotxt.tgz、 chwtohtm.tgz 及 chwtosgm.tgz 。它們分別是純文字、html 及 sgml 格式的文件。 您都可在 /usr/doc/HOWTO/translations 目錄內找到它們。 10-2.訊息翻譯檔 另外也裝上訊息翻譯檔 zh_trans.tgz (path-4/slakware/x2) (五)、中文處理及中文應用軟體 ===================================================================== 一些 Big5 <-> GB <-> Unicode 的轉碼工具或中文處理的軟體、一些好用的 程式我們也裝上它吧! 11.) 中文處理部份 一些好用的處理軟體,我們也把它給裝上去,請從 path-4/slakware/x2 目錄中直接安裝 11-1.autoconvert -- autocovr.tgz 中文 HZ/GB/BIG5 碼自動轉換器 11-2.中文 sgmltools -- zh-sgmlt.tgz 用來支援 SGMLtools 處理中文 sgml 檔案的工具(原 bg5sgmltools), 它能讓您轉換 Big5 及 GB 編碼的 SGML 檔案為 HTML、純文字或 tex,dvi 等格式的檔案 12.)中文應用軟體部份 12-1.LyX 中文排版軟體 不錯用的排版軟體,安裝步驟如下 12-1-1.先打 pkgtool 移除 tetex、tex_bin 及 tex_doc 三個套件(v1.0.7) 約需 10 分鐘左右。 12-1-1.直接從 path-4/slakware/t1 安裝下列套件 ttx.tgz、ttxafm.tgz、ttxdoc.tgz、ttxdvilj.tgz、ttxdvips.tgz、 ttxfonts.tgz、ttxlatex.tgz、ttxxdvi.tgz 及 xforms.tgz 12-1-2.直接從 path-4/slakware/t2 安裝下列套件 cjk.tgz 、freetpct.tgz 及 lyx-i18n.tgz 12-1-3.從 /root/work/root/TTF_PRINT 安裝下列 rpm 套件 ~# rpm -ihv --nodeps ttfm-0.9-11.i386.rpm ~# rpm -ihv --nodeps chitex-6.0.9p5-9.i386.rpm 在 ttfm 安裝過程中會有一些訊息請不用在意, 安裝完進入 LyX 後打打字看看,是否像(圖05)的樣子﹕ 圖05 12-2. Abiword 可讀取微軟 Word 文件的文書編輯器,安裝方式 1.) tgz file path-4/slakware/y2/abiword.tgz 2.) rpm file path-3/RPMS/abiword-0.7.10-5SlCLE.i386.rpm 12-3. 中文英漢/漢英字典 pyDict 用 python/gtk 寫成的英漢/漢英字典,安裝方式 1.) tgz file path-4/slakware/gtk1/pydict.tgz 2.) rpm file path-3/RPMS/pyDict-0.2.5-2Sl.noarch.rpm 12-4. 中文檔案傳輸工具 gftp 先打 pkgtool 移除 gftp(v2.0.6a),約 3 分鐘左右,安裝方式 1.) tgz file path-4/slakware/gtk1/gftpcle.tgz 2.) rpm file path-3/RPMS/gftp-2.0.7b-1Sl.i386.rpm 12-5. MP3 Player 很炫的 mp3 player -- xmms 安裝方式 1.) tgz file path-4/slakware/y2 下的xmms.tgz、xmmsdevl.tgz、 xmmsesd.tgz、xmmsg-k.tgz、xmmsmesa.tgz、xmmsmiko.tgz 及 xmmsskin.tgz 2.) rpm file path-3/RPMS/ 下的這些 rpm packages xmms-1.2.3-2SlCLE.i386.rpm xmms-devel-1.2.3-2SlCLE.i386.rpm xmms-esd-1.2.3-2SlCLE.i386.rpm xmms-gnome-kde-1.2.3-2SlCLE.i386.rpm xmms-mesa-1.2.3-2SlCLE.i386.rpm xmms-mikmod-1.2.3-2SlCLE.i386.rpm xmms-skins-1.0.1-2.noarch.rpm 12-6. 其它中文軟體 其它的部份如果您有用到也可裝上去,像是中文線上 ICQ(gnomeicu)及 中文 IRC 聊天軟體(xchat) 等等。不過您皆須先移除掉系統原有的套件 (gnomeicu-0.93 及 xchat-1.2.1)後再來安裝經中文 patch 過的 gnocicu.tgz 及 xchatcle.tgz。安裝路徑為 1.) tgz file path-4/slakware/gtk1/gnocicu.tgz path-4/slakware/gtk1/xchatcle.tgz 2.) rpm file path-3/RPMS/gnomeicu-0.93-2CLE.i386.rpm path-3/RPMS/xchat-1.4.3-2SlCLE.i386.rpm 最後您也可再安裝這些套件以讓您用得更為順暢 1.) X Window 中 GUI 界面設定語系的 locale_config 1.) tgz file path-4/slakware/x2/lcal_cnf.tgz 2.) rpm file path-3/RPMS/locale_config-0.3-3Sl.i386.rpm 2.) CLE release file 有各種內定的中文環境設定,這個套件也有重新編譯過 1.) tgz file path-4/slakware/y3/cle-rels.tgz 2.) rpm file path-3/RPMS/cle-release-0.9p1Sl-2.noarch.rpm 3.) KDE kpanel popup menu 訊息中文化 安裝 path-4/slakware/y3/kdepatch.tgz 這個 patch 的 tgz 可讓您的 kpanel 訊息中文化(如圖06),但我們要將這個檔給刪掉 /opt/kde/share/applnk/apps/Internet/navigator.kdelnk。 另外編輯 /opt/kde/share/applnk/apps/Internet/netscape.kdelnk 將第五行 Exec=/usr/bin/netscape-communicator 改成 Exec=/usr/bin/netscape 即可正常運作了。 圖06 4.) 另外您也可裝上中文版的 Netscape(v4.75) ,但也要先移除系統原有的 再動作哦(netscape-4.73) 1.) tgz file path-4/slakware/xap1 中的這三個套件 nscp-cmn.tgz、nscp-cmr.tgz 及 nscp-nav.tgz 2.) rpm file path-3/RPMS 下這三個 rpm netscape-common-4.75-0.6.2.6SlCLE.i386.rpm netscape-communicator-4.75-0.6.2.6SlCLE.i386.rpm netscape-navigator-4.75-0.6.2.6SlCLE.i386.rpm 後記 --------------------------------------------------------------------- 經過這樣的實作,要為 Linux 中文化應該不難吧!! Linux 中文化的技術及管理已日漸成熟及方便,而整體上對中文繁簡碼 的支援也越來越完備,雖然還是有些小缺點!但這都不能阻礙這股潮流的 發展。君可見相當多的國內外機構及公司都在為這個奮力不懈,當然也包括 國內的 CLE 研發小組,讓我們為他們喝采及鼓勵吧!!甚至大家也可盡份 心力哦。 Jerry Wu |