Emacs平台很強大,已經不只是一個編輯器這麼簡單了,它被移植到Windows平台下使得非Unix使用者也有幸接觸到並使用它。
之前我寫了一個Windows7下的Emacs的一點說明,簡單說了一下如何在Windows下安裝emacs,不過,那不是最佳方式。
因為,按Windows7系統本身的HOME目錄配置的話,C:\Users\<username>\AppData\Roaming 這個HOME目錄太深了,而且預設狀態下AppData目錄是隱藏的,最最關鍵的是:如果系統硬碟一旦出問題,之前的.emacs設定檔和.el的擴充都得重新設定和下載。
還有另外兩咱方法,更改HOME目錄:一是添加HOME系統內容變數,這個有個很大的弊端,如果系統裡同時還安裝有java sdk、Cygwin等,那就可想而知了,這些軟體“找不到北的”;二是添加HKEY_LOCAL_MACHINE\SOFTWARE\GNU\Emacs\HOME=%emacs_dir% 登錄機碼,好是好,你得重啟系統啊。。。
本文給大家介紹一個個人認為最佳的方式:
首先,我們再來看看emacs的簡單安裝吧,http://ftp.gnu.org/pub/gnu/emacs/windows/emacs-23.2-bin-i386.zip 這裡下載emacs-23.2最新版,並解壓到一個磁碟根目錄,我這裡放在了d:\下,解壓後,得到 d:\emacs-23.2,進入d:\emacs-23.2\bin目錄,執行 addpm.exe 在開始菜單中加入 emacs 的啟動項。
啟動emacs,在 Option 菜單中隨便更改一下設定,如 取消 Case-Insensitive Search,之後,點 Save Options。這一步不是多餘的哦,因為預設情況下emacs不會在一啟動的時候就產生 .emacs 設定檔和 .emacs.d目錄的。這步產生的 .emacs 目錄還是在 C:\Users\<username>\AppData\Roaming 下,因為我們並沒有做別的設定移動它嘛~
下面就進入關鍵步驟了,開啟 C:\Users\<username>\AppData\Roaming\.emacs 設定檔,修改內容為
- (load-file "D:/emacs-23.2/.emacs")
路徑裡我用的是 / 而不是 \,這主要考慮到 \.emacs 中 \. 是把 . 給轉義了,用 / 就沒有這麼問題
這個配置意思很明顯了,emacs在啟動的時候會載入 C:\Users\<username>\AppData\Roaming\.emacs 這個設定檔,而該檔案又載入另一個 D:/emacs-23.2/.emacs 設定檔。這樣,自然就成功實現了配置的轉移嘍~好了,從現在起就不用進入 C:\Users\<username>\AppData\Roaming\.emacs 這個冗的路徑嘍!
上一步,我們把emacs的設定檔用 (load-file ...) 配置已經指向到 D:/emacs-23.2/.emacs 了,那兩個就拷貝一個 .emacs 檔案放到 D:/emacs-23.2/ 裡吧(Windows下好像不能建立以 . 開頭的檔案吧)。然後,開啟D:/emacs-23.2/.emacs,在開頭添加如下配置:
- (setenv "HOME" "D:/emacs-23.2")
- (setenv "PATH" "D:/emacs-23.2")
- ;;set the default file path
- (setq default-directory "~/")
恩,是的,這裡重新給 HOME PATH 等定義了新的路徑~~~寫到這裡大家該明白了,就是把配置轉移了一下而已。
好了,現在就可以了把 D:/emacs-23.2 當成emacs的 HOME了,配置可以參考這個文章:http://club.topsage.com/thread-2252500-1-1.html,裡面用的兩個簡單的擴充,由於指定了 load-path 為 ~/.emacs.d/elisp
- (setq load-path (cons "~/.emacs.d/elisp" load-path))
也就是 D:/emacs-23.2/.emacs.d/elisp,把兩個檔案放進去就ok了唄~!