Clojure的Cursive插件现已退出Beta测试阶段。 我一直在整个Beta版计划中使用它,我必须说,它非常好。 当然,重构功能不能与IntelliJ for Java相提并论,但是Clojure是动态的,要求这种功能正在要求不可能。
另一方面,当我与Clojure合作时,我发现自己更经常回到vim。 我一直发现vim快捷键功能更强大。 我什至在IntelliJ IDEA / Cursive中使用vim插件。 幸运的是,有几个可用的插件使Vilo Clojure开发很有趣。 这些是Vim Clojure和Fireplace 。
我在开发环境中提出的基本要求是:
- 语法高亮
- 通过键盘快速浏览源代码
- 跳转到第三方库的源代码和文档
- 快速测试执行
Vim with Fireplace满足了基本要求并超越了这一要求。 我最喜欢的是块编辑功能,它使我可以操纵代码块(例如,替换函数调用中的所有内容,将所有声明复制到let块中等)。 该插件还自动连接到正在运行的repl,并允许我直接通过vim执行任何Clojure代码。 我发现这些功能比基本的重构(如“更改功能名称”)有用得多,尽管有时我确实会错过它。 请注意,Cursive还具有完整的表示形式。 有一个很好的教程壁炉这里 。
我的vim Clojure开发环境如下所示:
我发现,为了更好地使用vim而进行的一些投资使我的工作效率比Cursive更高,尽管它并不适合每个人的口味。 我正在研究的代码库相对较小,对于较大的代码库,我可能还是更喜欢Cursive。 话虽如此,我喜欢这样的论点,即我们永远不应只有一个大型代码库。 至少现在,vim是我最喜欢的Clojure编辑器。 再来一次! 我还没有尝试过Emacs……!
翻译自: https://www.javacodegeeks.com/2016/01/clojure-vim-environment.html