The Emacs editor

Professor Futrelle -- College of Computer Science, Northeastern U., Boston, MA

Updated March 20, 2003


Introduction

Emacs, either in a telnet window or on an X windows system, is probably the most popular editor for Unix (and Linux) systems. Unlike Vi, it is a modeless editor, meaning that any character you type will either be a command or will enter text on the screen (in your buffer or mini-buffer). Commands are differentiated from text by being type with the Control or Meta key (keys held down when another character is typed). An example is the command "save-buffer". It is entered by holding down the Control key and typing an 'x' (lower case is OK) and holding down the Control key again (or continuing to hold it down) and typing 's' (for "save" of course). The standard designator for this key sequence is "C-x C-s".

Note that when running under X windows on the CCIS Sun Solaris systems, execution of 'emacs' will give you a version of the editor with pull-down menus. You can also execute 'xemacs' to get an enhanced version of emacs with a richer user interface. See the XEmacs homepage for more information.

Since you normally don't have the Meta key required for commands involving them when using Telnet, entering an Escape will normally mimic holding down the Meta key for one character which you then enter after releasing the Escape key. One of the more common uses of the Meta key is to prefix a command with Meta-x ("M-x") which then allows you to type an extended command into the mini-buffer at the very bottom of your Emacs window, for commands that don't have assigned key combinations. The mini-buffer is also where you enter search strings, etc.

Gnu Emacs is the most famous product of the Gnu Project, a central player in the Free Software movement. Gnu Emacs, which is the Emacs installed on the CCS Solaris systems, is well-documented all over the net, as well as having extensive internal documentation, readily available from within the editor itself. Personally, I quit using the Vi editor more than ten years ago and only use Emacs now, on Unix systems. My web development is done almost exclusively on my G4 Mac using BBEdit.

Note: In Emacs, a Control-g (C-g) will cancel any command you're in the middle of, in case you change your mind for any reason.

On-line Emacs resources


Go to Futrelle's Teaching Gateway

Return to Prof. Futrelle's home page