Getting started with Emacs
Thinking about beginning your journey with emacs? Awesome! You’re in for a great time.
Here, let me help you with your initial steps - why emacs? Resources? Help? Options? - I’ll try to cover these.
If you do a quick search “getting started with emacs” you will find nice results. But they all try to go in-depth about emacs and because emacs is VAST, they can’t cover all the grounds. One needs to fly to be able to cover maximum ground. So, I’ll point you to resources, give short concise explanations and won’t talk about key-bindings!
- Why the hell not? (kidding - no, not kidding)
- Why Use Emacs (official)
- Batsov on Why EmacsThat post is long. It's a great read. Here is what it has to say:
- Efficient text editing (really efficient)
- The tool of a tinkerer
- Everything is possible
- Every popular programming language is supported
- Typesetting, LaTeX, charts, emails, IRC, terminal support
- Extensible (add: beyond imagination)
- Integration with external tools
- Client - Server capabilities
Emacs is undoubtedly the most powerful programmer’s editor in existence. It’s a big, feature-laden program with a great deal of flexibility and customizability. As we observed in the Chapter 14 section on Emacs Lisp, Emacs has an entire programming language inside it that can be used to write arbitrarily powerful editor functions. -Eric S. Raymond - The Art of UNIX Programming
- Emacs breaths openness. The language used in programming it, the way it handles data - everything feels open. You can look into emacs at any time from within emacs. It exposes APIs but also allows you to explore the internals, modify and extend them. Personally, I'm amazed at its openness.
- Fabulous and active community
- Users of all levels and professions (we have started online hangouts!)
- A lot of resources to learn from
If this didn’t convince you enough, start using it for a week. And then you won’t go back - ever.
- Start emacs and go through the Emacs Tutorial. (Search how to do that)
- After having it used for, say a week or two, there are two ways to proceed - Technomancy's starter kit and other starter kits such as purcell and magnars. It's up to you which way you want to go.
- Keep using emacs as your primary editor.
What I did was that I started using emacs in its “vanilla” form and kept it that way for 3 months because I didn’t know what all it could do. But I kept at it because I liked the key-bindings. This got me used to the key-bindings really well. I didn’t have to think what to press when I wanted to move. Then, I read a few things about how extensible it is and can do amazing things. So I thought, may be I should invest some time in it. I installed purcell’s starter kit and used sublime as backup editor. This could be a good way for you to get going.
I will try to keep these updated. If you happen to know more leave them in comments and I’ll add them.
- Emacs Wiki
- Emacs IRC channels - join us!
- Emacs on Reddit
- Mastering Emacs - Mickey Petersen - he has written an amazing book to! The best one out there.
- Sacha on Emacs - she is active and organizes hangouts etc
- Emacs on Twitter
- Emacs maintainer on Twitter (find others from there)
- Emacsrocks - YouTube
- Sacha on YouTube
- Editor of a lifetime - YouTube video
- Howard Abrams - YouTube
- Planet Emacsen - Suggestion by Sacha
- Emacs Newbie - Suggestion by Sacha
- Emacs by Ernst de Hart (look at the home page, you will know, fantastic.)
- Emacs Stack Exchange (Thanks to Emil for pointing it out)
There are more of course, but this list should get you started. And now it seems the list will just keep getting longer!
Now that you know a lot of people and places to go to, explore those realms and find amazing stuff. Most of the emacs veterans have their config files online. Explore them and tweak things to your liking.
Now you can walk on your own. Remove that starter kit, remove the training wheels and start flying on your own! Don’t be afraid, you’ve got all it requires. Some things you might want to get into at this stage:
- Learn elisp. Emacs also has inbuilt introduction to elisp and the manual.
- Subscribe to emacs-devel mailing list
- Start contributing to emacs
I’ve just started learning elisp and I have no background of lisp but community is really helping me out and I’m learning pretty well. The best thing I liked about emacs community is #emacs. The channels is active, off-topic most of the time but never fails to answer questions. You will get answers almost instantly.
Recently, we got a new maintainer - John. He is a cool guy and is keeping the community active. He along with other people like Sacha etc are managing twitter accounts, organizing hangouts, helping people on #emacs, posting tutorials on YouTube, writing blog posts and doing interviews.
Things like these make emacs even more fun. Text editing is already amazing with it, but a nice community is making it extraordinary.
Come join us! We shall have fun together :-)