My Editor Journey Till Now

My Editor Journey Till Now

What did I start with?

2018

My first editor was Emacs1. Why did I choose emacs? I couldn’t figure out how to exit Vim2.

I got really into programming with Scheme3. And I liked it so much I decided to choose the editor with its roots in it.

Learning emacs was just getting comfortable with its keybinds. The power of emacs comes from extensibility. Although I am a casual lisp programmer, I never bothered to learn elisp and extend emacs to my liking.

Why did I switch?

2020

The elisp4 configs didn’t make any sense. I never got the grasp on emacs modes and I felt slow in emacs. Although I am partly to blamed for not harnessing its power.

I decided to switch to Vim in 2020. I like that just about any action is 1-3+ click/s away. I felt fast, really fast. I felt so fast that I started using it everywhere. I use Vimium in my browser. I use i3wm which has vim-like keybinds. I use vim keybinds in online IDEs for prototyping. I wish it was everywhere.

Why am I switching again?

2022

I have recently been tinkering with smalltalk. The Pharo(or any smalltalk) IDE has been one of the best IDEs I have ever used. I know when I miss vim because I feel slow. But I never felt slow in Pharo’s IDE. Its because you are able to reach just about anywhere within few clicks. I realized I was getting more done and was managing very less code. It made me think about extensibility.

And this made me change my mind. Its about time I did emacs properly.

What do I plan to achieve?

One day I will start my day by opening emacs and I’ll end it by closing it. This is what I am aiming for.

What about Vim?

I will use vim for quick edits. I will continue using it in my browser. Emacs support in browser is not functional. The motions in vim are very powerful and I plan to use Spacemacs after I get comfortable with elisp.

Footnotes

  1. https://www.gnu.org/software/emacs

  2. https://www.vim.org

  3. https://groups.csail.mit.edu/mac/projects/scheme/

  4. https://github.com/chrisdone/elisp-guide


← Back to notes