繁体   English   中英

Erlang emacs模式 - 设置outdir

[英]Erlang emacs mode - setting outdir

有谁知道如何配置Erlang emacs模式,以便编译缓冲区[Cc Ck]将梁文件写入ebin目录而不是当前目录?

谢谢!

您可能想要查看Erlang问题邮件列表中的此主题:

http://www.erlang.org/pipermail/erlang-questions/2007-August/028367.html

此外,您应该能够以调试模式编译文件:Cu Cc Ck

erlang-compile命令应该支持前缀参数。 您可能希望了解:

http://www.gnu.org/software/emacs/manual/html_node/elisp/Prefix-Command-Arguments.html

如果您设置目录结构,如下所示:

/
/src/
/ebin/

并将您的模块(例如“my_file.erl”)放在“/ src /”目录中,然后编译它(Cc Ck),然后Emacs应自动将光束放入“/ ebin /”目录。

但是,如果您的模块不在名为“/ src /”的目录中(或者如果缺少“ebin”目录),则光束将与源文件一起删除。

要查看其工作原理,请查看$ ERL_TOP / lib / tools / emacs / erlang.el并搜索“ebin”。 这是你会发现的:

(defun inferior-erlang-compile-outdir ()
  "Return the directory to compile the current buffer into."
  (let* ((buffer-dir (directory-file-name
              (file-name-directory (buffer-file-name))))
     (parent-dir (directory-file-name
              (file-name-directory buffer-dir)))
         (ebin-dir (concat (file-name-as-directory parent-dir) "ebin"))
     (buffer-dir-base-name (file-name-nondirectory 
                (expand-file-name
                 (concat (file-name-as-directory buffer-dir)
                     ".")))))
    (if (and (string= buffer-dir-base-name "src")
         (file-directory-p ebin-dir))
    (file-name-as-directory ebin-dir)
      (file-name-as-directory buffer-dir))))

不知道什么时候添加了这个东西,但它在OTP_R13B03中 ,它在R14B03中适用于我。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM