|
本文分為以下四個部份:
一、 安裝Linux前的準備工作
二、 驅動NVIDIA 3D加速卡
三、 X-Window下的多媒體娛樂
四、 關於中文環境
在開始本文之前,有幾件事情要先來說明一下。這篇文章的目的,並不是要告訴大家什麼Linux的基本概念,例如檔案系統架構,基本的操作或是詳細的安裝過程等等。當然這篇文章是寫給剛入門的新手看的,但是對於完全沒有碰過Linux的人來說,是不大可能看得懂本文在寫些什麼的。說得更詳細一點,本文是給那些剛入門探索Linux的世界有一陣子,但是卻遭遇到重大挫折而又不得不重回Windows懷抱的新手們看的。
Linux其實也可以看VCD/DVD,玩雷神之槌Ⅲ(Quake3),聽Mp3,並且像是在Windows環境那樣輸入中文。自從Mandrake以KDE當作預設桌面之後,整個視窗操作環境其實已經跟Windows沒有兩樣了,甚至連其中的快速鍵都一模一樣。
當然跟Windows很像並不是Linux的優點,Linux最大的優點是它先進的核心架構,即使KDE桌面環境做得很像Windows,但Linux的核心架構跟Windows是完全不一樣的。Linux的前身是UNIX,一個專門為了專業級的大型伺服器開發的作業系統,因此Linux也繼承了UNIX的特點,包括多工能力,穩定的作業環境,以及不易毀損的ext3日誌型檔案系統等等。
Linux是一個核心架構比Windows先進的32位元作業系統,Windows一直到了XP,才是一個真正的32位元作業系統。因為早期的電腦是16位元,Linux才未能廣泛普及,造成微軟的DOS作業系統獨佔市場的局面。
Linux唯一的缺點,就是X-Window桌面環境的整合度比不上Windows,甚至有許多新手可能還卡在無法進入X-Window的窘境,或是好不容易驅動了顯示卡,卻沒有3D加速的功能。想看DVD,卻因為鎖區碼的問題而無法播放,不然就是沒有5.1聲道,無法享受高品質的聲光效果。但事實上,這些在Mandrake裡面統統都不是問題。
雖然這篇文章是以Mandrake 8.2為主,但是對於其他發行版應該也都可以適用,只要kernel版本是2.4.18,XFree86的版本是4.2.0就可以了。
一、 安裝Linux前的準備工作
因為在進行各種設定工作時,有許多地方還是得要仰仗Windows的幫助,因此最好一顆硬碟裡面能夠同時擁有Linux以及Windows 98作業系統。
比較值得注意的地方是,Mandrake在安裝過程中,如果找不到硬體清單支援的類型,就會使用XFree86 3.3.6的版本去進行顯示卡的驅動。然而NVIDIA所提供的官方驅動程式卻只支援XFree86 4.2.0以上的版本,因此我們得要先將Mandrake重新導向,讓它使用XFree86 4.2.0為止。
為什麼這裡一直強調NVIDIA的3D加速卡,是因為只有NVIDIA提供最好的驅動程式,擁有極佳的GLX函式庫支援,凡是完全使用GLX函式庫開發的應用程式,例如Quake3for Linux,都可以順利執行,而且效能甚至強過在Windows環境下執行。因為一般的3D加速卡大多針對Windows的DirectX函式庫加強效能,因此在Linux的環境下表現得就不如預期。
GLX函式庫,因為是開放原始碼的標準,因此也稱做Open GL。它跟DirectX究竟有什麼不同?這部份的討論比較專業,以後有機會再談。簡單地說,GLX函式庫是一個根據工業標準所制定出來的,擁有極佳的動態光影效果,甚至星際大戰二部曲的電腦動畫,就是用Linux做出來的,而不像DirectX只有固定不變的假光源。因此有許多專業級的電腦繪圖工作室,如果不是使用i-Mac,就是使用Linux。DirectX之所以成為主流,只因為GLX對硬體的需求很嚴苛,一個完全以GLX繪圖函式庫製作的電腦遊戲,例如明年即將推出的毀滅戰士Ⅲ(Doom3),沒有AMD XP-1800+搭配GeFroece3以上等級的電腦是跑不起來的。
當然XFree86對於顯示卡的支援度也已經很廣泛了,只是目前只支援到GeForce3,凡是在GeForce3以前的顯示卡都不支援,包括Radeon 8500等。但是目前市場上的高階主流顯示卡,已經慢慢從Radeon 8500變成GeForce4 Ti-4200,但是Linux卻找不到最新的GeForce顯示晶片,因此使用Ti-4200的人,在安裝過程進行到設定X環境的時候,就會找到一張unlisted的顯示卡。
這時使用者就必須手動選擇別的顯示卡,例如到NVIDIA類別選擇GeForceⅢ,按下確定之後,程式會問你要使用那個版本的XFree86,記得選擇4.2.0的版本,並且“不要”進行測試,一定不會通過的,只要選擇離開,並且儲存變更的結果就行了。
程式接著會問你要不要啟動Linux之後就進入X-Window,千萬不可以,因為一定不可能進得去X-Window的。
那麼開機之後只能進入console模式,但是顯示卡的Linux驅動程式又要從網路上下載,因此得用別台電腦上網下載,存在磁片裡或光碟裡。或是在本身的硬碟裡保留Windows作業系統,用Windows開機下載後,再重新開機進入Linux,並且到/mnt/windows這個資料夾裡面就可以找得到了。
因為在Linux有些純文字的組態設定必須要修改,因此使用者必須了解vi的用法。當然Linux有許多純文字編輯器可以選擇,但vi依然是最簡潔的一個,只是指令比較難記。簡單介紹一下:一開始進入vi是命令模式,不能編輯。使用者得先按下 “a” 才能開始編輯,完成後記得按下 “ESC” 回到命令模式,輸入 “:wq” 之後就可以存檔並離開了。( w 就是 “write”,q 就是 “quit”)
對新手來說,如果不知該如何選擇套件的話,請儘量勾選所有的工作平台,伺服器平台則可以不用,並且不選擇單一套件,使用系統預設的套件即可。
二、 驅動NVIDIA 3D加速卡
首先我們得先到NVIDIA的官方網站:http://www.nvidia.com去下載驅動程式。因為所有的NVIDIA產品都是按照公版的線路圖去設計的,因此不論是那家廠商生產的都能使用NVIDIA官方提供的驅動程式。面對這麼多類型的驅動程式該如何選擇?以Mandrake 8.2來說,需下載下列兩個rpm:
NVIDIA_GLX-1.0-3123.i386.rpm
NVIDIA_kernel-1.0-3123.mdk82up.i586.rpm
不論是任何發行版的Linux,所需的GLX都是同一個版本,至於kernel的版本就比較多,其中up是給一般的發行版使用,smp則是雙CPU的系統,如果不知該如何選擇,可以下載NVchooser.sh,在console模式下執行:
./NVchooser.sh
這個程式會告訴你該下載那些版本的驅動程式。
接著執行:
rpm -ivh NVIDIA_kernel-1.0-2960.mdk82up.i586.rpm
rpm -ivh NVIDIA_GLX-1.0-2960.i386.rpm
也許會出現一些警告訊息,不會影響到安裝,但也可以先拿記事本記下,若無法安裝驅動程式,到網站上發問時記得將錯誤訊息post出來。安裝完成之後,執行:
vi /etc/X11/XF86Config-4
修改XF86Config-4這個純文字檔案,尋找 "Module" 區段,增加一行:
Load "glx"
若有以下兩行,請刪除:
Load "dri"
Load "GLcore"
接下來尋找 "Device" 區段,凡是有任何一行是如下形式的:
Driver "xxxxx"
一律改成:
Driver "nvidia"
全部改完之後重新啟動電腦,執行startx進入X-window,如果有看到NVIDIA的Logo,那麼恭喜你,安裝已經成功了!
如果沒看到,那麼X-Window使用的可能不是XFree86 4.2.0版本。進入/var/log這個資料夾,若有看到XFree86.0.log這個檔案,那麼就應該沒有問題才對,如果沒有這個檔案,X-Window使用的可能是舊版的XFree86。
對於沒有辦法使用rpm安裝的發行版,官方網頁也有tar格式的檔案可以用,裡頭是驅動程式的原始碼,需自行編譯。編譯的手續也很簡單,解壓縮之後再make就行了。
不過要注意的是,使用Mandrake 9.0 beta3版本的人,因為NVIDIA的官方驅動程式,有個函式庫檔案無法被Linux的核心所接受,因此無法安裝。唯一的解決方法就是修改驅動程式的原始碼再編譯,不然就是等新的官方驅動程式的推出了。
假定現在順利進入了X-Window,使用USB光學滑鼠的人可能會出現一些問題,解決方法就是修改/etc/modules這個純文字檔案,在console環境下執行:
vi /etc/modules
新增一行:
hid
存檔之後重新開機,再進入X-Window問題應該就解決了。
若想使用NVIDIA提供的 GLX 函式庫來設計 3D 電腦繪圖程式,請將下列檔案:
/usr/share/doc/NVIDIA_GLX-1.0/include/GL
複製到:
/usr/include/GL
對於GLX原始碼有興趣的人,也可以到官方網頁去下載相關檔案。關於顯示卡其餘的設定,請參考下列說明檔:
/usr/share/doc/NVIDIA_GLX-1.0.
迫不及待想測試看看3D加速卡的效能嗎?到id software的官方網頁,或是http://toget.pchome.com.tw去下載Quake3Arena for Linux 測試版,這是rpm格式的檔案。安裝完成之後,需要在X-Window環境下,執行Gnome Terminal或是Kterm去執行Quake3。安裝程式並不會設定捷徑,使用者需自設,可執行檔所在的預設路徑是 /usr/local/games/q3test/linuxquake3。
若想要訂購雷神之槌Ⅲ完整版,可以到http://www.tuxgames.com/,售價因為要加上運費,可能會比較貴一點就是了。附帶一提,這個網站也可以預先訂購明年即將上市的毀滅戰士Ⅲ(DOOM3)Linux版哦!
三、X-Window下的多媒體娛樂
KDE桌面環境下可以聽CD,也可以看VCD,這是沒有問題的。若想以數位的方式播放音樂,也可以將CD轉成MP3格式。目前最新的編譯核心是LAME 3.92,使用者可以用Windows將CD音軌轉成MP3,若要在Linux下執行MP3的轉檔動作,可以到http://www.mp3dev.org/mp3/去下載LAME MP3的原始碼,自行編譯成WAV->MP3轉檔程式。在http://toget.pchome.com.tw可以下載Linux環境下的CD音軌抓取程式,抓到硬碟成WAV檔之後再轉換。
如果想看DVD,因為版權的問題,所以在KDE的環境下並沒有播放DVD的軟體。然而現在有了Mpeg-4,就再也不是問題了。
請到官方網頁http://www.divx.com去下載Linux專屬的Mpeg-4工具。下列兩個檔案是必需要的:
divx4linux501-20020418.tgz <-這是Mpeg-4的解編譯器
divx-player-installer.tar.gz <-這是Linux環境下的Mpeeg-4播放程式
在KDE的環境下,使用檔案總管點選這兩個壓縮檔案就可以開啟它們,就像是在WinME或是WinXP那樣的用法。KDE處理Linux專屬的壓縮格式相當有效率,一下子就可以開出來,也絕對不會像Windows那樣,碰到比較大的壓縮檔就死當在那邊。
將divx4linux501-20020418.tgz壓縮檔的內容copy出來,執行Gnome Terminal,切換到Div-X安裝程式所在的目錄,執行:
./install.sh
程式將會安裝Div-X的解編譯器,安裝過程不會出現任何文字,等到出現系統提示符號就代表安裝完成。接著安裝Div-X的播放程式,同樣的步驟,解壓縮之後執行:
./install
安裝過程會詢問一些問題,使用預設值就可以了。
安裝完成之後,使用者可以到/usr/bin/去執行divxplayer,或是開啟Gnome Terminal,輸入divxplayer執行。所有的操作介面完全跟Windows環境一模一樣,因此使用起來應該是不會有任何問題才對。
由於Linux並沒有製作Mpeg-4影音檔的工具,因此得要在Windows環境下製作。如何將DVD製成Mpeg-4格式的影音檔,因為不在本文的討論範圍,以後有機會再來談。
Mpeg-4也可以有5.1聲道音效,但是目前只有CMI8738晶片有提供完整的Linux驅動程式,可以在Linux環境下提供5.1聲道的效果。但是經過試驗的結果,不論怎麼樣,C-Media都只能提供到4.1聲道的效果。這是因為在5.1聲道裡面的中央聲道,其實是用模擬的方式,將兩個前方聲道同屬中央部份的音頻抓出來而已,由於模擬的方式是採用Windows內建的DirectX函式庫去呼叫,因此在Linux環境裡面就沒有辦法提供中央聲道。
其實中央聲道原本就可以不必要,換個角度來看,同價位的4.1聲道喇叭一定可以提供比5.1聲道更好的音質,畢竟喇叭是一分錢一分貨的東西。
C-Media也可以提供A3D 1.0的3D定位技術,也有EAX環境模擬效果,但是在Linux環境下是沒有EAX的。因為EAX是Creative公司專門為了DirectX函式庫所量身訂做的標準,這也是為什麼所有聲霸卡系列產品都沒有官方所提供的Linux驅動程式的緣故。雖然如此,Linux也內建了完整的聲霸卡系列產品驅動程式,但最多都只能有立體聲效果而已,既沒有多聲道,也沒有EAX。
同樣的道理,Creative公司所生產的旗艦級產品Audigy,也沒有辦法在Linux環境下提供Advanced EAX技術。不過這種技術向來就是應用在game的領域裡面的,不喜歡玩game的人也不會在意這一點。對於喜歡玩game的人來說也不用傷心,明年計畫推出的毀滅戰士Ⅲ(DOOM3),為了能夠在Linux環境下執行,既不打算支援DirectX 3D函式庫,也不會支援EAX技術。為了提供極佳的光影效果,毀滅戰士Ⅲ(DOOM3)將會採用GLX繪圖函式庫,以及5.1聲道的3D定位技術。
如果有人問我,C-Media晶片是那家公司製作的?採用C-Media 8738音效晶片的音效卡要去那裡找?其實主機板內建的音效晶片,大多就是採用C-Media 8738晶片的。由驊訊電子所製造,這是台灣自己的公司唷!目前這款晶片不但在台灣市場有極高的佔有率,而且在國外也有產品上市!
內建有C-Media 8738音效晶片的主機板製造商:
ASUS 華碩電腦
A-WinR 奇致科技
Chaintech 承啟科技
ECS 精英電腦
Epox 磐英科技
Gigabyte 技嘉科技
Iwill 艾崴(股)
Jetway 捷波資訊
Microstar 微星科技
PCChips 鑫明
Shuttle 浩鑫(股)
SOYO 梅捷企業
內建有C-Media 8738音效晶片的音效卡:
新眾 SC3000L Theater Live 5.1 (no S/PDIF)
瑞麗夏之戀
麗臺 WinFast 6Xsound
啟亨嗆紅辣椒 5.1
頂堅 Live 6ch 光纖天音卡
四、關於中文環境
這一節分成三個部份來解說:首先是KDE桌面選單亂碼的解決問題,以及如何設定KDE環境,使得字型看來更美觀。再來是討論xcin中文輸入,最後是辦公室軟體,以及Netscape下的中文環境。
KDE的預設字型fixed-16,並不是很漂亮,而且還會有選單亂碼出現的問題。解決辦法也很簡單,首先下載修正檔案:
http://mdk.linux.org.tw/~kenduest/po/menu-messages.mo
接著以root登入console,切換到menu-messages.mo所在的位置,執行:
cp menu-messages.mo usr/share/locale/zh_TW/LC_MESSAGES/menu-messages.mo
這個指令會usr/share/locale/zh_TW/LC_MESSAGES/menu-messages.mo這個檔案覆蓋掉,按下y確定覆蓋之後,再執行:
update-menu
重新開機之後再進入X-Window,亂碼問題應該就會被解決了。如果沒有,再執行一次update-menu指令應該就可以了。
如何調整字型:
從KDE的「選單->設定->KDE->外觀和感覺」,在這個項目裡面可以設定圖示、字型、桌面,將所有的字型都從預設的fixed改為ming字型,其他的設定則是看自己的喜好,這樣就會很漂亮了。
如果還是不滿意,就從「Mandrake 控制中心」去設定「字型」這個項目,選擇「載入 Windows 字型」,就可以使用所有的Windows英文字型了!不過前提是硬碟裡必需同時有Windows分區,而且只能載入英文字型。在這個控制中心也可以設定是否要在下一次開機的時候進入X-Window,關於詳細的控制中心設定是非常重要的,下次有機會再談。
如果覺得KDE預設的Konqueror瀏覽器字型不漂亮,「選單->設定->KDE->檔案瀏覽->檔案管理員」可以設定檔案總管的各種設定。使用者也可以使用 「鸚鵡螺」(Nautilus)這個超豪華的檔案總管,只是不能顯示中文字。
如何在XCIN環境下使用無蝦米?首先我們必須準備一份無蝦米的表格檔,副檔名是.cin,也就是無蝦米輸入法的定義。我們必需修改其中的內容,因為原始內容不合xcin的格式。不論表格檔的內容為何,請改為如下所示:
#########################################################################
# Boshiamy Input Method 5.0. All rights reserved. 8/1/1997 Stingray
#########################################################################
%gen_inp
%ename liu5
%cname 無蝦米
%selkey 1234567890
%keyname begin
a A
b B
c C
d D
e E
f F
g G
h H
i I
j J
k K
l L
m M
n N
o O
p P
q Q
r R
s S
t T
u U
v V
w W
x X
y Y
z Z
, ,
. .
' ’
[ 〔
] 〔
%keyname end
%chardef begin
a 對
aa 寸
aaa 鑫
aaa 龘
//以下內容因為智慧財產權的問題,不能 po 上來。
要特別注意的是,無蝦米的表格檔在最後一行有一小段字串:
%charddef end
這一段字串必須刪除,改好之後存檔,假設檔名為liu5.cin。注意必須要使用KDE所附的文字處理器,使用任何Windows所附的文字處理器,即使是DOS之下的edit也是一樣,會在每個字串後面插入一個辨識字元,這會影響到轉檔工作的進行。修成完成之後,要轉換檔案,執行:
cin2tab liu5.cin liu5.tab
之後將轉換過的liu5.tab複製到下面的資料夾:
cp liu5.tab /usr/X11R6/lib/X11/xcin/tab/big5
最後我們還必須修改xcin的資源設定檔xcinrc,在下面這個路徑:
/etc/chinese/xcin/xcinrc
下列是xcinrc檔內容的詳細解說:
;
; Xcin resource file for GNU/Linux //以分號開頭的行為註解,可以忽略。
;
; By T.H.Hsieh.
;
;
; Directories.
;
(define XCIN_DEFAULT_DIR "/usr/X11R6/lib/X11/xcin") //這是xcin所在的位置
(define XCIN_USER_DIR ".xcin")
;
; This defines GUI attribute. //以下的區段定義視窗介面的外觀
;
(define INDEX_FONT "-sony-*-16-*-iso8859-1")
(define FG_COLOR "white")
(define BG_COLOR "blue")
(define M_FG_COLOR "yellow")
(define M_BG_COLOR "darkred")
(define ULINE_COLOR "cyan")
(define GRID_COLOR "white")
(define X_GEOMETRY "45x2+200-1")
(define START_MAINWIN2 "YES")
(define MAINWIN2_GEOMETRY "27x1+200-1")
(define XCIN_HIDE "YES")
(define XKILL_DISABLE "NO")
(define ICCHECK_DISABLE "NO")
(define SINGLE_IM_CONTEXT "NO")
(define IM_FOCUS_ON "NO")
(define KEEP_POSITION_ON "NO")
(define DISABLE_WM_CTRL "NO")
(define DIFF_BEEP "NO")
//下面這一行為輸入法的區域,zh_TW為台灣地區的輸入法,其他都是中國大陸地區。
(define LOCALE '(zh_TW.Big5 zh_HK.Big5HKSCS zh_CN.GB2312 zh_CN.GBK))
;
; XIM Input Style Adjustments.
;
(define INPUT_STYLE '(Root OverTheSpot))
//上面這一行視窗的樣式,Root為固定式,OverTheSpot為浮動式。
(define OVERSPOT_USE_USRCOLOR "YES")
(define OVERSPOT_USE_USRFONTSET "YES")
(define OVERSPOT_WINDOW_ONLY "YES")
;
; Special Trigger Keys.
;
;(define FKEY_ZHEN "ctrl space")
;(define FKEY_2BSB "shift space")
;(define FKEY_CIRIM "ctrl shift")
;(define FKEY_CIRRIM "shift ctrl")
;(define FKEY_CHREP "ctrl alt r")
;(define FKEY_SIMD "ctrl alt i")
;(define FKEY_IMFOCUS "ctrl alt f")
;(define FKEY_IMN "ctrl alt")
;(define FKEY_QPHRASE "shift alt")
;
; IM module default resources.
;
(define gen_inp_default //這一段定義輸入法的功能,儘量使用預設值即可。
'((AUTO_COMPOSE YES)
(AUTO_UPCHAR YES)
(AUTO_FULLUP NO)
(SPACE_AUTOUP NO)
(SELKEY_SHIFT NO)
(SPACE_IGNORE NO)
(SPACE_RESET YES)
(AUTO_RESET NO)
(WILD_ENABLE YES)
(SINMD_IN_LINE1 NO)
(END_KEY NO)
(QPHRASE_MODE 0) ; 1:shift, 2:ctrl, 4:alt, 8:fallback
(DISABLE_SEL_LIST "NONE")
(KEYSTROKE_REMAP "NONE")
(BEEP_WRONG YES)
(BEEP_DUPCHAR NO)))
(define bimsphone_default //這是詞音輸入法的設定值,詞音輸入法為類似新注音的輸入法
'((N_SELECTION_KEY 9)
(SELECTION_KEYS 0) ; 0: "1234567890", 1: "asdfgjkl;"
(PAGE_KEYS 5) ; 1:<> 2:,. 4Rt)(Lt)
(QPHRASE_MODE 1) ; 1:shift, 2:ctrl, 4:alt, 8:fallback
;
; This is only valid for "bimsphone*" IM name.
(AUTO_SELECTION YES)
(KEYMAP 0) ; 0:zozy, 1:et, 2:et26, 3:hsu
;
; This is only valid for "bimspinyin*" IM name.
(PINPHO_MAP "bims_pinyin")
;
; The following has effect only when AUTO_SELECTION is YES
(TSI_FNAME "tsi.db")
(YIN_FNAME "yin.db")
(SPACE_SELECTION NO)
(PHRASE_SELECTION YES)
(N_SELECTION_PHR 4)
;
; The following has effect only when AUTO_SELECTION is NO
(AUTO_UPCHAR YES)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; This is the global configuration of the zh_TW.Big5 locale //這個區段定義台灣地區各種輸入法
;
(define zh_TW.Big5
'((DEFAULT_IM "bimsphone") //預設的輸入法
(DEFAULT_IM_MODULE "gen_inp")
(DEFAULT_IM_SINMD "DEFAULT") //選擇要顯示出來的組字字根
(PHRASE "default.phr")
(CINPUT (cj chewing simplex phone bimspinyin bimsphone jyutping
array30 bimsphonesimple zh_hex)) //所有可用的輸入法
(FONTSET "-schumacher-clean-medium-r-normal--16-160-75-75-c-80-iso8859-1,-default-ming-medium-r-normal--16-*-*-*-c-*-big5-0,*")
(OVERSPOT_FONTSET "-schumacher-clean-medium-r-normal--16-160-75-75-c-80-iso8859-1,-default-ming-medium-r-normal--16-*-*-*-c-*-big5-0,*")))
;
; Here are detailed configuration of each IM (for zh_TW.Big5 locale).
;
(define cj@big5 //這一段是倉頡輸入法的定義
'((SETKEY 1))) //組合鍵的設定,按下「ctrl+alt+1」就會出現倉頡輸入法
(define simplex@big5
'((SETKEY 2)))
(define phone@big5 //這一段是注音輸入法的定義
'((SETKEY 3)
(END_KEY YES)
(BEEP_DUPCHAR YES)))
(define jyutping@big5
'((SETKEY 4)
(END_KEY YES)
(BEEP_DUPCHAR YES)))
(define bimspinyin@big5
'((SETKEY 5)
(MODULE "bimsphone")))
(define bimsphone@big5
'((SETKEY 6)
(MODULE "bimsphone")))
(define array30@big5
'((SETKEY
(BEEP_DUPCHAR YES)
(DISABLE_SEL_LIST "w")
(KEYSTROKE_REMAP "t:0xaaba;")))
(define bimsphonesimple@big5
'((SETKEY 11)
(INP_CNAME "傳統注音%%注音")
(AUTO_SELECTION NO)
(BEEP_WRONG YES)
(MODULE "bimsphone")))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; This is the global configuration of the zh_CN.GB2312 locale
;
(define zh_CN.GB2312
'((DEFAULT_IM "pinyin")
(DEFAULT_IM_MODULE "gen_inp")
(DEFAULT_IM_SINMD "DEFAULT")
(PHRASE "default.phr")
(CINPUT (pinyin shuangpin jtcj_gb wubizixing phonegb2 zh_hex))
(FONTSET "-schumacher-clean-medium-r-normal--16-160-75-75-c-80-iso8859-1,-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0,*")
(OVERSPOT_FONTSET "-schumacher-clean-medium-r-normal--16-160-75-75-c-80-iso8859-1,-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0,*")))
;
; Here are detailed configuration of each IM (for zh_CN.GB2312 locale).
;
(define pinyin@gb2312
'((SETKEY 1)
(BEEP_DUPCHAR YES)))
(define shuangpin@gb2312
'((SETKEY 2)
(BEEP_DUPCHAR YES)))
(define jtcj_gb@gb2312
'((SETKEY 3)))
(define wubizixing@gb2312
'((SETKEY 5)))
(define phonegb2@gb2312
'((SETKEY 9)
(END_KEY YES)
(BEEP_WRONG YES)
(BEEP_DUPCHAR NO)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; This is the global configuration of the zh_HK.Big5HKSCS locale
;
(define zh_HK.Big5HKSCS
'((DEFAULT_IM "cj")
(DEFAULT_IM_MODULE "gen_inp")
(DEFAULT_IM_SINMD "DEFAULT")
(PHRASE "default.phr")
(CINPUT (cj chewing zh_hex))
(FONTSET "-sony-*-24-*-iso8859-1,-*-24-*-big5hkscs-0")
(OVERSPOT_FONTSET "NONE")))
;
; Here are detailed configuration of each IM (for zh_CN.GB2312 locale).
;
(define cj@big5hkscs
'((SETKEY 1)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; This is the global configuration of the zh_CN.GBK locale
;
(define zh_CN.GBK
'((DEFAULT_IM "zh_hex")
(DEFAULT_IM_MODULE "gen_inp")
(DEFAULT_IM_SINMD "DEFAULT")
(PHRASE "default.phr")
(CINPUT (zh_hex))
(FONTSET "-sony-*-24-*-iso8859-1,-*-24-*-gbk-0")
(OVERSPOT_FONTSET "NONE")))
;
; The zh_hex module (zh_hex input method) is a special IM, which can be
; used in many different encodings.
;
(define zh_hex
'((SETKEY 0)
(MODULE zh_hex)
(INP_CNAME_big5 "0xa4ba+0xbd58")
(INP_CNAME_big5hkscs "0xa4ba+0xbd58")
(INP_CNAME_gb2312 "0xc4da+0xc2eb")
(INP_CNAME_gbk "0xc4da+0xc2eb")
(BEEP_WRONG YES)))
(define chewing@big5
'((SETKEY 7)
(KB_TYPE "KB_DEFAULT")
(MODULE "chewing")))
倘若我們要加入無蝦米輸入法,可以把原本的區段:
(define zh_TW.Big5
'((DEFAULT_IM "bimsphone") //預設的輸入法
(DEFAULT_IM_MODULE "gen_inp")
(DEFAULT_IM_SINMD "DEFAULT") //選擇要顯示出來的組字字根
(PHRASE "default.phr")
(CINPUT (cj chewing simplex phone bimspinyin bimsphone jyutping
array30 bimsphonesimple zh_hex))
改成下面這樣:
(define zh_TW.Big5
'((DEFAULT_IM "liu5") //預設的輸入法改為無蝦米
(DEFAULT_IM_MODULE "gen_inp")
(DEFAULT_IM_SINMD "DEFAULT") //選擇要顯示出來的組字字根
(PHRASE "default.phr")
(CINPUT (cj liu5 chewing simplex phone bimspinyin bimsphone jyutping
array30 bimsphonesimple zh_hex)) //記得在這裡加進liu5
若將(DEFAULT_IM_SINMD "DEFAULT")改成(DEFAULT_IM_SINMD "liu5"),則不論使用何種輸入法,都會出現無蝦米的組字字根。
另外還要加進無蝦米輸入法的定義:
(define liu5@big5
'((SETKEY 7) //組合鍵定為7,因為原始的xcin設定保留這個組合鍵給無蝦米用
(INP_CNAME "無蝦米%%無")
(AUTO_SELECTION YES)
(BEEP_WRONG YES)))
這樣一來就可以使用無蝦米了。在進階的修改法裡,還可以將所有不必要的敘述刪掉,下面這段內容,為精簡過的xcinrc設定值,只有注音和無蝦米,並且可以使用注音來查詢無蝦米組字字根。
(define XCIN_DEFAULT_DIR "/usr/X11R6/lib/X11/xcin")
(define XCIN_USER_DIR ".xcin")
(define INDEX_FONT "-sony-*-16-*-iso8859-1")
(define FG_COLOR "white")
(define BG_COLOR "blue")
(define M_FG_COLOR "yellow")
(define M_BG_COLOR "darkred")
(define ULINE_COLOR "cyan")
(define GRID_COLOR "white")
(define X_GEOMETRY "45x2+200-1")
(define START_MAINWIN2 "YES")
(define MAINWIN2_GEOMETRY "27x1+200-1")
(define XCIN_HIDE "YES")
(define XKILL_DISABLE "NO")
(define ICCHECK_DISABLE "NO")
(define SINGLE_IM_CONTEXT "NO")
(define IM_FOCUS_ON "NO")
(define KEEP_POSITION_ON "NO")
(define DISABLE_WM_CTRL "NO")
(define DIFF_BEEP "NO")
(define LOCALE '(zh_TW.Big5))
(define INPUT_STYLE '(Root OverTheSpot))
(define OVERSPOT_USE_USRCOLOR "YES")
(define OVERSPOT_USE_USRFONTSET "YES")
(define OVERSPOT_WINDOW_ONLY "YES")
(define gen_inp_default
'((AUTO_COMPOSE YES)
(AUTO_UPCHAR YES)
(AUTO_FULLUP NO)
(SPACE_AUTOUP NO)
(SELKEY_SHIFT NO)
(SPACE_IGNORE NO)
(SPACE_RESET YES)
(AUTO_RESET NO)
(WILD_ENABLE YES)
(SINMD_IN_LINE1 NO)
(END_KEY NO)
(QPHRASE_MODE 0) ; 1:shift, 2:ctrl, 4:alt, 8:fallback
(DISABLE_SEL_LIST "NONE")
(KEYSTROKE_REMAP "NONE")
(BEEP_WRONG YES)
(BEEP_DUPCHAR NO)))
(define zh_TW.Big5
'((DEFAULT_IM "liu5")
(DEFAULT_IM_MODULE "gen_inp")
(DEFAULT_IM_SINMD "liu5")
(PHRASE "default.phr")
(CINPUT (liu5 phone))
(FONTSET "-schumacher-clean-medium-r-normal--16-160-75-75-c-80-iso8859-1,-default-ming-medium-r-normal--16-*-*-*-c-*-big5-0,*")
(OVERSPOT_FONTSET "-schumacher-clean-medium-r-normal--16-160-75-75-c-80-iso8859-1,-default-ming-medium-r-normal--16-*-*-*-c-*-big5-0,*")))
(define liu5@big5
'((SETKEY 1)
(INP_CNAME "無蝦米%%無")
(AUTO_SELECTION YES)
(BEEP_WRONG YES)))
(define phone@big5
'((SETKEY 2)
(END_KEY YES)
(BEEP_DUPCHAR NO)))
另外在注音輸入法的設定值裡面,最後一行(BEEP_DUPCHAR NO)設定在選字時不發出嗶聲。網路上有網友詢問要如何消除注音輸入法的嗶聲,因為嗶聲在預設值裡面是開啟的,所以要自行修改。
Mandrake 8.2另外還有一個特點,就是在Gnome Terminal裡面不但可以輸入中文,而且可以處理包含中文的檔案,當然也包括使用中文檔名。例如grep這個指令也可以搜尋檔案中的中文字串而沒有問題。
Linux還有一套非常好用的,不輸給微軟的Office的辦公室軟體:Open Office,可以在交通大學的FTP伺服器下載:
ftp.nctu.edu.tw
Open這個字代表的是開放源始碼的意思,Open Office所採用的原始碼來自昇陽,也就是Sun Microsystem。原本的產品為Star Office 6.0,後來因為版權的問題改名為Star Suit 6.0。自從昇陽公司開放原始碼之後,Linux就有免費的辦公室軟體可以用了。
也許有人認為開放原始碼並不能獲得商業利益,但事實上,所有的原始碼開放之後,都由自由軟體基金會統一負責維護,並不代表說開放了原始碼,使用者就可以無限制地使用它。開放原始碼並不代表放棄智慧財產權,任何人都可以拿這套原始碼修改之後自行使用,也可以公開,但條件是修改過後的原始碼必須要公開。而昇陽公司可以從別人修改過的原始碼來加強自己本身產品的功能,並且拿來販售。
也可以這麼說,自由軟體發展背後最大的動力來源是全世界的社群,而不是像微軟一樣,藉由龐大的商業利益來支撐自身產品的發展。
當然,自由軟體當初成立的目的,並不是因為免費,而是為了推動軟體技術的進步。微軟採取封閉原始碼的政策,使得每年產品的更新都只能依賴微軟。一般人不可能會碰觸到所謂的原始碼,當然一般人也不是每個都是軟體工程師,不會也沒有必要去碰觸原始碼。因此微軟的政策究竟是好還是壞,是見仁見智的問題。很明顯的,對於一般的使用者來說,微軟的產品還是他們最好的選擇。
另一個開放原始碼的產品是Netscape。因為微軟的強力競爭,使得Netscape不得不轉向自由軟體去發展,委託自由軟體基金會來幫助他們進行維護的工作,可以節省不少軟體開發的成本。目前已經有最新版本的Netscape Navigator 7.0可以自網路上下載試用,不過目前Linux版本最新只到6.2。
Netscape只有一種預設字型,就是Mandrake預設的fixed-16,相當地不好看。但是我們只要下面的檔案裡:
/usr/X11R6/lib/X11/app-defaults/Netscape
加進新的一行敘述:
*documentFonts.charset*big5.eten.3.10-1: x-x-big5
如此 Netscape 就能夠使用其他的字型了。
至於另外一個最常被討論到的Jmcce,因為在X-Window環境下的Gnome Terminal已經可以用xcin正確輸入並顯示中文了,因此就沒有必要用到,除非真的無法進入X-Window。網路上有人使用Gnome Terminal輸入中文,卻出現亂碼,因為我沒有同樣的問題,所以也許是因為安裝的過程中少了一些套件。
最後是列印中文的問題,Open Office已經可以正確印出中文,如果是堅持在純console模式下列印,需轉成Post-Script格式,但無法支援TTF字型。這當然也沒有必要,除非真的進不去X-Window。
關於Open Office或是Star Suit 6.0 的安裝與使用,下次有機會再談!
如有转贴可与原作者联系 可在www.linux.org.tw 的论坛中发贴联系 |
|