Lov*_*ing 9 emacs clojure slime
我想在emacs中设置一个编辑clojure的环境.我对emacs(仅1年)相对较新,而且对于clojure(2周)来说是全新的.我在网上找到了很多关于如何设置lein,swank-clojure,slime和nrepl的教程.似乎swank-clojure和slime需要一起工作但是swank-clojure已经弃用了,所以剩下的就是nrepl和一些内置的lisp repl模式.
我首先尝试了劣质的lisp模式,因为它是clojure-mode的默认模式,它对我来说很好看.但我似乎无法找到一种方法在其中轻松切换命名空间.
然后我尝试了emacs-live,这就像是nrepl附带的emacs新手的工具包.然后我可以做"nrepl-jack-in"来获得一个repl,即使它非常慢..它可以用"CC Mn"轻松切换名称空间.然而,在切换之后的某个时候,会弹出一个名为nrepl错误的缓冲区,并且不会让我关闭.我必须强制关闭emacs.此外,nrepl没有太多的语法高亮.
总结一下:在swank-clojure被弃用之后,我应该使用哪个repl?煤泥REPL?nrepl?或其他人?
我现在对clojure知之甚少,所以我不确定bre功能对于repl很重要但是至少有语法高亮并且可以在nrepl中像"CC Mn"之类的命名空间之间轻松切换,这可能是一件好事.调试器.
Boz*_*sov 15
我衷心推荐nREPL.el有各种原因:
swank-clojure正式死了,但已经死了很久了.虽然它已经完成了一些工作,但在它最初成立之后没有任何改变或改进.swank-clojure的开发需要Common Lisp的重要专业知识,Clojure开发人员通常缺乏并且不愿意实现.
clojure-mode 2.0.0根本不支持swank-clojure + SLIME.这一举动对clojure模式(删除了大量遗留代码)和nrepl.el(发布速度在宣布后增加)都非常有利.
nrepl.el正在快速提升功能.我是它的贡献者之一所以我应该知道:-)最近增加了许多很酷的东西,如宏扩展,编译错误突出显示和多个连接支持,仅举几例.更多功能和改进正在筹备中.nrepl.el的架构比SLIME简单得多,而且常规的Clojure黑客更容易扩展nrepl.el.
SLIME语法突出显示?REPL在SLIME和nrepl.el中具有相同的字体锁定,并且源缓冲区使用clojure-mode的字体锁定.换句话说 - 语法高亮在两者中都是一样的.
Emacs Live依赖于供应商的git子模块,并且它所提供的扩展版本通常都落后于上游.您可能希望尝试另外的Emacs Prelude,它也附带Clojure支持,但始终使用MELPA中提供的最新软件包.
没有slime-repl(在SLIME之外).在这一点上,它只是swank-clojure + SLIME或nrepl.el.鉴于nrepl.el现在甚至实现了SLIME的大部分功能 - 你最好习惯使用nrepl.el.
更新
在版本0.2.0之后,nREPL.el被重命名为CIDER.
| 归档时间: |
|
| 查看次数: |
1744 次 |
| 最近记录: |