在 Xwindow 的圖形接口底下,由于各程序間的交互作用是以「窗口」為單位,它們可以藉由標(biāo)準(zhǔn)的 X 協(xié)議達(dá)到彼此間的溝通,故我們自然而然地可以將中文終端機(jī)程序與輸入法本身分開發(fā)展(輸入與輸出是兩個獨(dú)立的應(yīng)用程序,可以通過X協(xié)議來傳遞數(shù)據(jù)),而不再需要像純文字模式下將二者綁在一起 (在早期確有將二者綁在一起的解決方案。
舉個例子,比如 cxterm,它是直接自 Xwindow 的標(biāo)準(zhǔn)終端機(jī)程序 xterm 修改而來),如此在一個圖形桌面上只需執(zhí)行一個中文輸入法,就可以對許多中文終端機(jī)程序提供中文輸入的服務(wù),不但節(jié)省系統(tǒng)資源,同時模塊化的開發(fā)模式也讓后續(xù)維護(hù)工作容易得多。
◆一、SCIM
SCIM (Smart Common Input Method) 智能通用輸入法平臺。也是個人開發(fā)(這里個人只是相對于公司而言,與是否Team work無關(guān)),作者為蘇哲。SCIM使用C++編程語言寫成。
SCIM是一個通用的輸入法開發(fā)平臺, 用以簡化輸入法的開發(fā)和維護(hù). SCIM 還包括完整的 XFree86 窗口系統(tǒng)輸入法應(yīng)用程序.前面說過,Xsim與Windows下的紫光拼音非常相像,而Scim簡直就是微軟拼音的Linux版了。它和微軟拼音一樣使用“”做頓號;會根據(jù)上下文自動選擇雙引號;在用Shift進(jìn)行中英文切換時,中英文標(biāo)點(diǎn)也會自動切換;支持繁體輸入等。
SCIM 采用完全模塊化的架構(gòu)設(shè)計(jì), 輸入法引擎, 配置存儲 和 前端協(xié)議都采用獨(dú)立的模塊實(shí)現(xiàn). 目前 SCIM 包含的前端協(xié)議模塊有 x11 模塊 (用以支持 XIM 協(xié)議) 和 socket 模塊(用以支持網(wǎng)絡(luò)傳輸協(xié)議). 包含的配置存儲模塊有 simple 模塊(將配置存儲在文本文件中) 和 gconf 模塊(將配置存儲在 GConf 配置系統(tǒng)中). 包含的輸入法引擎模塊有 rawcode 模塊(內(nèi)碼輸入法) 和 table 模塊(通用碼表輸入法)。
啟動 SCIM 最簡單的命令就是 scim -d, 該命令以后臺進(jìn)程形式啟動 SCIM 的 XFree86 XIM 前端模塊, 并調(diào)入搜索到的所有輸入法模塊. SCIM 的 XIM 前端模塊默認(rèn)使用的輸入法名稱是 "SCIM", 因此如果想在應(yīng)用程序里面使用 SCIM, 必須設(shè)置環(huán)境變量 XMODIFIERS="@im=SCIM"。
1.使用
修改i18n文件、進(jìn)入X-Window以后,除了不會出現(xiàn)狀態(tài)條,其它使用方法基本類似,而且在KDE和GNOME中都很好用。
2.配置
Scim的用戶配置文件是$HOME/.scim/config.zh_CN。這里文件名根據(jù)用戶的Locale設(shè)置可能不盡相同。
◆二、Xsim輸入法
Xsim全稱為X Simple Input Method,作者是楚狂,是目前應(yīng)用較多的中文輸入軟件。它的界面很漂亮,可定制性較強(qiáng),光標(biāo)跟隨做得很好,但是系統(tǒng)依賴性較強(qiáng)。如果需要的相關(guān)軟件不全,甚至版本不同都可能造成安裝失敗。
1.安裝
Xsim的安裝和其它軟件類似,需要注意的是,它使用了db4 C++庫,所以應(yīng)該保證系統(tǒng)中已安裝了libdb4、libdb4cxx等軟件包。如果使用源代碼安裝,還需要libdb4-devel包。如果用RPM 安裝的話,請盡量使用和系統(tǒng)版本完全一致的發(fā)布版,如Mandrake 9.0與9.1就有所不同。我建議使用源代碼方式安裝。
2.使用
修改/etc/sysconfig/i18n文件進(jìn)行配置,配置好以后,進(jìn)入X-Window,可以看見左下角的“簡”字,說明Xsim已正常啟動。默認(rèn)情況下,按“Ctrl+Space”啟動中文輸入,這時“簡”字會有半個三角變成綠色,同時出現(xiàn)一個中文的句號,表示現(xiàn)在處于中文文字(拼音)及標(biāo)點(diǎn)輸入狀態(tài)。其它與Windows下的紫光拼音完全一樣,用Shift鍵快速切換中英文;用“,”和“.”在可選字中翻頁;中文頓號是斜杠“/”,而不是通常的 “”;其它如用“Ctrl+Shift”切換拼音和五筆;用“Ctrl+.”切換中英文標(biāo)點(diǎn)等,都符合Windows用戶的習(xí)慣。
3.配置
Xsim的默認(rèn)配置文件是/usr/local/xsim/etc/xsimrc。我們可以在這里配置狀態(tài)條(就是那個簡字)和輸入條的字體、顏色等,該文件帶有說明和例子,非常簡單明了。
4.缺點(diǎn)
每次啟動X-Window以后,狀態(tài)條都會出現(xiàn)在右下角,沒有保存上次的位置狀態(tài),而且在KDE下的表現(xiàn)不如GNOME。另外,常見詞組似乎不太符合慣例,一些使用頻率較高的詞組要翻幾次才能找到。
◆三、Fcitx
Fcitx是Free Chinese Input Toy for X的簡寫,最初稱作G五筆,又是一個個人作品,作者為Yuking。它默認(rèn)支持智能拼音、區(qū)位和五筆輸入。該輸入法現(xiàn)在還有一個專門的中文名,叫小企鵝輸入法,它擁有不少的愛好者,里面有詳盡的安裝、設(shè)置介紹,這里就不再重復(fù)。它的切換方式比較獨(dú)特,用左Ctrl鍵快速切換中英文,左Shift+空格切換中英文標(biāo)點(diǎn)。
◆四、Chinput
Chinput大概算得上是Linux圖形界面下較早的中文輸入法了,因此文檔比較豐富,目前已經(jīng)是3.0.2版,它支持最多的輸入方式,也有很多可供配置的選項(xiàng),如字體、顏色等,主要配置文件是/usr/lib/ZWinpro/Chinput.ad。我個人認(rèn)為它就像 Windows下的智能ABC,基本功不錯,但是在界面和易用性上創(chuàng)新不夠。
它的缺點(diǎn)是不能進(jìn)行中英文的快速切換,還在使用v+英文的快速輸入方式。有時安裝會出現(xiàn)一些錯誤,例如在Mandrake 9.1中要想使用默認(rèn)的Chinput輸入法,還得手工修改兩處:
修改/usr/lib/ZWinpro/Chinput.ad,將chinput.gblocale由zh_CN.GB2312改為zh_CN;
拷貝/usr/lib/unicon/modules/cce/dict/userphrase.tab到$HOME/.pyinput/下。
當(dāng)然這些和Mandrake也有關(guān)系。
◆五:Xcin
Xcin是臺灣同胞的作品,因此習(xí)慣上與我們差別較大,如默認(rèn)使用空格鍵翻頁,不支持拼音詞組。它雖然很多選項(xiàng)都可以自己配置,但仍略顯麻煩,所以不推薦使用。
使用Xcin需要注意的幾個地方是,它根據(jù)不同的Locale需要不同的XMODIFIERS變量。例如,如果是默認(rèn)的zh_CN.BIG5,可能只需要設(shè)置@im=xcin就可以了,但在簡體中文環(huán)境下,可能是xcin-zh_CN、xcin-zh_CN.GB2312等。要是不敢確定,在命令行中運(yùn)行 xcin,會顯示所需的變量名,照搬就可以了。
當(dāng)然,Linux下的中文輸入法也不是只有這幾種,例如陳橋智能五筆,也包括智能五筆、智能拼音,但是由于存在GPL糾紛,所以用的人不多。


