概要:觉得别人写的不够傻瓜,于是自己整理一下。
下载地址:
Emacs:http://www.ourcomments.org/cgi-bin/emacsw32-dl-latest.pl。下载最新的latest EmacsW32+Emacs patched。
Erlang OTP:http://www.erlang.org/download.html。下载Windows Binary File。
Distel:http://sourceforge.net/projects/distel/。目前最新版本:distel-3.3.tar.gz。(这个地址已经停止更新)。另外一个下载地址:http://code.google.com/p/distel/
安装:
1。首先安装Erlang和Emacs:安装过程和一般应用软件差不多,这里略过。为避免路径中空格带来麻烦,Erlang的安装路径不要带空格 (如D:\erl5.9.1)。 解压缩Distel到D:/erl5.9.1/lib/distel-3.3(这个路径随意,便于管理,将它放到erlang的lib下面)
2。配置环境变量:ERL_HOME=D:\erl5.9.1 PATH加入%ERL_HOME%/bin ERL_WORK=D:\Erlang_work(这个路径配置为erlang工程的目录)
如下表示,配置成功。
3。创建.emacs文件:.emacs在图形界面是新建不了的。可以用刚才安装的Emacs,复制如下内容到emacs.txt,用Emacs打开,然后保存为.emacs。
;; Erlang mode
(setq load-path (cons "D:/erl5.9.1/lib/tools-2.6.7/emacs" load-path))
(setq erlang-root-dir "D:/erl5.9.1")
(setq exec-path (cons "D:/erl5.9.1/bin" exec-path))
(require 'erlang-start)
;; Distel
(let ((distel-dir "D:/erl5.9.1/lib/tools-2.6.7/elisp"))
(unless (member distel-dir load-path)
(setq load-path (append load-path (list distel-dir)))))
(require 'distel)
(distel-setup)
;; Some Erlang customizations
(add-hook 'erlang-mode-hook
(lambda ()
;; when starting an Erlang shell in Emacs, default in the node name
(setq inferior-erlang-machine-options '("-sname" "emacs"))
;; add Erlang functions to an imenu menu
(imenu-add-to-menubar "imenu")))
;; A number of the erlang-extended-mode key bindings are useful in the shell too
(defconst distel-shell-keys
'(("/C-/M-i" erl-complete)
("/M-?" erl-complete)
("/M-." erl-find-source-under-point)
("/M-," erl-find-source-unwind)
("/M-*" erl-find-source-unwind)
)
"Additional keys to bind when in Erlang shell.")
(add-hook 'erlang-shell-mode-hook
(lambda ()
;; add some Distel bindings to the Erlang shell
(dolist (spec distel-shell-keys)
(define-key erlang-shell-mode-map (car spec) (cadr spec)))))
别忘记将以上路径更换为自己实际的路径 。注意路径分隔符 是正斜杠“/” 而不是反斜杠“/”。这样emacs启动时可以自动加载erlang mode和distel的配置文件。
4。再在D: /Erlang_work(环境变量HOME)建立一个名为“.erlang.cookie”的文本文件,内容随意,例如:
it_is_a_secret_file
这个文件是Erlang的Magic Cookie文件。由于Distel需要和运行的erlang节点进行通信,因此这一步不可少。
5。创建一个Emacs的快捷方式,放在桌面或者任务栏快速启动,右击快捷方式选“属性”,将“起始位置”设为"D: /Erlang_work”或"%ERL_WORK% "(HOME环境变量)。这样Emacs启动后可以直接定位到erlang工程的目录。
或者复制.emacs文件到系统盘符(一般是C):\Documents and Settings\你的用户名\Application Data\ (XP)。
系统盘符(一般是C):\Users\你的用户名\AppData\Roaming\ (Vista&7)。
6。启动Emacs,打开一个erl文件 ,应该能看到多了一个“Erlang”菜单,菜单下有一个Distel的子菜单 (注意:如果不打开一个erl文件是看不到“Erlang”菜单的!) ,如图:
1。编译:Erlang->Compile->Compile-Buffer。
2。运行:如下图:
参考资料:
1.http://blog.csdn.net/yaonai2003/article/details/6422710
2.Bill Clementson's Blog:Distel = Emacs erlang-mode++http://bc.tech.coop/blog/070528.html(内容提到在Emacs窗口中如何打开Debugger窗口)
thomesca(北蔡):http://blog.csdn.net/thomescai (转载请保留)