我有一个问题:
当我使用带有clojure和elein(leiningen扩展名)的emacs时,我将我的代码写入文件中,然后我需要连接到swang,我输入“elein swank”并打开conexion ... 2步)我打开一个repl ... 3)我键入slime-connect(并按两次y)4)这一步真的很烦人:我需要使用我的文件或更改命名空间......
到目前为止一直很好......问题是如果在我的档案中有一点错误(也许是一个括号)现在我侮辱我的代码而且我重复所有步骤......再次!!
对我来说这真的很烦人,我真的很喜欢emacs,我已经使用了很长时间并且是最好的编辑器,但是将它与netbeans相比较(今天我试试这个..它很好但是它的重复... )使用netbeans我只需要点击一下即可完成所有这些步骤...
我可以按“加载文件”,这会加载我的文件在repl ....认真!! 如果我按下NS中的别名/文件,则打开repl并更改命名空间......这么好
现在..我的问题是,是否有可能在emacs中创建一个命令,而不是make everything..maybe,这将是非常好的...一个命令,而不是打开一个repl并加载我的文件或我的ns ...将是伟大的......有可能吗?...有人这样做吗??谢谢
非常感谢有一个美好的一天!!
答案 0 :(得分:5)
elein-swank
应该在为您启动后自动连接到swank后端。有一个最近修复的错误阻止了一些swank-clojure版本,所以你可能想要将elein.el
更新到最新版本。
您可以使用elein-reswank
重新启动后端,并在必要时重新连接。
一旦运行,C-c C-k
将在后端编译并加载.clj文件。 C-c C-z
将从任何clojure源缓冲区转移到REPL。
希望这些提示有助于简化您的emacs /粘液体验 - 这真的是一个很好的工作环境,所以如果可以的话,坚持下去! : - )
答案 1 :(得分:2)
如果你还没有,你可能想尝试一下swank-clojure。
使用swank-clojure你只需要M-x clojure-jack-in并加载REPL。如果从project.clj文件中调用它,它会使项目的所有命名空间都可用。它需要几秒钟的时间才能启动,但之后它非常简单,您无需重新加载。
答案 2 :(得分:1)
如果你犯了一个拼写错误,为什么你需要重装一切?您只需运行lein swank
一次并使用slime-connect
连接到swank ...然后您可以根据需要加载和评估您的代码。要(重新)加载文件,您可以使用绑定到slime-load-file
的{{1}}命令...
您还可以从新鲜的clojure模式中查看C-c C-l
命令...
P.S。我亲自运行swank会话一整天(有时几天),不留下它,编写新代码,评估它等等。