GNU Emacs is an extensible, customizable text editor—and more. At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming language with extensions to support text editing. The features of GNU Emacs include:
- Content-sensitive editing modes, including syntax coloring, for a variety of file types including plain text, source code, and HTML.
- Complete built-in documentation, including a tutorial for new users.
- Full Unicode support for nearly all human languages and their scripts.
- Highly customizable, using Emacs Lisp code or a graphical interface.
- A large number of extensions that add other functionality, including a project planner, mail and news reader, debugger interface, calendar, and more. Many of these extensions are distributed with GNU Emacs; others are available separately.
The current stable release is 24.3. To obtain it, visit the obtaining section.
Emacs 24 has a wide variety of new features, including:
- A packaging system and interface (M-x list-packages) for downloading and installing extensions. A default package archive is hosted by GNU and maintained by the Emacs developers.
- Support for displaying and editing bidirectional text, including right-to-left scripts such as Arabic and Hebrew.
- Support for lexical scoping in Emacs Lisp.
- Improvements to the Custom Themes system (M-x customize-themes).
- Unified and improved completion system in many modes and packages.
- Built-in support for GnuTLS, GTK+ 3, ImageMagick, SELinux, and Libxml2.
For more information, read the News file.
- March 11, 2013 - Emacs 24.3 released
- August 27, 2012 - Emacs 24.2 released
- June 10, 2012 - Emacs 24.1 released
- January 29, 2012 - Emacs 23.4 released
- March 10, 2011 - Emacs 23.3 released
- May 8, 2010 - Emacs 23.2 released
- July 29, 2009 - Emacs 23.1 released
- September 5, 2008 - Emacs 22.3 released
- March 26, 2008 - Emacs 22.2 released
- June 2, 2007 - Emacs 22.1 released
- Feb 6, 2005 - Emacs 21.4 released
- March 24, 2003 - Emacs 21.3 released
- March 18, 2002 - Emacs 21.2 released
- October 28, 2001 - Emacs 21.1 released
Emacs 24 runs on these operating systems regardless of the machine type:
GNU Emacs contains code for supporting several other operating systems and machine types; however, in many cases we don't know whether they still work. The definitive reference for this is the MACHINES file, which is also distributed with GNU Emacs; this file also lists the special requirements for compiling GNU Emacs on these systems.
Obtaining/Downloading GNU Emacs
Two Emacs manuals, the GNU Emacs manual and An Introduction to Programming in Emacs Lisp, can be purchased in printed form from the FSF store. These manuals, along with the Emacs Lisp Reference Manual and several other manuals documenting major modes and other optional features, can also be read online. They are also distributed with Emacs in Info format; type C-h i in Emacs to view them.
|GNU Emacs manual||Read Online||Purchase|
|An Introduction to Programming in Emacs Lisp||Read Online||Purchase|
|Emacs Lisp Reference Manual||Read Online||(out of print)|
|Other Emacs manuals||Read Online|
The Emacs distribution includes the full source code for the manuals, as well as the Emacs Reference Card in several languages.
- To ask for help with GNU Emacs, use the mailing list firstname.lastname@example.org or the newsgroup gnu.emacs.help. The mailing list and newsgroup are linked: messages posted on one appear on the other as well.
- To report bugs, or to contribute fixes and improvements, use the built-in Emacs bug reporter (M-x report-emacs-bug) or send email to email@example.com. You can browse our bug database at debbugs.gnu.org. For more information on contributing, see the CONTRIBUTE file (also distributed with Emacs).
- For all other queries, consult the list of Emacs-related mailing lists on savannah.gnu.org and the complete list of GNU mailing lists on lists.gnu.org. See Get Help with GNU Software for help with GNU software in general.
Emacs 24 includes a built-in package manager, which you can use
to download additional Emacs extensions. Type M-x
list-packages to view a list of available packages. The default
package archive is hosted by the GNU project; more archives can be
added by customizing the variable
The Emacs Wiki is a community website about using and programming Emacs, including information about optional extensions; complete manuals or documentation fragments; comments on the different Emacs versions, flavors, and ports; and references to other Emacs related information on the Web.
For those curious about Emacs history: Emacs was originally implementated in 1976 on the MIT AI Lab's Incompatible Timesharing System (ITS), as a collection of TECO macros. The name “Emacs” was originally chosen as an abbreviation of “Editor MACroS”. This version of Emacs, GNU Emacs, was originally written in 1984. For more information, see the 1981 paper by Richard Stallman, describing the design of the original Emacs and the lessons to be learned from it, and a transcript of his 2002 speech at the International Lisp Conference, My Lisp Experiences and the Development of GNU Emacs.