tags:

views:

362

answers:

5

I'd like to learn Emacs, and was wondering if anyone had any good resources (free or otherwise) to recommend. I'm mostly interested in programming Emacs, starting from the basics, and lots of "exercises". I have used Emacs and most of its editing features, although I'm a bit rusty so a very quick refresher on that would be useful as well.

Thanks

Edit: Thanks for the suggestions. I'll have a look and update with what I liked...

+3  A: 

Programming in Emacs Lisp (Second Edition) - free online book

Nick D
+3  A: 

Emacs itself includes a tutorial with exercises that guides you through the basic features and editing commands. You can find it in the Menu under 'Help' or by pressing C-h t (i.e. press Control and 'h' together and then 't' alone).

jgre
Yeah, I know the tutorial. Unfortunately, it's only about editing and working with files, without any elisp.
Tal Pressman
+3  A: 

One thing to bear in mind is that all emacs configuration is programming.

PlanetEmacsen is a good RSS feed with lots of tips.

Xah Lee although he is apparently considered a bad troll, has some great emacs programming stuff.

Also whenever there's a function or keyboard shortcut you're not sure of, try C-h f and C-h k respectively, then follow the link to the source code for that command.

For exercises, Lair of the DustBunny did a very long series on rewriting python mode from scratch.

You could also try writing the PLEAC elisp section. That's a very good way to compare elisp to your favourite language.

Singletoned
"One thing to bear in mind is that all emacs configuration is programming." While strictly speaking that's true (it's all elisp under the hood), customize (http://www.gnu.org/software/emacs/manual/html_node/emacs/Easy-Customization.html) makes simple things simple.
Matthew Flaschen
+4  A: 
  1. GNU Emacs manual
  2. GNU Emacs lisp reference
  3. emacswiki
dfa
The Emacs Lisp reference is a good start.
Martin Geisler
A: 

Last week I purchased this Peepcode screencast and really liked it. It walks you through the basic features (editing, loading saving, buffers) but also dives into some advances topics, like programming emacs lisp:

http://peepcode.com/products/meet-emacs

flitzwald