Emacs

Emacs is a highly extensible text editor. It is built on a C core, and provides a fully featured Lisp environment (the language from which the Gods wrought the universe).

There's a reason why Emacs was featured in Tron Legacy - because it's sexy!

Emacs

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, playing Tetris, and many other awesome things. It can even provide you with free psychotherapy and counseling using the built in doctor. A vibrant community of hackers is constantly writing new extensions, thanks to the power of the Emacs Lisp environment.

GNU Emacs is Free Software, both 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 use Emacs?

Emacs is a very powerful text processor, giving you the power to manipulate documents quickly and efficiently. You can easily move through and edit paragraphs, sentences, words, and logical blocks; blaze through text using powerful search tools; and easily edit thousands of lines at once using regular expressions, keyboard macros and more.

Colorful text editor

Emacs can be customized in every conceivable way, including its looks. You can strip it down, choose between dozens of easy to install themes with M-x load-theme, or even create your own and share it with your friends. Here are a couple of nice theme galleries: Emacs Themes, Emacs Theme Gallery.

Et tu, Programmer?

There are tools for every programming language out there. Lisp, Ruby, Python, PHP, Java, Erlang, JavaScript, C, C++, Prolog, Tcl, AWK, PostScript, Clojure, Scala, Perl, Haskell, Elixir all of these languages and more are supported in Emacs. Because of the powerful Lisp core, Emacs is easy to extend to add support for new languages if the urge strikes you.

You get lots of features out of the box, including syntax highlighting, automatic indentation, REPL support, debugging, code browsing, version control integration and much more.

Vim user?

Let me tell you about Spacemacs! Spacemacs is a community-driven Emacs distribution that brings together the world of Vim and Emacs into one text editor. It also features ergonomics and mnemonic key binding design, and also works great as a starter pack for newcomers.

If you just want to use Vim inside Emacs, you can check out Evil Mode, an extensible vi layer for Emacs that emulates the main features of Vim.

More!

Org mode helps you to keep notes, maintain TODO lists, plan projects and author documents. You can use your Org documents to create HTML websites like this one or export to LaTeX, Beamer, OpenDocuments and many other formats.

Tramp allows you to edit remote files without leaving Emacs. You can seamlessly edit files on remote servers via SSH or FTP, edit local files with su/sudo, and much more.

M-x butterfly unleashes the powers of the butterfly. The real way of programming.

Use the built in IRC client ERC along with BitlBee to connect to your favorite chat services, or use the Jabber package to hop on any XMPP service.

Out of the box Emacs includes a mail client, web browser, calendar, and games; you can even edit video and images inside Emacs. There are more than 3,000 packages for Emacs, and more are written all the time. You can easily extend your Emacs with new packages from GNU ELPA and MELPA repositories.

Installing Emacs

Emacs is easy to install on almost every operating system out there. Officially supported systems include GNU/Linux, Mac OS X, Microsoft Windows, GNU/Hurd, FreeBSD, NetBSD, OpenBSD, and Solaris. Read the following instructions:

GNU/Linux

GNU Emacs is available on every major GNU/Linux distribution. It's available out of the box on several of them, and if it's not you can install it with your system's package manager or download Emacs directly from GNU.

Mac OS X

Emacs is included in Mac OS X, so you can just use Terminal.app, type emacs and you're ready to roll. It's an old version though, and it's recommended that you use the latest stable version. To get the latest and greatest features, there are community built packages like Emacs For OS X or Homebrew that are easy to install.

You can find more info about Emacs on OS X here.

Windows

Windows users can download Emacs for Windows from the GNU servers.

There is also more info on Emacs for Windows on the GNU website.

Download these alternative icons

You can also download an icns file for macOS here.

Learn Emacs

"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 and started it up, you will be greeted with a welcome screen. From here you can click on the Emacs Tutorial link with your mouse.

Or if you're the keyboard type, you can press Alt + X on your keyboard, which will take you to the command mode in the lower screen of Emacs. Type in 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, which she has kindly made available under a Creative Commons "by" license: How to Learn Emacs: A Hand-drawn One-pager for Beginners: How to
                                                            Learn Emacs

You can also check out these other visual guides:

Resources

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 Redux — Useful tips and tricks to make your experience with Emacs more productive and more enjoyable
  • Picando Código: Emacs - (En español) Escribo sobre Emacs en mi blog.
  • What the .emacs.d!? — Blog from the same author as Emacs Rocks, about setting up your .emacs.d.
  • Using Emacs Series — Tutorial screencasts for Emacs.
  • Awesome Emacs — A community driven list of useful Emacs packages, libraries and others.
  • @emacs@lemmy.ml — Lemmy is a virtual community of nice people. You can create an account there and share your questions, progress and snippets about Emacs on the Emacs sub-lemmy.
  • Emacs StackExchange — Q&A site for those using, extending or developing emacs.
  • Spacemacs — An Emacs distribution, uses Evil Mode to combine the ergonomic editing features of Vim with the extensibility of Emacs.
  • Doom Emacs — Minimalistic modern Emacs distribution that is light and fast.
  • Emacs Bootstrap — Generate on-the-fly Emacs development environment. It lets you select the programming languages you work with and generates enough Emacs config files to get you started.
  • Emacs Rocks — a series of videos teaching about Emacs. Includes a series on extending it.

be free.