zhcon 一個快速地外掛式CJK(中文/日文/韓文)的多內碼平臺
下載源代碼、編譯、安裝
最新版本的源代碼可以訪問軟件下載。如果下載的是一個源碼包,以v0.2為例,文件名為zhcon-0.2.tar.gz。
首先將源代碼解開到一個臨時目錄:
tar zxf zhcon-0.2.tar.gz -C /tmp
cd /tmp/zhcon-0.2
然后運行configure腳本檢查系統編譯環境,創建Makefile。
./configure
這時屏幕上會出現很多檢測信息,如果沒有問題的話接著執行make開始編譯源代碼。
make
編譯完成后切換到root用戶執行make install安裝可執行文件并刪除臨時目錄。
su
make install
cd ..
rm -rf /tmp/zhcon-0.2
至此,zhcon已經成功安裝到您的系統中。在控制臺執行zhcon就能進入中文環境。
zhcon
如果您是第一次使用zhcon,可能還需要下載一些字體文件。詳細的配置方法見后。
如果您想卸載zhcon請以root身份登陸并執行下面的命令,就能完成卸載。
make uninstall
如果您已經對zhcon的缺省設置很滿意,就可以開始享受了。如果您還想對zhcon做個性化的設置,或做進一步的研究,那么,請繼續閱讀下面的內容。
設置顯示模式
要顯示中文,首先要使控制臺進入圖形狀態。zhcon目前支持FrameBuffer,libggi,vga三種圖形驅動。
FrameBuffer,可以譯作“幀緩沖”,有時簡稱為fbdrv,基于fbdrv的console也被稱之為fbcon。這是一種獨立于硬件的抽象圖形設備。FrameBuffer的優點在于其高度的可移植性、易使用性、穩定性。使用linux內核的FrameBuffer驅動(vesafb),可以輕松支持到1024X768X32bpp以上的分辯率。而且目前可得到的絕大多數linux版本所發行的內核中,已經預編譯了FrameBuffer支持,通常不需要重新編譯內核就可以使用。所以FrameBuffer也是zhcon推薦使用的驅動方式。
進入FrameBuffer可以簡單地在系統啟動時向kernel傳送vga=mode-number的參數來激活FrameBuffer設備,如:
lilo:linux vga=305
將會啟動1024x768x8bpp模式。
色彩 | 640x400 | 640x480 | 800x600 | 1024x768 | 1280x1024 | 1600x1200 |
4bits | ? | ? | 0x302 | ? | ? | ? |
8bits | 0x300 | 0x301 | 0x303 | 0x305 | 0x307 | 0x |
15bits | ? | 0x310 | 0x313 | 0x316 | 0x319 | 0x31D |
16bits | ? | 0x311 | 0x314 | 0x317 | 0x | 0x31E |
24bits | ? | 0x312 | 0x315 | 0x318 | 0x31B | 0x |
32bits | ? | ? | ? | ? | ? | ? |
要使linux缺省進入FrameBuffer,可以修改/etc/lilo.conf,加入一下語句:
vga=0x303
退出編輯,執行:
lilo -v
重新啟動linux,可以使其進入800x600的256色模式。
libggi,libggi是一個跨平臺的繪圖庫。在Linux上,libggi是通過調用FrameBuffer或svgalib來完成圖形操作的,可能速度速度比較慢。但在某些不支持FrameBuffer或是vga的系統上使用libggi仍然是一種不錯的選擇。
要使用libggi,需要設置GGI_DISPLAY環境變量,例如:
在.bash_PRofile中加入export GGI_DISPLAY=display-fbdev:-noinput
將使用libggi提供的接口來完成圖形輸出(使用FrameBuffer)。更詳細的信息請參閱libggi的文檔。
vga,如果您的內核并沒有編譯進對FrameBuffer的支持,那么可以使用內建的vga驅動來使顯目工作在640x480x16色的模式下。因為vga驅動是直接對顯卡上的寄存器操作,所以這種方式的移植性很差,速度也比較慢。
系統啟動時會按以下順序來選擇圖形驅動:libggi(如果設置了環境變量GGI_DISPLAY),framebuffer,vga.
多內碼支持
多內碼平臺,zhcon目前支持GB2312,GBK,BIG5,JIS,KSCM等多種內碼。在系統運行時可以通過熱鍵CTRL-F1到CTRL-F5在以上幾種編碼方式間自由切換。
另外,還有一個內碼自動轉換的特性。zhcon可以在GB2312和BIG內碼之間自動識別、轉換。使用CTRL-F9可以在以下幾種方式下切換:
注意:內碼自動識別功能僅適用于GB2312和BIG5之間的自動轉換和識別。
多點陣字體支持
與其它的控制臺中文平臺一樣,zhcon使用點陣字體顯示漢字。目前,zhcon使用一種在標準的Linux PSF字體格式的基礎上擴展了的BPSF格式來存放字庫。對該格式的詳細描述可參閱doc/bpsf.txt。
當前版本的zhcon支持12、14、16、24等多種點陣字體。在分辯率較低的情況下(640X480)可以考慮使用12點陣字體來顯示漢字;在高分辯率的情況下(大于1024X768)則可以使用24點陣字體來優化顯示效果。
所有字體文件都存放在$prefix/lib/zhcon/font/目錄下。可以通過修改配置文件zhcon.conf或.zhconrc中的ascfont 和(gbkfont,big5font,jisfont,kscmfont )來選擇不同的字體。
將使用16點陣字體。
ascfont = font/asc16.bpsf
gbfont = font/gb-16.bpsf
gbkfont = font/gbk-16.bpsf
big5font = font/big5-16.bpsf
jisfont = font/jis-16.bpsf
kscmfont = font/kscm-16.bpsf
將使用12點陣字體顯示簡體漢字。
ascfont = font/asc12.bpsf
gbfont = font/hzk12.bpsf
將使用24點陣楷體字顯示簡體漢字。
ascfont = font/asc24.bpsf
gbfont = font/gb-24-kai.bpsf
新聞熱點
疑難解答