查看單個文章
舊 2004-09-13, 11:16 AM   #2 (permalink)
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

1. 獲得 Emacs

廢話少說,最直接的辦法,去 Emacs 的老窩直接下載。下載位址是

http://ftp.gnu.org/pub/gnu/emacs/

Emacs 現在的穩定版本是 21.3。我個人推薦的是去

http://savannah.gnu.org/projects/emacs/

下載最新的 CVS 版本,CVS Emacs 做了很多有用的改進, 特別是在中文支持方面做
得更好了, 當然 21.3 也沒有問題, 如果你不會用 CVS 就算了。而且從源碼編譯
Emacs 往往需要 Visual Studio。有點麻煩,誰讓 Windows 下連個免費的編譯器都
沒有呢。權宜之計,可以從這裡下載最近編譯的 CVS Emacs

ftp://soft.eeatech.org:11021/incomin...r/Gnu%20Emacs/

不過我不能保證連接的有效性。真希望 et8 有個熱心人能做一下這個工作,就像
Mplayer K&K 版一樣。

感謝五樓提供的資訊,這個連接應該比較可靠,雖然版本不如上一個新

http://sourceforge.net/projects/nqmacs/

2. 安裝方法

Emacs 不需要安裝,屬於大家所提倡的那種"綠色軟體",解壓縮後,進入 bin 目錄,
雙按 runemacs.exe 就可以執行了。還有,把 emacs 的 bin
目錄的絕對路徑,增加到你的PATCH 環境變數中,如何設定
環境變數? 我的電腦->右鍵->內容->進階->環境變數....不說了,這些基本的
windows 操作您比我明白。這一步不是必須的,但是 有些必要


2. 基本組態

Emacs 的組態文件是一個叫 .emacs 的文件,不知道 M$ 哪兩
個部門的溝通出了點問題,導致 windows explorer 無法直接新增 ^.* 這樣的 文件
(而這樣的檔案名在windows文件系統中卻又是合法的,嘖嘖), 所以 ,在
windows下也可以 用_emacs 來替代。

下一步,讓emacs找到你的 .emacs 組態文件,如果你什麼都懶得做,就直接仍到
C:/ 下面好了。但是我最強烈 的推薦大家,稍
微多做一點點工作,以便以後工作的更好。設定一個「主目錄」,這個目錄
通常就是

c:/Documentsand Settings/Administrator

你也可以設定能其它目錄,以方便重裝系統的時候制作備份。

設定主目錄有兩種方法

1. 新增一個名字叫 HOME 的環境變數。變數值就是你的想
要的目錄路徑名稱。

2. 如果你覺得第一種方法不過癮,想讓 Windowz 最強大的註冊表發揮一下功能,
也可以。新增一個資料項

HKEY_CURRENT_USER\Software\GNU\Emacs

在裡面增加一個 REG_SZ 檔案類型的字串串,名字就叫
HOME, 值就是你想要的目錄路徑名。

設定好主目錄後,把 .emacs(_emacs) 扔進去。最基本的設定就算完成了。

3. 中文支持

Emacs 是一個真正的支持多語言編輯器。試試看

M-x view-hello-file

會列出Emacs支持的所有語言。如果有些大方塊在裡面,那不是Emacs 的錯,因為你
的系統裡沒有那種字體。

如果你下載的是那個 CVS Emacs,據說預設就支持中文了。如果是21.3 ,可能需要一
點組態。

開啟 .emacs(_emacs) 文件,你現在還不會用 Emacs, 所以還是先用notepad, ue,
editplus 等你熟悉的編輯器吧。

注意:綠色部分為程式碼,直接copy過去就可以,';'開頭的行
,是elisp的註釋行,但願你的編輯器已經支持它了。

加入以下幾行。



(set-terminal-coding-system 'chinese-iso-8bit)
(set-keyboard-coding-system 'chinese-iso-8bit)
(set-language-environment 'chinese-gb)
(set-clipboard-coding-system 'chinese-iso-8bit)
(set-selection-coding-system 'chinese-iso-8bit)
(setq locale-coding-system 'chinese-iso-8bit)
(setq current-language-environment "Chinese-GB")

注意: 以上部分只適用於組態 gb2312,如果你要組態隨後的 gbk,把這段程式碼刪掉!
啟動emacs, 試著敲幾個中文,應該不會有問題了。

Emacs 預設支持的是 gb2312 的中文,雖然大部分情況是足夠用了,但偶爾還是會遇
到 gb2312 以外的字串,比如我們前總理的名字。不管出於什麼理由,的確有辦法讓
Emacs 支持 gbk 字串集。設定稍微麻煩一點。首先去這裡下載最新的,一定要最新
的! mule-gbk

http://mule-gbk.sourceforge.net

解壓縮後看看裡面的 README 文件,那個文件是為 Linux 寫的,所以可以直接看我
下面的說明。

在 .emacs(_emacs) 文件的第一行,務必是第一行! 加入如下內容。

;; Top line of .emacs: -*- coding: chinese-iso-8bit; -*-

這是為了在後面使用中文的字體名字。

緊接著的一行是:

(add-to-list 'load-path "d:/emas-lisp/mule-gbk-0.1.2004080701")

引號中的部分是你的 mule-gbk 解壓縮到的目錄,建議你和我一樣,建立一個目錄專
門存放自己的 .el 文件,我的是 d:/emacs-lisp。

最強烈的注意: emacs 的目錄分隔符號是 '/' 而不是 '\', 所以目錄要寫成
x:/your/patch/ 的形式,而不是 x:\your\patch\ ,沒注意這個問題,帶來不便,sorry

隨後的部分是

(setq w32-charset-info-alist
(cons '("gbk" w32-charset-gb2312 . 936) w32-charset-info-alist))
(require 'mule-gbk)
(set-w32-system-coding-system 'chinese-gbk)
(set-terminal-coding-system 'chinese-gbk)
(set-keyboard-coding-system 'chinese-gbk)
(set-language-environment 'chinese-gbk)
(set-clipboard-coding-system 'chinese-gbk)
(set-selection-coding-system 'chinese-gbk)
(setq locale-coding-system 'chinese-gbk)
(setq current-language-environment "Chinese-GBK")

接下來要區別一下,如果你下的是標準的 21.3,採用下面的設定:

;; Setup X Selection for mule-gbk
(mule-gbk-selection-setup)

如果你下的是 CVS Emacs,採用這個設定:

;;; Unicode support, for Emacs CVS (21.3.50) only
(when (fboundp 'utf-translate-cjk-mode)
;; Load modified utf-translate-cjk-mode
(require 'gbk-utf-mode)
;; Turn on utf-translate-cjk-mode
(utf-translate-cjk-mode 1)
;; Setup X selection for unicode encoding
(setq x-select-request-type '(UTF8_STRING COMPOUND_TEXT TEXT STRING)))


分歧到此為止,下面的部分,是統一的:

(create-fontset-from-fontset-spec
"-*-Courier New-normal-r-*-*-14-*-*-*-c-*-fontset-most,
chinese-gbk:-*-細明體-normal-r-*-*-16-*-*-*-*-*-gbk*-*,
chinese-gb2312:-*-細明體-normal-r-*-*-16-*-*-*-*-*-gb2312*-*,
chinese-cns11643-5:-*-細明體-medium-r-*-*-16-*-*-*-*-*-gbk*-*,
chinese-cns11643-6:-*-細明體-medium-r-*-*-16-*-*-*-*-*-gbk*-*,
chinese-cns11643-7:-*-細明體-medium-r-*-*-16-*-*-*-*-*-gbk*-*,
korean-ksc5601:-*-Batang-normal-r-*-*-16-*-*-*-c-*-ksc5601.1987*-*,
chinese-big5-1:-*-細明體-normal-r-*-*-16-*-*-*-*-*-big5*-*,
chinese-big5-2:-*-細明體-normal-r-*-*-16-*-*-*-*-*-big5*-*,
japanese-jisx0208:-*-MS UI Gothic-medium-r-*-*-16-*-*-*-*-*-jisx0208*-*" t)

(setq default-frame-alist
(append
'((font . "fontset-most"))
default-frame-alist))


以上一大段是新增了一個字串集 'fontset-most'。英文字體是 Courier New, 如
果你有更漂亮的等寬字體,把名字改了就是,雖然我也知道 Tahoma 更漂亮,但它
真的不適合用在編輯器裡。確保程式碼無誤,啟動 Emacs, 敲一下前總理的名字,看
看正常沒有?如果正常,說明你的 Emacs gbk 已經組態好了。

4. 做一點改變,讓 Emacs 符合 Windows 用戶的習慣(慎用慎用)。

;按照windowz用戶的習慣使用 `C-x C-c C-v'
(setq cua-mode t)

;按照windowz用戶的習慣,使用 'Ctrl Alt Shift + 方向鍵移動和選項文本'
(setq pc-selection-mode t)
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次