第十一章 X Window 的使用

在 UNIX 的世界中,一樣有圖形化的介面可以使用。本章將介紹 UNIX 中最有名的視窗軟體:X Window。X Window 提供了 FreeBSD 圖形化的介面,但它只提供了圖形化的能力,我們還必須另外安裝一些常用的圖形化程式及工具。讀完本章後,您將了解下列主題:

11.1 安裝 X Window

X11 是在 UNIX 系統下的視窗軟體,它分為二種版本,一個是原本 FreeBSD 5.2.1 以前用的 XFree86,另一個是 FreeBSD 5.3 以後預設使用的 Xorg。

原本的 X11 是以 XFree86 為主,但最近由於版權爭議及管理問題,分裂成二套軟體。事實上,Xorg 也發展了很久,許多 Xorg 的人都是 XFree86 的開發者。在近期分裂時,Xorg 及 XFree86 的原始碼做過同步,日後的開發才會有比較明顯的差異。您可以選用 Xorg 或是 XFree86,不過 FreeBSD 預設是用 Xorg,而像 Redhat Linux 也都是使用 Xorg。照趨勢及 Xorg 的開發願景看來,似乎較多人會選用 Xorg。

我們在本章中會以 Xorg 設定為主,如果您使用 FreeBSD 5.2.1 以前的版本,您可以參考本章的設定,並將指令或設定名為 Xorg 的都改成 XFree86 即可。

X11 是一個 Client/Server 架構的軟體,之所以會是 Client/Server 架構是因為在一開始設計 X 時,為了做到網路集中管理。「X Server」指的是有滑鼠及鍵盤的機器,而「X Client」是畫面顯示的機器。不過我們在安裝時,會將 Client 及 Server 都安裝在同一台機器上。

X11 只是用來做基本的圖形顯示,我們除了介紹安裝 X11 外,另外我們會再加裝視窗管理軟體,如果沒有了它,X Windows 就只能看到白白一片。在眾多的視窗管理軟體中,我們選用 KDE,因為它提供了很多常用的工具,例如瀏覽器、Office 軟體等。因此,我們將安裝 X Windows + KDE 3 及並將其介面中文化。當然您也可以選用 GNOME 等其它的視窗管理介面。

您可以使用 port 來安裝 X Window 及 KDE 3,但是必須花費很長的一段時間來進行編譯。為了加快安裝,我們使用 sysinstall 經由 packages 來快速安裝。

Step1:安裝X Window

在安裝 FreeBSD 時,我們應該己經選擇要安裝 X Windows 套件,如果您安裝 FreeBSD 時並未安裝該套件,您可以在開機後執行 sysinstall 來進入安裝時的選單。進入安裝畫面後,選擇 [Configure]->[Distributions]->[X.Org],如圖 11-1 所示。

圖 11-1

接下來會出現一個選單讓您選擇所要安裝的 X.Org 套件,如圖 11-2 所示,請進入每一個目錄選取 ALL。

圖 11-2

接著選擇 [EXIT] 回到選擇安裝來源。因為 X Window 已包含在 Installation CD 中,所以您可以選擇 CD/DVD 為安裝來源並放入本書所附的第一片 CD即可開始安裝 X Window。

Step2:安裝KDE 3

我們可以使用 Package 或 Ports 來安裝 KDE,但是由於 Package 只會在 FreeBSD release 時產生,如果您之前有更新過 Port Tree,並安裝過很多軟體,則在使用 Package 安裝 KDE 時,可能會發生無法安裝的情形。而如果使用 Ports 來安裝,光編譯可能就要花很長的時間喔,大概要一、二天吧。所以,我們先試著使用 Package 來安裝,以節省時間。

首先,請先將本書的第二片光碟放入光碟機,並執行下列指令,以掛入光碟機,並進入 sysinstall

# mount /cdrom
# sysinstall

進入 sysinstall 後,請選擇 [Configure] -> [Packages] -> [CD/DVD] -> [kde] -> [kde-3.4.2]。選了 kde-3.4.2 後,系統會自動幫您選擇其它需要的套件。接下來就可以按 OK 並回到上一頁按 [Install] 開始安裝。

萬一您安裝失敗,可能是因為之前有安裝過其它軟體,造成衝突。這時候,我們可以改用 Port 來安裝 KDE。如果您要使用 Port 安裝,請使用下列指令:

# cd /usr/ports/x11/kde3
# make BATCH=yes WITH_KDE_PATCHES=yes install

在使用 Ports 安裝時,您可能會遇到有軟體安裝過其它類似的版本,結果就造成安裝中斷。這時候,您可以在 make 時,加上 「FORCE_PKG_REGISTER=y」,以強迫安裝。

Step3:安裝中文化字型

接著我們要讓 KDE 支援中文的選單及訊息,我們必須先安裝中文訊息檔 (i18n):

# cd /usr/ports/chinese/kde3-i18n-zh_TW
# make install clean

接下來,我們要安裝中文字型。XWindow 支援 TrueType 的字型,而在 MS Windows 上,我們常使用的細明體就是 TrueType 的字型。因此,您可以支接將「C:\WINDOWS\Fonts\mingliu.ttc」複製到 FreeBSD 的「/usr/X11R6/lib/X11/fonts/TrueType」 目錄中即可使用:

# mkdir /usr/X11R6/lib/X11/fonts/TrueType
# cp mingliu.ttc /usr/X11R6/lib/X11/fonts/TrueType/

由於 mingliu.ttc 中實際上包含了二個字型:細明體及新細明體。KDE 在判斷字型寬度及大小時有點問題,造成字型有點難看,所以,我們必須編輯 ~/.fonts.conf,並加入下列內容,以改善字型:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
    <match target="font">
        <test name="family"><string>MingLiU</string></test>
        <edit name="antialias"><bool>true</bool></edit>
        <edit name="hinting"><bool>true</bool></edit>
        <edit name="autohint"><bool>false</bool></edit>
    </match>
    <match target="font">
        <test name="family"><string>MingLiU</string></test>
        <test name="size" compare="less_eq"><int>12</int></test>
        <edit name="antialias" mode="assign"><bool>false</bool></edit>
        <edit name="hinting" mode="assign"><bool>true</bool></edit>
    </match>
    <match target="font">
        <test name="family"><string>MingLiU</string></test>
        <edit name="globaladvance"><bool>false</bool></edit>
    </match>
    <match target="font">
        <test name="family"><string>MingLiU</string></test>
        <edit name="spacing"><int>0</int></edit>
    </match>
</fontconfig>

您可以在直接打開本書電子檔,並使用複製貼上的方式來編輯上列檔案,以節省時間。

Step4:產生設定檔

我們接著要執行 Xorg -configure 來產生設定檔 XF86Config.new,然後將它搬到 /etc/X11/:

# Xorg -configure
# cp /root/xorg.conf.new /etc/X11/xorg.conf

接著編輯 /etc/X11/xorg.conf,在 FontPath 區段最前面加入 TrueType 及 local 二個路徑,以期使 X Window 能找到正確的字型路徑:

Section "Files"
       RgbPath      "/usr/X11R6/lib/X11/rgb"
       ModulePath   "/usr/X11R6/lib/modules"
       FontPath     "/usr/X11R6/lib/X11/fonts/TrueType/"
       FontPath     "/usr/X11R6/lib/X11/fonts/local/"
       FontPath     "/usr/X11R6/lib/X11/fonts/misc/"
       FontPath     "/usr/X11R6/lib/X11/fonts/TTF/"
       FontPath     "/usr/X11R6/lib/X11/fonts/Type1/"
       FontPath     "/usr/X11R6/lib/X11/fonts/CID/"
       FontPath     "/usr/X11R6/lib/X11/fonts/75dpi/"
       FontPath     "/usr/X11R6/lib/X11/fonts/100dpi/"
EndSection

如果您有滾輪滑鼠,您可以在下列「InputDevice」區段中加入「ZAxisMapping "4 5"」,以支援滾輪:

Section "InputDevice"
       Identifier  "Mouse0"
       Driver      "mouse"
       Option      "Protocol" "auto"
       Option      "Device" "/dev/sysmouse"
       Option      "ZAxisMapping" "4 5"
EndSection

接下來,我們來設定螢幕的解析度等。請先找到 Section "Monitor" 的部份,並查看 Identifier 那行已經找到您所使用的螢幕。如果有,您可以不必設定水平及垂直更新頻率。如果沒有,請參考您的螢幕使用手冊,並將 Horizsync(水平更新頻率) 及 VerRefresh(垂直更新頻率) 設定一個適合您的範圍。

Section "Monitor"
	Identifier "Monitor0"
	VendorName "Monitor Vendor"
	ModelName "Monitor Model"
	Horizsync 30-70
	VertRefresh 50-100

接著要設定螢幕的解析度,我希望以 16bit 色彩顯示,1024x768 而且不要虛擬桌面。則請先找到 Section "Screen" 的部份:

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	DefaultColorDepth 16
	SubSection "Display"
		Viewport   0 0
		Depth     1
	EndSubSection
	.......略...... 
	SubSection "Display"
		ViewPort 0 0
		Depth 16
		Modes "1024x768"
		Virtual 1024 768
	EndSubSection

我們加入了 DefaultColorDepth 16,表示內定以16 bit 的色彩顯示。接著找到 Depth 16 的部份,加入了 Modes 及 Virtual。這二行表示可以用 1024x768 的解析度、虛擬桌面為 1024x768。接著存檔離開。

Step 5:進入 X Window

為了一進入 X Window 即有 KDE 要先編輯 ~/.xinitrc 加入下列二行:

#!/bin/sh -
export LANG=zh_TW.Big5  # 設定使用中文
exec /usr/local/bin/startkde

接著我們就可以執行 startx 來進入 X Window 了。如果您找不到 startx 的指令,請先執行來 rehash 更新指令,再執行一次 startx

 進入 X Window 後,畫面會出現 KDE 的桌面設定選單,您只要依畫面提示即可完成 KDE 的安裝。設定完後,您就可以看到完整的 KDE 了:

圖 11-3

如果您在X Window中無法使用滑鼠,請先同時按 [Ctrl] + [Alt] + [Backspace] 離開 X Windows,再執行 sysinstall 來設定滑鼠 。設定滑鼠的位置在 [Configure]->[Mouse],先設定 [Type] 選擇滑鼠的類型,再選 [Enable] 讓一開機即驅動滑鼠。

進入 KDE 後,您可以在控制中心裡調整字型,建議您先將所有字型調為細明體 (MingLiu)。如果您要調整字型,請按畫面左下角的 K 圖示,並選擇「控制中心」,即出現下列畫面:

圖 11-4

調整後,請重新啟動 X Window。

在 KDE3 中有許多的附屬軟體,從簡單的文字編輯器、繪圖軟體,到常用的辦公室軟體、瀏覽器及郵件軟體都有。由於是圖形介面,您可以自行摸索嘗試。KDE 的瀏覽器是 Konqueror,它的使用介面和 IE 差不多,除了是網頁瀏覽器外,也結合了檔案總管的功能,下圖即 Konqueror 的畫面:

圖 11-5

您也許會發現 KDE 簡直可以和MS Windows 抗衡,它的辦公室軟體功能齊全,不論是 KWord、KExcel、KPowerPoint 都是威力強大的軟體。

圖 11-6

 

11.2 X Window下的中文軟體

11.2.1 中文終端機

KDE 所附的終端機 Konsole 已經支援中文的顯示,而且還有許多強大的功能。例如我們可以設定終端機背景、字型等,而且操作十分容易。只要您在 ~/.xinitrc 中有設定 LANG 為為 zh_TW.Big5 即可顯示中文。

圖 11.7

11.2.2 中文輸入

我們安裝的 X Window 目前為止只能看到中文,但無法使用中文輸入,如果要使用中文輸入,必須安裝 Xcin 這套軟體。xcin 是 X Chinese Input 的縮寫,這個軟體提供許多輸入法,例如注音、大易、倉頡、簡易、酷音、行列等。他們的網址是 http://xcin.linux.org.tw,您可以在這裡獲得更多資訊。

xcin 採用標準的 XIM 協定,XIM 協定是 X Window 下中文輸入的標準,只要支援 XIM 的軟體,我們都可以使用 xcin 來輸入中文。而在 KDE 中,除了 Konsole 外,其他常用的軟體都支援 XIM 中文輸入。

安裝 xcin 十分容易,我們可以使用 Ports 來安裝:

# cd /usr/ports/chinese/xcin25
# make install

安裝完 Xcin 後,我們還要修改 ~/.xinitrc 來加入中文輸入法的設定,請使用文書編輯軟體來編輯 ~/.xinitrc 這個檔案:

#!/bin/sh -
export LANG=zh_TW.Big5  # 設定使用中文

# 加入下列二行 
export XMODIFIERS=@im=xcin 
xcin2.5&

# 啟動 KDE
exec /usr/local/bin/startkde

修改完後存檔,接著進入 X Window 您將看到輸入法的視窗,然後我們就可以執行支援其他軟體來輸入中文了。例如我們開啟 Konsole 的視窗後,就可以使用 Ctrl+Space 來切換中英文輸入法。其他像 Konqueror 或 Kword 下的中文輸入也沒問題,如 下圖。

圖 11-8

在輸入法的切換方面,我們可以使用下列幾個預設的熱鍵來切換:

Ctrl+Space 中文 / 英文的切換
Ctrl+Shift 依序切換輸入法 (正向切換)。
Shift+Ctrl 依序切換輸入法 (反向切換)。
Ctrl+Alt+數字 選擇輸入法,數字部份由 1~8

預設的 XCIN 在輸入中文時,輸入法視窗不會在最上方,所以我們必須修改一下 XCIN 的設定檔。設定檔的位置是 /usr/X11R6/etc/xcinrc,使用文書編輯軟體打開後,找到 "OVERSPOT_WINDOW_ONLY" 的部份,並修改成 YES:

;  XIM Input Style Adjustments.
(define INPUT_STYLE            '(Root OverTheSpot))
(define OVERSPOT_USE_USRCOLOR   "YES")
(define OVERSPOT_USE_USRFONTSET "YES")
(define OVERSPOT_WINDOW_ONLY    "YES")

接著重新啟動 X 視窗,當要輸入中文時,只要以 Ctrl+Space 就可以打開輸入法視窗。

在 X Window 中,有一些使用上的小技巧,例如您可以使用 Ctrl+Alt+Backspace 來強迫離開 X Window。如果您要使用滑鼠在 Konsole 中來做複製貼上,你只要用滑鼠選取所要複製的地方,就已完成複製的動作,接著再按 Shift+Insert 即可貼上。你可以發掘更多的小技巧喔。