Learning Text Editor Keybindings

Hey all you editor effiency nuts out there. I ran across an interesting study yesterday (here I’m using “interesting” in the fancy-Ph.D. sense of the word, which means approximately “boring” in layperson speak). It’s part of The Transfer of Cognitive Skill.

Basically, what the experimenters did in this case was teach a bunch of typists (typewriter typists) to edit documents in EMACS. After they had learned how to do that for a day, they trained them on something they called perverse-EMACS: basically a version of emacs that had every emacs key combinations rejiggered to be different. The question was – how long would it take them to adapt?

The answer was somewhat surprising: within a day (approximately) all EMACS/peverse-EMACS confusions were more-or-less elliminated and the typists resumed their normal-speed improvement curve. The authors speculate that totally nonfunctional combinations are quickly weeded out – the only thing that persists long term is suboptimal combinations that are partly effective.

The implications seem to be that more drastic editor changes are learned faster. Somewhat counter to our usual logic, seems like? Maybe its time for all those novice vi-users to block out their arrow-keys, eh? Question for you guys: are there any other functional but suboptimal combinations you habitually use that might be better to break than continue to allow yourself to remember them?


  1. Matt says:

    In vi, gg is faster to type than :0[enter]. But I learned :0 years before I discovered gg, and I haven’t broken the habit yet. That, and vim has a nifty “visual” selection mode which would drastically reduce keystrokes if I would only learn to use it.

  2. Ben Bernard says:

    How could I not have responded to this post?!?

    I’ve been using this paradigm for a while now to change my behaviors. Instead of just aliasing more to less, I broke more to force myself to type less ( more() { echo “Use less you git” } )

    Given my great success with this, I’ve often adovcated breaking other things hard rather than softly…

    I do :0 like matt all the time… I also don’t use ctrl-o as much as I should. I still don’t really know the movement commands that take you to the end of the previous word (W/B have correlaries like e and something else). I still don’t use ai” or ai( to select inside a quote or paren…

    More interesting to me is that they taught regular ppl emacs?!? Did they like it?? Why does CS research never research the things I really want answered like vi vs. emacs.

Leave a Reply