最近系统的在学习Erlang,需要在Windows下配置一个开发环境,中间遇到了些小问题,现简单将过程总结下,红色说明部分为注意事项:-)
1,下载相应的软件。
Erlang R1303: 点击下载
Distel-4.03: 点击下载
Emacs 22.3 : 点击下载
2,安装Erlang,解压Emacs、Disttel到相关目录,下面是我的本机的安装目录。
Erlang的安装路径:D:\dev\erl5.7.4
说明:Erlang的安装路径不要包含空格,如C:\Program Files\erl5.6.3这样的路径,因为Program Files之间的空格存在,是不被Distel认知的,如果要用Program Files,可以使用短文件名C:/progra~1/
Erlang工程目录:D:\project\erlang
说明:这个目录需要你自己建立
Distel的解压路径:D:\dev\erl5.7.4\lib\distel-4.03
Emacs的解压路径:D:\dev\emacs-22.3
3,配置环境变量。
a)为Erlang添加一个变量
右击我的电脑-》高级-》环境变量-》系统变量-》新建:
变量名:ERL_HOME
变量值:D:\dev\erl5.7.4
添加完成后,点击PATH,编辑PATH的变量值,在PATH里面添加
%ERL_HOME%\bin;
b) 同样,添加一个"工程目录"的环境变量:
变量名:HOME
变量值:D:\project\erlang
说明:变量名字必须为HOME
4,在你的之前设定的“工程目录”(本例为Erlang工程目录:D:\project\erlang)下,新建一个名字为“.emacs”的文件(无后缀名),内容为:
;; This is needed for Erlang mode setup
(setq erlang-root-dir "D:/dev/erl5.7.4/")
(setq load-path (cons "D:/dev/erl5.7.4/lib/tools-2.6.5/emacs" load-path))
(setq exec-path (cons "D:/dev/erl5.7.4/bin" exec-path))
(require 'erlang-start)
;; This is needed for Distel setup
(let ((distel-dir "D:/dev/erl5.7.4/lib/distel-4.03/elisp"))
(unless (member distel-dir load-path)
;; Add distel-dir to the end of 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)))))
说明一:在Windows的explore里是不能直接创建.erlang文件的,如果文件名仅输入“.emacs”,会弹出错误警告,说什么“必需输入文件名”。新建方法有两个:一是在cmd命令行中输入 echo a<.emacs,在用文本编辑器编辑该文本;二是直接用editplus或者ue等文本工具直接另存为.emacs名字即可。
说明二:根据你自己实际情况,替换红色部分标注的路径。
5,同样在“工程目录”下,新建一个名字为“.erlang.cookie”,内容随意填写。
执行完以上步骤后,用emacs打开erlang的文件时,如果在菜单会出现“Erlang”的选项,如下图,表示配置成功
参考文章:http://bc.tech.coop/blog/070528.html