我查过了erlang-mode的文档 .
它似乎是C-c C-k,(erlang-compile) - 在当前缓冲区中编译Erlang模块 .
只编译一个当前缓冲区的文件 . 我想在emacs上用rebar commond编译一个项目 . 例如 . ./rebar编译
它可以显示结果,如执行“erl -sname -pa ebin -pa deps / * / ebin” .
如何在emacs上执行此操作?
这样做“正确”的方式涉及劣质的emacs shell等,并且不是微不足道的 . 但是,您可以通过以下两个步骤获得所需的效果:
在项目目录的顶层,您可以通过访问 rebar.config 文件来执行此操作,执行 M-x compile 并在按Enter键后,将编译命令更改为 rebar get-deps compile ,然后按Enter键运行它 .
rebar.config
M-x compile
rebar get-deps compile
假设第一步中的编译成功,执行 C-u M-x erlang-shell 并按Enter键 . 它会提示你输入shell参数
C-u M-x erlang-shell
erl -pa deps/*/ebin -pa ebin
按Enter键,您将获得一个erlang shell提示符,并为您的项目正确设置了erlang加载路径 .
1 回答
这样做“正确”的方式涉及劣质的emacs shell等,并且不是微不足道的 . 但是,您可以通过以下两个步骤获得所需的效果:
在项目目录的顶层,您可以通过访问
rebar.config
文件来执行此操作,执行M-x compile
并在按Enter键后,将编译命令更改为rebar get-deps compile
,然后按Enter键运行它 .假设第一步中的编译成功,执行
C-u M-x erlang-shell
并按Enter键 . 它会提示你输入shell参数erl -pa deps/*/ebin -pa ebin
按Enter键,您将获得一个erlang shell提示符,并为您的项目正确设置了erlang加载路径 .