Relearning Emacs

The last time I used Emacs regularly, the computers were SPARC pizza-boxes, and every time you logged off, the screen would display how many dollars and cents you owed the central computing office for mainframe activity.

Emacs is a text editor, written in the 70s by the same guy that brought you most of Linux -- but not the guy for which Linux is named. Like its thirty-year-old competitor vi, Emacs was designed for keyboard-bound programming folk with muscle memory bulging from every digit. Every command has a succinct keyboard shortcut, often involving intricate chords of the control, alt, and shift keys, together with every other available key, the power button, and an occasional wiggle of the network cable.

For instance, to move down four lines within an open file, insert the word "apple" after the sixth word in the sentence, save, and exit, the command is straightforward:

Ctrl+u 4 Ctrl+n Ctrl+u 6 Alt+f Space apple Ctrl+x Ctrl+s Ctrl+x Ctrl+c

Just what you'd expect compared to vi's nonsensical alphabet soup:

Esc 4 j 7 w i apple Space Esc : w q Enter

So, right there you can see why I'm keen to jump back into Emacs. And I haven't even mentioned the customizations that can be conjured via Elisp.

Why shell out for Microsoft Word when Emacs is free and runs on all operating systems? Side by side they're virtually indistinguishable:

Word v. Emacs

Figure 1: Microsoft Word and Emacs. Can you see a difference?

It should only take a couple more weeks before I reliably remember how to open a file, and perhaps another couple to master escaping the minibuffer, but by then -- provided my wrists don't cramp up -- I'll truly be an Emacs wiz.

Sarcasm aside, I actually am retraining myself to use Emacs. I've got the O'Reilly book and everything. A powerful editor is important in my line of work and I'm sick of jumping between different and incompatible programs on Windows and Linux (and maybe someday, Mac). Even the wacky keystrokes start making sense after a while, and they beat the pants off reaching for the mouse every ten seconds.

Archived Comments

  1. Brian Hampson on 20080306.Thursday:
    "My line of work" What EXACTLY _IS_ your line of work these days ? ;)
  2. Dave on 20080307.Friday:
    Fair question. If you were to look in on me this past work you'd be justified in guessing my job has something to do with distilling the US election primaries into a Lego robot. That, and learning jQuery, Erlang, and the aforementioned Emacs. Also I paid a few bills by writing humdinger SQL queries and righteous shell scripts.