How to Learn Emacs: A Hand-drawn One-pager for Beginners / A visual tutorial

This entry is part 1 of 4 in the series A Visual Guide to Emacs

UPDATE 2013-09-23: New, much larger version – see below!
UPDATE 2013-06-01: Here’s a zoomable, pannable version thanks to MapLib!

Here’s version 2 (September 2013). You can print this at 16.5″x10.75″ at 300dpi. Have an ordinary printer? Check out PosteRazor!

How to Learn Emacs - v2 - Large


Original post from May 2013:


I thought I’d draw a one-page guide for some of the things that people often ask me about or that would help people learn Emacs (and enjoy it). You can click on the image for a larger version that you can scroll through or download. It should print all right on 8.5×11″ paper (landscape) if you want to keep it around as a reminder. Might even work at 11×17″. =)

How to Learn Emacs

You can find the image on Imgur and Flickr too.

Feel free to share, reuse, or modify this under the Creative Commons Attribution Licence. Enjoy!

Possibly counterintuitive point: It’s good to learn at least the basics of Vim. Despite the perception of a “Emacs vs. Vi” holy war (one of the classic battles in computer science), it makes sense to know both editors especially if you work with people who use Vi a lot. Know enough Vi to find your way around, and then learn how to customize Emacs to fit you to a tee. That way, you’ll avoid the pressure of not being able to work well with your team or your infrastructure, and you’ll have the space to explore Emacs. =) Emacs is totally awesome.

Need help with Emacs? Feel free to leave a comment or get in touch with me. I’m often in the #emacs channel on irc.freenode.net , and I also occasionally schedule time to help people one-on-one. Also, the Emacs community (mailing lists, newsgroups, IRC channel) can be wonderful, so definitely reach out to them too. =)

Meta discussion: How can I make this even better? What else would you like me to draw a guide for? I’d love to hear your thoughts! Also, thanks to dash, nicferrier, fledermaus, ijp, hypnocat, Fuco, macrobat, taylanub, axrfnu, Sebboh, thorkill, jave_, jrm, and the rest of #emacs for suggestions and feedback!

Update 2013-05-18: Check out the conversations on Hacker News and Reddit!

 

Series NavigationHow to learn Emacs keyboard shortcuts (a visual tutorial for newbies) »

8 Pingbacks/Trackbacks

  • mbork

    - What else would you like me to draw a guide for?
    - Git! Git! Git!
    A few more comments: (i) this is awesome. (ii) I guess you called incremental search “interactive search” on purpose, right? (iii) When is part II (intermediate) going to appear?

    • http://sachachua.com sachac

      Oooh, Git would be good. I’ll need to do some research, though – Git boggles me from time to time! <laugh>

      (i) Thanks!

      (ii) Yeah, incremental is another one of those Emacs terms that I’m not sure people will understand right away… =)

      (iii) Intermediate Emacs is harder to think about because the possibilities are so broad! <laugh> It might be interesting to do one on Org and another one on Emacs Lisp…

      • mbork

        (iii) True. For me, a natural choice would be e.g. things like C-t, M-t, M-a/M-e/M-k, since I write *a lot* of texts in natural languages in Emacs (and LaTeX/ConTeXt), but many people never use those commands, I guess. But I think there are a few things good for the intermediate level (Elisp would be too advanced, I guess). One of them would be regexen; another keyboard macros (you mentioned them here, I know, but they deserve more space); yet another, the notions of major and minor modes. Also, the idea of “argument” (as in C-u) is definitely worth explaining. Then, navigation in a buffer (one thing I love in Emacs is C-M-v;)), maybe display tricks like C-l, narrowing, visual-line-mode…

        In general, I think it might be a good idea to write something like an alternative Emacs tutorial; the C-h t one is a bit too verbose (and contains imho unnecessary things, like concentrating too much on C-b/C-f/C-p/C-n).

    • Jeremy Le JyBy

      part II could be on the .emacs.d structure for personalizing emacs: it’s helpful even for beginners, and it would be helpful for some like me who started a configuration file .emacs 15 years ago and would like to structure it in the “new” way….

  • Tom Swirly

    Your flicker image is unfortunately missing. :-( Consider imgur?

    • http://sachachua.com sachac

      Sorry about that! Added imgur link. Hope that helps!

  • http://lunaryorn.github.io/ Sebastian Wiesner

    Great!

  • Tom Swirly

    I was hoping to send this to my less-computer-y friends who need an editor.

    But the idea of saying, “Hey, learn this other editor with a completely different metaphor and then learn emacs” – because “people won’t give you grief”?

    It’s really like training people to ride a bicycle by teaching them to drive a car first….

    • http://sachachua.com sachac

      Mmm, I added a note suggesting Vim if you’re a developer or a sysad. If your friends aren’t, they can totally skip that part!

  • Nicolas G. Querol

    This is wonderful! I’ll be showing to this to any person that asks me about Emacs :)

  • http://twitter.com/deerpig Brad Collins

    Great job! I am now teaching our office manager emacs, and we will be teaching it in a Cambodian version of hackerschool that we’re starting here in phnom penh and soon in Vientiane, Laos. Maybe we could even translate your one-pager into Khmer and Lao?

    One for org-mode would be wonderful. And I like the idea of Git, but do it for emacs users so that it revolves around a workflow using magit for basic stuff and eterm for the more complex….

    • http://sachachua.com sachac

      Yes, please feel free to translate it! I would be delighted.

  • Garjola

    Great! I am making a t-shirt with your image.

  • Walter Vargas

    looks great, I’ll print this out and hang it on the wall of the office.

  • lolfox

    chuck norris once used emacs after using vim.

  • NerdFlanders

    I have a tip how to make this better:
    add a “or switch to VIM” bubble….

  • Abelard Lindsay

    I love vim but find myself wanting emacs modes for ml and lisp. Thanks.

  • http://twitter.com/adam_awan Adam Awan

    Thanks Sascha, great sketch. I found it hard to move away from Vim until I found Evil (Extensible Vi Layer) for Emacs http://www.emacswiki.org/emacs/Evil This replaces any need I had to use Vim.

  • vec

    > “Emacs vs. Vi” holy war (one of the classic battles in computer science)

    no, not really! computer science deals in way more complex problems.

  • vec

    nice sheet though, maybe that’ll help me to get into emacs

  • FreakSQuirreL

    Really nice! I got here after a friend shared a link to your blog :) I will keep spreading your work to help those who want to use emacs.

    Btw, you blog is really interesting! keep the good work ;)

    greetings from the land of the rising sun ;)

  • http://twitter.com/RaymondZeitler Raymond Zeitler

    Excellent! This 13-year user didn’t know about C-h w . I would always invoke M-x and then stare at the mini buffer for the brief message that says what keystroke (if any) it’s bound to.

    Undo was on my short list of must-have text editor features. So it was one of the first things I looked up, and I used it often. But I learned the C-x u keystroke, not C-/, even though the latter is shown on the reference card.

    I appreciate the vim help. Sometimes it’s all there is. Besides it’s hilariously funny! :)

    Thanks so much!

    • http://sachachua.com sachac

      Hilarity! =) Glad it helped. You can also find keybindings with C-h f <function-name>

      Undo-tree is pretty darn cool. =)

  • Dave Marquardt

    Hey, remember how I couldn’t see your drawing? It was a Feedly thing, and I can see the drawing just fine on your web site.

  • Nrkkalyan

    Nice

  • Pingback: Article: How to Learn Emacs: A Hand-drawn One-pager for Beginners » sacha chua :: living an awesome life | Least Action

  • Andrew

    Fantastic Stuff

  • Pingback: Visto nel Web – 79 | Ok, panico

  • http://twitter.com/b3h3m0th b3h3m0th

    very nice

  • Pat Thomasson

    This is great. As one of your less code savvy followers, this has prompted me to go a step or two back off the page from where you started and learn a bit about text editors in general. I am curious about VIM, Emacs and some other tools but I am curious about a lot of things. Thanks again for sharing.

  • naivnomore

    Hand drawn one pager is done very nicely. Good work. Succinct intro for beginners. However, It will be nice to have another one pager organized by the most frequently used commands. BTW, what did you use to create this one pager? It is really done very well. Thanks.

  • xpress razor

    Nice tutorial. Once in a while someone posts about Emacs, and I get tempted again to play with the devil. When two three days passes, I find I can’t do something, and I even don’t bother looking it up. I silently go back to vim and wait for yet another tutorial.

  • Pingback: How to Learn Emacs: A Hand-drawn One-pager for Beginners | Interesting Reads

  • Sylver Stone

    Yeap, I had to get all above summarized through (and much more) when starting with emacs. I found this post so illustrative, I’ve enjoyed it. I’m trying with emacs-prelude now and trying to learn lisp. I heard about using slime as IDE for this but I’m still at the “setting-all” stage, so crossing-fingers and go ahead.. thanks for this post..

  • Pingback: 国外的一个Emacser写的如何学习Emacs » 了解并拥有

  • Pingback: Google Hangout with Sacha Chua – koma's world

  • Pingback: Joey's Blog | Web’s Dead, Baby: Part 2

  • Pingback: How to learn Emacs keyboard shortcuts (a visual tutorial for newbies) » sacha chua :: living an awesome life

  • Pingback: Cómo aprender Emacs |

  • http://Mesacc.edu Dennis Kibbe

    Sascha, What a treasure you are for the Emacs community! This one-pager is perfect for my CIS students. :-)

  • http://www.TheIronSamurai.com/ Nick Horton

    This is wonderful. Thank you! :-)

  • http://www.propaperswriting.com/urgent-writing-services-online Margar David Profesore

    Writing Service Available With Student Discount
    Order Now: http://www.propaperswriting.com/
    Online Order Skype:+18662786235 :)

  • ej

    I really enjoyed this, thanks.