XA是由臺灣開發(fā)者開發(fā)的,當(dāng)前版本為XA-0.4b,它具備GB顯示能力的國標(biāo)版本為xa-1.04 。它能夠在FreeBSD下編譯執(zhí)行 。對于這些包裝方式的外掛中文系統(tǒng),可以使用它提供的shell腳本xa來啟動應(yīng)用程序 。
$ Xcin&
$ xa kvt&
或者自己設(shè)置LD_PRELOAD變量為wrap動態(tài)庫的全路徑,再啟動相應(yīng)的應(yīng)用程序 。
$ LD_RELOAD=/usr/X11R6/lib/wrap.so; export LD_PRELOAD
$ kvt&
在啟動了它的輸入服務(wù)器Xcin之后,那么就能在xa啟動的程序中就能使用熱鍵切換Xcin的中英文輸入了 。
Chinput與ZhXwin
Chinput是另一個使用了包裝技術(shù)的中文輸入和顯示軟件,它是使用了cxterm的輸入源代碼模塊在Linux下開發(fā)的,在FreeBSD下也能夠正常編譯運行 。Chinput的作者在其正式發(fā)布1.4.1版本中包括了幾個與中文顯示和輸入無關(guān)的軟件,雖然單個軟件都還很有用,但是將幾個軟件捆在一起,使得應(yīng)用程序管理比較混亂,還是應(yīng)該將每個單獨的應(yīng)用程序獨立出來,Chinput就專門用于中文的輸入和管理 。FreeBSD中可以使用Packages的管理機制來管理應(yīng)用程序之間的關(guān)系 。
Chinput使用資源文件Chinput.ad,并需要Cxterm的輸入法,因此需要預(yù)先安裝Cxterm包 。它還提供了一個腳本run來運行應(yīng)用程序 。但直接設(shè)置LD_PRELOAD變量的方法也不復(fù)雜(移植到FreeBSD后的package中的執(zhí)行腳本被更名為crun),Chinput的輸入服務(wù)器為chinput,因此可以使用下面的命令來啟動Chinput 。
$ chinput &
$ crun kvt &
ZhXWin的輸入服務(wù)器也使用Chinput的chinput,并加上一個比較簡單卻有效的用于處理顯示的包裝庫,它可能是基于Chinput的一個早期版本發(fā)展的 。ZhXWin的優(yōu)點是簡單、有效,標(biāo)準(zhǔn)Chinput使用了幾種不同大小的字體進行顯示,而ZhXWin僅僅使用一種字體,然而除了一些字符間距的處理方面,其顯示效果還不錯 。
$ LD_RELOAD=/usr/X11R6/lib/libst.so; export LD_PRELOAD; kvt&
使用包裝軟件
每個包裝軟件由兩個部分組成,一個部分為輸入模塊,需要單獨運行 。XA使用Xcin作輸入模塊,Chinput和ZhXwin使用chinput作輸入模塊 。另一個部分為包裝庫,需要使用LD_PRELOAD環(huán)境變量進行設(shè)置 。
如果要讓窗口管理器,如KDE,也顯示中文,就需要在啟動這些窗口管理程序之前設(shè)置好包裝庫,這就需要在.xinitrc或.xsession文件中的最前面增加LD_PRELOAD變量的定義:
$ mv ~/.xinitrc ~/.xinitrc.orig$ cat > ~/.xinitrcLD_PRELOAD=/usr/X11R6/lib/wrap.soexport LD_PRELOADchinput &^D$ cat ~/.xinitrc.orig >> ~/.xinitrc然而由于這些中文包裝軟件需要處理鍵盤,以用于輸入中文,直接讓包裝軟件接管窗口管理器,就使得它也影響窗口程序的鍵盤控制,就使得一些熱鍵不能正常使用 。雖然通過包裝KDE,使KDE能顯示中文菜單和中文提示,但為了使用正常的鍵盤操作,還是推薦對每個需要中文能力的軟件分別進行包裝,而不要直接對窗口管理器進行包裝 。
所有的這些中文包裝庫都比較新,沒有經(jīng)過足夠的實踐考驗或測試,因此存在問題是難免的 。當(dāng)包裝了窗口管理器時,如果包裝庫出現(xiàn)問題,就可能造成X服務(wù)器的鍵盤死鎖,對使用者的操作沒有反應(yīng) 。然而此時系統(tǒng)并沒有停止運行,可以使用網(wǎng)絡(luò)連接上去,殺死X服務(wù)器,更改包裝設(shè)置 。
【52 FreeBSD連載:外掛式中文顯示與輸入軟件】未完,待續(xù) 。。。
推薦閱讀
- FreeBSD 5.3 與 Apache2.0建立列目錄
- 退出 FreeBSD 系統(tǒng)
- freebsd系統(tǒng)下終端即時查看日志命令
- 構(gòu)建小型的 FreeBSD 入侵檢測系統(tǒng)
- FreeBSD命令 lastcomm介紹 1.
- FreeBSD 5.1-Release Note
- 華為p11外觀長什么樣 華為p11外觀介紹
- FreeBSD命令 lastcomm介紹 2. accton 介紹
- 中國外交官都有誰
- FreeBSD idled 命令介紹
