如何在Emacs中自动加载leiningen repl?

时间:2010-11-30 00:54:51

标签: emacs clojure leiningen

我正在使用Emacs,integrated和Leiningen的swank。每次我需要开始使用.clj文件时,我必须:

  1. 从控制台运行emacs pack/my-ns.clj
  2. 输入M-x lein-swank
  3. 编译缓冲区。
  4. 在Clojure REPL中更改命名空间,即键入(in-ns 'pack.my-ns)
  5. 如何自动执行此过程,只需从emacs-clj pack/my-ns.clj等控制台运行并准备好使用我的环境?

2 个答案:

答案 0 :(得分:2)

我对您提出的问题没有答案,但是您应该能够在Clojure文件中用C-c M-p替换第4步,然后emacs会提示您要使用的是什么命名空间与自动检测到的文件的命名空间一起使用,这样您只需按Enter即可。 C-c M-p映射到slime-repl-set-package

<强>更新

偶然发现了this。应该能够采取该答案中所述的内容并对其进行修改,以便在初始连接到swank文件时进行编译。也可以将其设置为自动切换到命名空间并使repl缓冲区处于活动状态。

答案 1 :(得分:2)

Swank应该在project.clj启动时自动加载由project.clj中的repl-init-script指向的命名空间,所以如果你想将它设置为你的起始命名空间,那应该可以让你开始。