漢化你的RedHat全攻略(1)- 中文環(huán)境和中文輸入法的安裝
2024-07-26 00:30:43
供稿:網(wǎng)友
前言:
網(wǎng)上關(guān)于如何漢化RedHat的文章已經(jīng)很多了,我寫(xiě)這篇稿子的目的其實(shí)僅僅是一個(gè)總結(jié),力求把他寫(xiě)的詳細(xì)一點(diǎn),以便每位看完這份稿子的朋友能夠自己動(dòng)手享受中文.
感謝wu yulun在這段時(shí)間內(nèi)對(duì)我的及時(shí)幫助.
感謝于明簡(jiǎn)老師寫(xiě)出Chinput.
感謝為中文locale做出貢獻(xiàn)的人
憤恨及鄙視那些將linux的漢化技術(shù)作為賺錢(qián)秘密而秘而不宣的公司.
本文提到的軟件包大家可以通過(guò)http://www.linuxorb.net下載,他們分別是:
locale-zh-0.97.src.rpm - Linux中文環(huán)境文件.packaged by Wu yulun
Chinput-3.0 - 中文輸入法. developed bu Yu Mingjian
pth-1.3.7 - 可移植線程庫(kù)
unicon2 - Chinput需要的表碼軟件包
一.安裝中文環(huán)境
1-1 確定glibc的版本
這份locale-zh是for glib 2.1.3 (RH 6.2)的,因此如果你的glibc < 2.1.3,請(qǐng)升級(jí)他.如果你的glibc > 2.1.3,你可以到我的主頁(yè)下載相應(yīng)的locale環(huán)境定義文件zh_CN,然后用lcoaledef來(lái)產(chǎn)生相應(yīng)的中文環(huán)境.我的RH 是6.1版本的,于是我找到了一張RH6.2的CD,升級(jí)了下面幾個(gè)包:
* egcs
* egcs-c++
* libstdc++
* glibc
* gtk*
* XFree86
make
autoconf
automake
kernel
( 注:打*的,你必須更新 )
1-2 安裝中文locale環(huán)境
如果你使用的是RH 7,請(qǐng)到我的網(wǎng)頁(yè)下載zh_CN for glibc 2.2,然后用lcoaledef來(lái)產(chǎn)生相應(yīng)的中文環(huán)境,(關(guān)于具體問(wèn)題請(qǐng)參看Wu yulun的 如何在RedHat7.0中安裝Chinput3.0中文輸入法一文).
安裝locale很簡(jiǎn)單,
rpm -ivh locale-zh-0.97.src.rpm
- 會(huì)在/usr/src/redhat/SPECS 下產(chǎn)生一個(gè)locale-zh-0.97.spec,
rpm -ba locale-zh-0.97.spec
- 重建這個(gè)包.會(huì)在/usr/src/RPMS/i386 下產(chǎn)生一個(gè)相應(yīng)的binary包,安裝它吧!
他會(huì)生成3個(gè)環(huán)境定義
zh_CN.GB2312 我們需要的就是這個(gè)
zh_CN.BIG5 繁體中文環(huán)境
zh_CN.GBK 作者說(shuō)這個(gè)是他從TLC借過(guò)來(lái),除了測(cè)試沒(méi)有什么太大用處
1-3 測(cè)試中文locale
不必要寫(xiě)個(gè)程序來(lái)測(cè)試了.很簡(jiǎn)單的,首先
export LC_ALL=zh_CN.GB2312 -設(shè)定中文環(huán)境
輸入命令rpm -qi kernel,看看時(shí)間部分是不是由 *d-*m-*y => *y-*m-*d,如果沒(méi)有問(wèn)題,說(shuō)明locale-zh安裝成功.
1-4 讓gnome支持中文
修改 /usr/lib/X11/locale/locale.alias,加入一行:
zh_CN.GB2312 zh_CN.eucCN
該命令指定當(dāng)終端locale為 zh_CN.GB2312 時(shí),X Windows 使用 zh_CN/XLC_LOCATE 為場(chǎng)所定義。
/usr/lib/X11/locale/目錄下沒(méi)有zh_CN/XLC_LOCALE,所以我們做一個(gè)連接就可以了:
ln -s /usr/lib/X11/locale/zh/XLC_LOCALE /usr/lib/X11/locale/zh_CN/XLC_LOCALE
修改 /etc/gtk/gtkrc.zh_CN 將所有的字體定義改為:
fontset = "-*-*-medium-r-normal--16-*-*-*-*-*-iso8859-1, -*-*-medium-r-normal--16-*-*-*-*-*-gb2312.1980-0"
采用16點(diǎn)的漢字,這樣會(huì)看起來(lái)舒服一點(diǎn).
這時(shí),當(dāng)你export LC_ALL=zh_CN.GB2312,startx后,若沒(méi)有問(wèn)題就可以看到中文了。用gedit開(kāi)一個(gè)中文文檔看看??!
若你看到的中文是亂碼的話,可嘗試做以下的修改:
確定你所使用的桌面主題,不同的桌面主題采用了自制了gtkrc文件,當(dāng)使用這些主題的時(shí)候,GTK 并沒(méi)有從 /etc/gtk 中讀取 gtkrc 文件,所以需要對(duì)相應(yīng)主題的 gtkrc資源配置文件增加中文字體描敘,使其可以正確的找到相應(yīng)的中文字體。以 Default 為例,在 /usr/share/themes/Default/gtk 中會(huì)有一個(gè) gtkrc 的文件,查看其內(nèi)容,將其所有的字體描述改為/etc/gtk/gtkrc.zh_CN 那個(gè)樣子就行了。
二.安裝中文輸入法Chinput
2-1 安裝pth
tar -zxvf pth-1.3.7.tar.gz
./configure --PRefix=/usr #以便pth lib被安裝在/usr/lib/
make
make install
2-2 安裝unicon
將 unicon2-im 解到 /usr/lib 目錄下即可.
2-3 安裝Chinput 3.01
tar -zxvf Chinput-3.0.tar.gz
拷貝Chinput-3.0-1.patch到Chinput 3.0目錄下
patch -p1 < Chinput-3.0-1.patch #打3.0.1的補(bǔ)丁
make
make install
修改 /usr/lib/ZWinPro/Chinput.ad 文件:
由于 XFree86 沒(méi)有自帶的 BIG5 碼字體,若你不需要輸入 BIG5 碼字符,
則對(duì) Chinput.ad 做以下調(diào)整:
...
chinput.gblocale = zh_CN.GB2312
chinput.big5locale = zh_CN.GB2312
...
chinput.gbfont = -*-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0 chinput.big5font = -*-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0
注意:在 Chinput.ad 的字體定義中,不能出現(xiàn)空格,這是由于 Chinput 的限制。(應(yīng)該使用Tab)
由于 Chinput 需要 libstdc++-lib6.1-2.so.3,而 RedHat 的 compat-libstdc++ 兼容庫(kù)中只包含 libstdc++-2-libc6.1-1-2.9.0.so,則需手動(dòng)建立一個(gè)庫(kù)鏈接:
ln -s libstdc++-2-libc6.1-1-2.9.0.so libstdc++-libc6.1-2.so.3
2-4 啟動(dòng)Chinput
讓你每次啟動(dòng)xwindows的時(shí)候都有中文支持,修改你的.bashrc ,加入:
export LC_ALL=zh_CN.GB2312
export LC_LANG=zh_CN.GB2312
export XMODIFIERS=@im=Chinput
到此,linux的漢化基本完成,進(jìn)入 X Windows 環(huán)境。選擇Run,輸入 chinput,中文輸入服務(wù)器就加載了。你可以打開(kāi)一個(gè)支持vim的軟件(gedit),敲入 ctrl-space 就會(huì)出現(xiàn)輸入條.
注:chinput 輸入服務(wù)器,僅對(duì)支持 XIM 的軟件有效,如果該軟件支持這種輸入 方式,敲入 ctrl-space 就會(huì)出現(xiàn)輸入條,否則無(wú)任何顯示。
后記:
以上是本人在XFree86 3.3.6+glibc 2.1.3上,安裝中文環(huán)境及中文輸入法的步驟,完全通過(guò),如果各位還有什么問(wèn)題,請(qǐng)發(fā)信到bigluo@china.com.
下一章我將討論TrueType字體的使用. (待續(xù))