Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is vim already good enough for programming clojure? [closed]

Tags:

vim

emacs

clojure

I've used vim for a pretty long time and I'm still happy with it. I started to learn clojure 6 months ago. It seems that emacs is the first choice for lispy language programming. But I would rather learn something else than spend a lot time on learning how to use an editor which is not obviously superior to vim.

So I struggled to make my vim setup more suitable for clojure programming.

What I'm now using is:

  • vim-clojure-static, which provides basic syntax highlighting
  • paredit, which provides structural edit on s-expression
  • vim-fireplace, which can talk to a remote repl within vim

I also use vim-redl, redl to get a debug repl, but IMO the three above can already provide quite pleasant coding experience.

My question is, am I still missing some killer features of the emacs working flow?

like image 666
Wei Qiu Avatar asked Jun 06 '13 14:06

Wei Qiu


1 Answers

Is emacs better for clojure/lisp development? Yes, it is. Can you do without it, of course. I used vim for Clojure development but I switched to emacs a couple of months ago and I'm very glad I did. Personally I find it a much better experience. The vim plugins probably have matured a bit in the meantime but vim has some serious limitations with regard to external processes and so on. I had some general vim plugins I really loved but luckily they all had alternatives for emacs.

Couple of things worth mentioning:

  • I use Evil mode. Like Tom mentioned it's a vim emulation layer. It's extremely good. I don't miss anything from vim. Text objects, all the vim modes etc are supported. Personally I can't remember all the strange emacs keybindings, they drive me nuts. Without Evil I wouldn't be using emacs. I created evil keybindings for paredit and some other plugins and you basically have vim on steroids. I only use vim for quick edits now.

  • Customizing Emacs was the hard part. I love Emacs now but I wouldn't know what to do without my customized Emacs config. Once you tweak everything to your liking it's very hard to go back to anything else. It took me a long time to get to that point though. Check https://github.com/otijhuis/emacs for my personal emacs config if you want to try it. It still needs a little work and I'm no Emacs guru but it works really well for Clojure development. It might be a good starting point.

like image 62
Okke Tijhuis Avatar answered Oct 02 '22 21:10

Okke Tijhuis