Why I switched to Emacs

after so many years with vim.

TL;DR

This January I stopped using vim after years of sharpening my vim setup because I couldn’t understand this very commit.

The “reason”

In my mother tongue there are two different words for “reason” with significant differences in their meaning. The first one “причина”, is used to describe an event or more commonly, a series of events which lead to what usually turns out to be a bad situation. The other one “повод”, describes the very last event, the final straw which lead to the event.

This commit, this patch of code was the last straw, it was the reason I would stop using my sharpened saw, my tool of trade, my Vim:

https://github.com/junegunn/vim-slash/commit/5e9d77b6

I had been following the vim-slash repo for some time because I had a similar functionality in my vimrc… and because I find this particular project interesting. I like following interesting projects.

That commit fixed an issue that I had been experiencing myself. However, even after years of using Vim and writing VimL I had no idea how this patch would address the issue.

On one hand, this commit seems like such an elegant solution to the problem - with just a few lines of code, the issue is completely fixed. On the other hand, however, this smells like such an ugly hack that.

Up until that moment, I had been seeing VimL as an elegant solution, such beauty, so similar to all the scripting languages I’m (painfully) familiar with… but not more. I had seen the true side of it and I couldn’t see it in any other way.

The cosmic microwave background radiation

Like the cosmic microwave background radiation, emacs-lisp has been there all along, waiting for me to discover it. And now that I have, I can’t go back, I can’t deny its existence, I can’t go back to VimL.

Like seeing the “SH”, as in Steven Hawking, in the cosmic microwave background radiation - once you see it, you can’t un-see it.