Command Line Text Editing / Why I am learning one

Adam Parrish
Neosavvy Labs
Published in
3 min readAug 10, 2017

For years I have gotten by on my modicum of knowledge in VIM that I picked up in college. I have known how to open, save and quit a file proudly in VIM since 1999. Simple things like searching in a file forward and backward, basic regex replacement and yanking and pasting text are really the pinnacle of my tiny foothill of knowledge.

Lately I have noticed a severe uptick in the number of respectable programmers out there using TMux and VIM to emulate a full-featured IDE. Likewise there has been a growing interest in technology like Clojure. So given the trends I see in my colleagues and my desire to learn Clojure, not to mention the great teaching materials in Daniel Higginbotham’s book Clojure for the Brave and True; I am learning Emacs.

My Clojure Workspace with my Emacs Notes at the Bottom Left

Emacs so far has been a great environment for Lisp and has allowed me to resume my work where I left off with little to no effort. I do find myself still struggling to remember all the Control [C-?] shortcuts and getting my Meta key aka Option on a mac to work properly was frustratingly complicated and oh my god I wanted to throw my computer off the fourth floor window onto 5th avenue and watch the tourists scream.

After all that I have been happily opening buffers, windows and frames (split panes for us IntelliJ / WebStorm users) and editing my Hobbit’s and Vampires as if I were an Axe-wielding Dwarf riding a Rhinoceros. If you don’t get it, go here.

So between VIM and Emacs which is a better time investment

I have to say that my assessment at this point is not going to be on the merits of the editor, but it’s pretty clear to me that VIM is a better time investment than Emacs, and here’s why:

  1. I have personally observed VIM to be more ubiquitous in the field amongst software developers since I professionally became one in 2005.
  2. Recent usages of tmux have made VIM at a glance appear to be identical to an IDE like WebStorm or Sublime (at least for NodeJS/Javascript folks)
  3. I have never personally met a developer who used Emacs for their day to day contributions on software projects professionally, but I have continually met VIM users.

So then it would make more sense to study VIM, yes I know, but there are other reasons to focus on Emacs. As far as I can tell Emacs is IT, it is THE editor for Clojurists and Lisp aficionados the world over. In fact, it’s written in a form of lisp called ELisp. So it’s all a matter of goals, if you want to delve into the world of Academic AI and Deep Learning maybe you need to consider picking up Emacs, but if you already know VIM you can make Emacs act like VIM with Evilmacs.

It isn’t worth debating the age old religious battle between these two editors, but suffice to say, it is worth investing your time in one or both to become familiar.

There are tons of Emacs cheatsheets out there but here’s mine, it only contains the stuff I am actively trying to learn / memorize at the moment.

--

--