Emacs is a text editor which you can customize and extend in so many ways. It was written in C and provides its own implementation of Lisp, the language from which the Gods wrought the universe.
There's a reason why Emacs was featured in Tron Legacy, it is sexy! (and awesome).
You can use Emacs for all of your text processing
needs, internet and social network interactions, hacking,
coding, managing to-do's and organizing your daily schedule,
play Tetris and it can even provide you with free psychotherapy and
GNU Emacs is Free Software, free as in free beer and free as in free speech. The original Emacs was written by St. iGNUcius himself — Richard Stallman.
Not only does it give the user the four essential freedoms, its architecture is built in such a way that you have the power to mold it, change it and make it comply to your computering needs.
Why using Emacs?It's a very powerful text processor, allowing you to manipulate blocks of text, paragraphs, words, finding, replacing, using regular expressions, keyboard macros and more.
Colorful text editor
Emacs can be adapted in every possible way, including its looks.
You can strip it,
choose between several themes with
download one from another happy Emacs user or create your
own. Here's a nice gallery of themes.
Et tu, Programmer?
You get syntax highlighting, automatic indentation, running code inside the editor, debugging, code browsing, version control systems integration and much more.
Org mode helps
you keeping notes, maintaining TODO lists, planing projects and
authoring documents. You can even create HTML websites like this
one or export to your documents as LaTeX, Beamer, OpenDocuments
and many more formats.
Tramp allows you to edit remote files without
leaving Emacs. You can edit files via SSH and edit local files
with su/sudo, among other things.
ERC is a built-in IRC client
BitlBee can be used as a gateway for several IM services.
You can also use mail client, web browser, calendar, games, even
edit video and images inside Emacs. There
are more than 2,000 packages for
Emacs. You can install more packages with
list-packages from GNU
You can install Emacs on almost every operating system out there. The officially supported systems are GNU, GNU/Linux, FreeBSD, NetBSD, OpenBSD, Mac OS X, MS Windows and Solaris.
GNU Emacs is available on most GNU/Linux distributions. It's available out of the box on some of them. If it's not, you can use your system's package manager (apt, yum, pacman, etc.) or download Emacs from the GNU site.
You can download Emacs for Windows from the GNU servers.
More info on Emacs for Windows on the GNU website.
Mac OS X
Emacs is included in Mac OS X, so you can just use Terminal.app,
emacs and you're ready to roll. It's a very
old version though, and it's recommended that you use the latest
stable version which is Emacs 24.
There are various ways to install the latest Emacs on Mac OS X:
"Mastering Emacs is not the goal, it's the path." A happy Emacs user
It's not called the self-documenting real-time display editor for nothing. Emacs includes a great tutorial to teach you how to use Emacs while you're using Emacs. Mind blown? This is just the beginning.
Once you've installed Emacs, start it up. You will be greeted with a welcome screen. From there you can click on the Emacs Tutorial link with your mouse.
Instead of using your mouse, you can
Alt + X on your keyboard, which will take you
to the command mode on the lower screen of Emacs. Then
help-with-tutorial and press Enter. You just
entered the first of many Emacs commands. You know the warm
fuzzies you just got? Get used to it, because there's more where
that came from.
This interactive tutorial will teach you the basics on how to move around and edit text. It's just the tip of the iceberg, and your quest has just begun.
A great resource for starters is this visual guide to learning Emacs by Sacha Chua under a CC by license: How to Learn Emacs: A Hand-drawn One-pager for Beginners:
You can also check out these other visual guides:
Emacs is used by very happy hackers all around the globe. Lots of them are willing to help you get started or share the path they've walked along Emacs with you. It's dangerous to go alone; take this:
- The Emacs Manual — Official GNU Emacs manual. See more manuals here.
- Emacs Wiki — a collection of useful information regarding Emacs and Emacs Lisp, its extension language.
- Planet Emacsen — An Emacs planet collecting posts from many Emacs blogs.
- Mastering Emacs — A blog about mastering the world's best text editor.
- Emacs Rocks — a series of videos teaching about Emacs. Includes a series on extending it.
- What the .emacs.d!? — Blog from the same author as Emacs Rocks, about setting up your .emacs.d.
- Emacs Movies — Tutorial screencasts for Emacs.
- Awesome Emacs — A community driven list of useful Emacs packages, libraries and others.
- /r/emacs — Reddit is a virtual community of (generally) very nice people. You can create an account there and share your questions, progress and snippets about Emacs on the Emacs subreddit.
- Q&A site for those using, extending or developing emacs