You are reading about SXEmacs, an incarnation of the advanced, self-documenting, customizable, extensible real-time display editor Emacs. SXEmacs provides many powerful display and user-interface capabilities not found in other Emacsen and is mostly upwardly compatible with GNU Emacs from the Free Software Foundation (referred to as FSF Emacs in this manual). SXEmacs also comes standard with a great number of useful packages.
We say that SXEmacs is a display editor because normally the text being edited is visible on the screen and is updated automatically as you type. See Display.
We call SXEmacs a real-time editor because the display is updated very frequently, usually after each character or pair of characters you type. This minimizes the amount of information you must keep in your head as you edit. See Basic Editing.
We call SXEmacs advanced because it provides facilities that go beyond simple insertion and deletion: filling of text; automatic indentation of programs; viewing two or more files at once; and dealing in terms of characters, words, lines, sentences, paragraphs, and pages, as well as expressions and comments in several different programming languages. It is much easier to type one command meaning “go to the end of the paragraph” than to find that spot with simple cursor keys.
Self-documenting means that at any time you can type a special character, Control-h, to find out what your options are. You can also use C-h to find out what a command does, or to find all the commands relevant to a topic. See Help.
Customizable means you can change the definitions of SXEmacs commands. For example, if you use a programming language in which comments start with ‘<**’ and end with ‘**>’, you can tell the SXEmacs comment manipulation commands to use those strings (see Comments). Another sort of customization is rearrangement of the command set. For example, you can set up the four basic cursor motion commands (up, down, left and right) on keys in a diamond pattern on the keyboard if you prefer. See Customization.
Extensible means you can go beyond simple customization and write entirely new commands, programs in the Lisp language to be run by SXEmacs’ own Lisp interpreter. SXEmacs is an “on-line extensible” system: it is divided into many functions that call each other. You can redefine any function in the middle of an editing session and replace any part of SXEmacs without making a separate copy of all of SXEmacs. Most of the editing commands of SXEmacs are written in Lisp; the few exceptions could have been written in Lisp but are written in C for efficiency. Only a programmer can write an extension to SXEmacs, but anybody can use it afterward.