emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/man/emacs.texi [gnus-5_10-branch]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/man/emacs.texi [gnus-5_10-branch]
Date: Sat, 04 Sep 2004 08:28:02 -0400

Index: emacs/man/emacs.texi
diff -c /dev/null emacs/man/emacs.texi:1.80.2.1
*** /dev/null   Sat Sep  4 12:02:57 2004
--- emacs/man/emacs.texi        Sat Sep  4 12:01:15 2004
***************
*** 0 ****
--- 1,1555 ----
+ \input texinfo
+ 
+ @setfilename ../info/emacs
+ @settitle GNU Emacs Manual
+ 
+ @c The edition number appears in several places in this file
+ @set EDITION   Fourteenth
+ @set EMACSVER  21.3.50
+ 
+ @copying
+ This is the @value{EDITION} edition of the @cite{GNU Emacs Manual},
+ updated for Emacs version @value{EMACSVER}.
+ 
+ Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998,
+ 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
+ 
+ @quotation
+ Permission is granted to copy, distribute and/or modify this document
+ under the terms of the GNU Free Documentation License, Version 1.1 or
+ any later version published by the Free Software Foundation; with the
+ Invariant Sections being ``The GNU Manifesto'', ``Distribution'' and
+ ``GNU GENERAL PUBLIC LICENSE'', with the Front-Cover texts being ``A GNU
+ Manual,'' and with the Back-Cover Texts as in (a) below.  A copy of the
+ license is included in the section entitled ``GNU Free Documentation
+ License.''
+ 
+ (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
+ this GNU Manual, like GNU software.  Copies published by the Free
+ Software Foundation raise funds for GNU development.''
+ @end quotation
+ @end copying
+ 
+ @dircategory Emacs
+ @direntry
+ * Emacs: (emacs).     The extensible self-documenting text editor.
+ @end direntry
+ 
+ @c in general, keep the following line commented out, unless doing a
+ @c copy of this manual that will be published.  the manual should go
+ @c onto the distribution in the full, 8.5 x 11" size.
+ 
+ @c @smallbook
+ 
+ @setchapternewpage odd
+ @defcodeindex op
+ @synindex pg cp
+ 
+ @iftex
+ @kbdinputstyle code
+ 
+ @shorttitlepage GNU Emacs Manual
+ @end iftex
+ 
+ @titlepage
+ @sp 6
+ @center @titlefont{GNU Emacs Manual}
+ @sp 4
+ @center @value{EDITION} Edition, Updated for Emacs Version @value{EMACSVER}.
+ @sp 5
+ @center Richard Stallman
+ @page
+ @vskip 0pt plus 1filll
+ @insertcopying
+ 
+ @sp 2
+ ISBN 1-882114-06-X @*
+ Published by the Free Software Foundation @*
+ 59 Temple Place, Suite 330 @*
+ Boston, MA  02111-1307 USA
+ 
+ @sp 2
+ Cover art by Etienne Suvasa.
+ 
+ @end titlepage
+ @page
+ @ifnottex
+ @node Top, Distrib, (dir), (dir)
+ @top The Emacs Editor
+ 
+ Emacs is the extensible, customizable, self-documenting real-time
+ display editor.  This Info file describes how to edit with Emacs and
+ some of how to customize it; it corresponds to GNU Emacs version
+ @value{EMACSVER}.
+ 
+ @ifinfo
+ If you never before used the Info documentation system, type @kbd{h},
+ and Emacs will take you to a programmed instruction sequence for the
+ Info commands.
+ @end ifinfo
+ 
+ For information on extending Emacs, see @ref{Top, Emacs Lisp,, elisp, The
+ Emacs Lisp Reference Manual}.
+ @end ifnottex
+ 
+ @ignore
+ These subcategories have been deleted for simplicity
+ and to avoid conflicts.
+ Completion
+ Backup Files
+ Auto-Saving: Protection Against Disasters
+ Snapshots
+ Text Mode
+ Outline Mode
+ @TeX{} Mode
+ Formatted Text
+ Fortran Mode
+ Fortran Indentation
+ Shell Command History
+ 
+ The ones for Dired and Rmail have had the items turned into :: items
+ to avoid conflicts.
+ Also Running Shell Commands from Emacs
+ and Sending Mail and Registers and Minibuffer.
+ @end ignore
+ 
+ @menu
+ * Distrib::           How to get the latest Emacs distribution.
+ * Copying::           The GNU General Public License gives you permission
+                         to redistribute GNU Emacs on certain terms;
+                         it also explains that there is no warranty.
+ * GNU Free Documentation License:: The license for this documentation.
+ * Intro::             An introduction to Emacs concepts.
+ * Glossary::          The glossary.
+ * Antinews::          Information about Emacs version 20.
+ * Mac OS::              Using Emacs in the Mac.
+ * MS-DOS::              Using Emacs on MS-DOS (otherwise known as "MS-DOG").
+ * Manifesto::         What's GNU?  Gnu's Not Unix!
+ * Acknowledgments::     Major contributors to GNU Emacs.
+ 
+ Indexes (nodes containing large menus)
+ * Key Index::         An item for each standard Emacs key sequence.
+ * Command Index::       An item for each command name.
+ * Variable Index::      An item for each documented variable.
+ * Concept Index::       An item for each concept.
+ @c This is last because @ifnottex leaves an empty line.
+ @ifnottex
+ * Option Index::        An item for every command-line option.
+ @end ifnottex
+ 
+ Important General Concepts
+ * Screen::            How to interpret what you see on the screen.
+ * User Input::                Kinds of input events (characters, buttons,
+                           function keys).
+ * Keys::              Key sequences: what you type to request one
+                           editing action.
+ * Commands::          Named functions run by key sequences to do editing.
+ * Text Characters::     Character set for text (the contents of buffers
+                         and strings).
+ * Entering Emacs::      Starting Emacs from the shell.
+ * Exiting::           Stopping or killing Emacs.
+ * Command Arguments::   Hairy startup options.
+ 
+ Fundamental Editing Commands
+ * Basic::             The most basic editing commands.
+ * Minibuffer::                Entering arguments that are prompted for.
+ * M-x::                       Invoking commands by their names.
+ * Help::              Commands for asking Emacs about its commands.
+ 
+ Important Text-Changing Commands
+ * Mark::              The mark: how to delimit a ``region'' of text.
+ * Killing::           Killing (cutting) text.
+ * Yanking::           Recovering killed text.  Moving text. (Pasting.)
+ * Accumulating Text::   Other ways of copying text.
+ * Rectangles::                Operating on the text inside a rectangle on the 
screen.
+ * Registers::         Saving a text string or a location in the buffer.
+ * Display::           Controlling what text is displayed.
+ * Search::            Finding or replacing occurrences of a string.
+ * Fixit::             Commands especially useful for fixing typos.
+ * Keyboard Macros::   A keyboard macro records a sequence of
+                         keystrokes to be replayed with a single command.
+ 
+ Major Structures of Emacs
+ * Files::             All about handling files.
+ * Buffers::           Multiple buffers; editing several files at once.
+ * Windows::           Viewing two pieces of text at once.
+ * Frames::            Running the same Emacs session in multiple X windows.
+ * International::       Using address@hidden character sets (the MULE 
features).
+ 
+ Advanced Features
+ * Major Modes::               Text mode vs. Lisp mode vs. C mode ...
+ * Indentation::               Editing the white space at the beginnings of 
lines.
+ * Text::              Commands and modes for editing English.
+ * Programs::          Commands and modes for editing programs.
+ * Building::          Compiling, running and debugging programs.
+ * Maintaining::         Features for maintaining large programs.
+ * Abbrevs::           How to define text abbreviations to reduce
+                         the number of characters you must type.
+ * Picture::           Editing pictures made up of characters
+                         using the quarter-plane screen model.
+ * Sending Mail::        Sending mail in Emacs.
+ * Rmail::             Reading mail in Emacs.
+ * Dired::             You can ``edit'' a directory to manage files in it.
+ * Calendar/Diary::      The calendar and diary facilities.
+ * Gnus::              How to read netnews with Emacs.
+ * Shell::             Executing shell commands from Emacs.
+ * Emacs Server::        Using Emacs as an editing server for @code{mail}, etc.
+ * Hardcopy::          Printing buffers or regions.
+ * PostScript::                Printing buffers or regions as PostScript.
+ * PostScript Variables::
+                         Customizing the PostScript printing commands.
+ * Sorting::           Sorting lines, paragraphs or pages within Emacs.
+ * Narrowing::         Restricting display and editing to a portion
+                         of the buffer.
+ * Two-Column::                Splitting apart columns to edit them
+                         in side-by-side windows.
+ * Editing Binary Files::
+                         Using Hexl mode to edit binary files.
+ * Saving Emacs Sessions::
+                         Saving Emacs state from one session to the next.
+ * Recursive Edit::      A command can allow you to do editing
+                         "within the command".  This is called a
+                         "recursive editing level".
+ * Emulation::         Emulating some other editors with Emacs.
+ * Hyperlinking::        Following links in buffers.
+ * Dissociated Press::   Dissociating text for fun.
+ * Amusements::                Various games and hacks.
+ * Customization::       Modifying the behavior of Emacs.
+ * X Resources::         X resources for customizing Emacs.
+ 
+ Recovery from Problems
+ * Quitting::          Quitting and aborting.
+ * Lossage::           What to do if Emacs is hung or malfunctioning.
+ * Bugs::              How and when to report a bug.
+ * Contributing::        How to contribute improvements to Emacs.
+ * Service::           How to get help for your own Emacs needs.
+ 
+ Here are some other nodes which are really inferiors of the ones
+ already listed, mentioned here so you can get to them in one step:
+ 
+  --- The Detailed Node Listing ---
+ 
+ The Organization of the Screen
+ 
+ * Point::             The place in the text where editing commands operate.
+ * Echo Area::           Short messages appear at the bottom of the screen.
+ * Mode Line::         Interpreting the mode line.
+ * Menu Bar::            How to use the menu bar.
+ 
+ Basic Editing Commands
+ 
+ * Inserting Text::      Inserting text by simply typing it.
+ * Moving Point::        How to move the cursor to the place where you want to
+                         change something.
+ * Erasing::           Deleting and killing text.
+ * Undo::              Undoing recent changes in the text.
+ * Files: Basic Files.   Visiting, creating, and saving files.
+ * Help: Basic Help.     Asking what a character does.
+ * Blank Lines::               Commands to make or delete blank lines.
+ * Continuation Lines::  Lines too wide for the screen.
+ * Position Info::       What page, line, row, or column is point on?
+ * Arguments::         Numeric arguments for repeating a command.
+ 
+ The Minibuffer
+ 
+ * Minibuffer File::     Entering file names with the minibuffer.
+ * Minibuffer Edit::     How to edit in the minibuffer.
+ * Completion::                An abbreviation facility for minibuffer input.
+ * Minibuffer History::        Reusing recent minibuffer arguments.
+ * Repetition::                Re-executing commands that used the minibuffer.
+ 
+ Help
+ 
+ * Help Summary::      Brief list of all Help commands.
+ * Key Help::          Asking what a key does in Emacs.
+ * Name Help::         Asking about a command, variable or function name.
+ * Apropos::           Asking what pertains to a given topic.
+ * Library Keywords::  Finding Lisp libraries by keywords (topics).
+ * Language Help::       Help relating to international language support.
+ * Misc Help::         Other help commands.
+ 
+ The Mark and the Region
+ 
+ * Setting Mark::      Commands to set the mark.
+ * Transient Mark::    How to make Emacs highlight the region--
+                         when there is one.
+ * Using Region::      Summary of ways to operate on contents of the region.
+ * Marking Objects::   Commands to put region around textual units.
+ * Mark Ring::         Previous mark positions saved so you can go back there.
+ * Global Mark Ring::  Previous mark positions in various buffers.
+ 
+ Deletion and Killing
+ 
+ * Deletion::          Commands for deleting small amounts of text and
+                         blank areas.
+ * Killing by Lines::  How to kill entire lines of text at one time.
+ * Other Kill Commands:: Commands to kill large regions of text and
+                         syntactic units such as words and sentences.
+ 
+ Yanking
+ 
+ * Kill Ring::         Where killed text is stored.  Basic yanking.
+ * Appending Kills::   Several kills in a row all yank together.
+ * Earlier Kills::     Yanking something killed some time ago.
+ 
+ Registers
+ 
+ * RegPos::            Saving positions in registers.
+ * RegText::           Saving text in registers.
+ * RegRect::           Saving rectangles in registers.
+ * RegConfig::           Saving window configurations in registers.
+ * RegFiles::          File names in registers.
+ * Bookmarks::           Bookmarks are like registers, but persistent.
+ 
+ Controlling the Display
+ 
+ * Scrolling::            Moving text up and down in a window.
+ * Horizontal Scrolling::   Moving text left and right in a window.
+ * Follow Mode::            Follow mode lets two windows scroll as one.
+ * Selective Display::      Hiding lines with lots of indentation.
+ * Optional Mode Line::     Optional mode line display features.
+ * Text Display::           How text is normally displayed.
+ * Display Custom::         Information on variables for customizing display.
+ 
+ Searching and Replacement
+ 
+ * Incremental Search::           Search happens as you type the string.
+ * Nonincremental Search::  Specify entire string and then search.
+ * Word Search::                  Search for sequence of words.
+ * Regexp Search::        Search for match for a regexp.
+ * Regexps::              Syntax of regular expressions.
+ * Search Case::                  To ignore case while searching, or not.
+ * Replace::              Search, and replace some or all matches.
+ * Other Repeating Search:: Operating on all matches for some regexp.
+ 
+ Replacement Commands
+ 
+ * Unconditional Replace::  Replacing all matches for a string.
+ * Regexp Replace::       Replacing all matches for a regexp.
+ * Replacement and Case::   How replacements preserve case of letters.
+ * Query Replace::        How to use querying.
+ 
+ Commands for Fixing Typos
+ 
+ * Kill Errors::         Commands to kill a batch of recently entered text.
+ * Transpose::         Exchanging two characters, words, lines, lists...
+ * Fixing Case::         Correcting case of last word entered.
+ * Spelling::          Apply spelling checker to a word or a whole buffer.
+ 
+ Keyboard Macros
+ 
+ * Basic Keyboard Macro::     Defining and running keyboard macros.
+ * Keyboard Macro Ring::      Where previous keyboard macros are saved.
+ * Keyboard Macro Counter::   Inserting incrementing numbers in macros.
+ * Keyboard Macro Query::     Making keyboard macros do different things each 
time.
+ * Save Keyboard Macro::      Giving keyboard macros names; saving them in 
files.
+ * Edit Keyboard Macro::      Editing keyboard macros.
+ * Keyboard Macro Step-Edit::   Interactively executing and editing a keyboard 
macro.
+ 
+ File Handling
+ 
+ * File Names::          How to type and edit file-name arguments.
+ * Visiting::            Visiting a file prepares Emacs to edit the file.
+ * Saving::              Saving makes your changes permanent.
+ * Reverting::           Reverting cancels all the changes not saved.
+ * Auto Save::           Auto Save periodically protects against loss of data.
+ * File Aliases::        Handling multiple names for one file.
+ * Version Control::     Version control systems (RCS, CVS and SCCS).
+ * Directories::         Creating, deleting, and listing file directories.
+ * Comparing Files::     Finding where two files differ.
+ * Misc File Ops::       Other things you can do on files.
+ * Compressed Files::    Accessing compressed files.
+ * Remote Files::        Accessing files on other sites.
+ * Quoted File Names::   Quoting special characters in file names.
+ 
+ Saving Files
+ 
+ * Backup::              How Emacs saves the old version of your file.
+ * Interlocking::        How Emacs protects against simultaneous editing
+                           of one file by two users.
+ 
+ Version Control
+ 
+ * Introduction to VC::  How version control works in general.
+ * VC Mode Line::     How the mode line shows version control status.
+ * Basic VC Editing::    How to edit a file under version control.
+ * Old Versions::        Examining and comparing old versions.
+ * Secondary VC Commands::    The commands used a little less frequently.
+ * Branches::            Multiple lines of development.
+ * Snapshots::           Sets of file versions treated as a unit.
+ * Miscellaneous VC::    Various other commands and features of VC.
+ * Customizing VC::      Variables that change VC's behavior.
+ 
+ Using Multiple Buffers
+ 
+ * Select Buffer::       Creating a new buffer or reselecting an old one.
+ * List Buffers::        Getting a list of buffers that exist.
+ * Misc Buffer::               Renaming; changing read-onliness; copying text.
+ * Kill Buffer::               Killing buffers you no longer need.
+ * Several Buffers::     How to go through the list of all buffers
+                         and operate variously on several of them.
+ * Indirect Buffers::    An indirect buffer shares the text of another buffer.
+ 
+ Multiple Windows
+ 
+ * Basic Window::        Introduction to Emacs windows.
+ * Split Window::        New windows are made by splitting existing windows.
+ * Other Window::        Moving to another window or doing something to it.
+ * Pop Up Window::       Finding a file or buffer in another window.
+ * Force Same Window::   Forcing certain buffers to appear in the selected
+                           window rather than in another window.
+ * Change Window::       Deleting windows and changing their sizes.
+ 
+ Frames and X Windows
+ 
+ * Mouse Commands::      Moving, cutting, and pasting, with the mouse.
+ * Secondary Selection:: Cutting without altering point and mark.
+ * Clipboard::           Using the clipboard for selections.
+ * Mouse References::    Using the mouse to select an item from a list.
+ * Menu Mouse Clicks::   Mouse clicks that bring up menus.
+ * Mode Line Mouse::     Mouse clicks on the mode line.
+ * Creating Frames::     Creating additional Emacs frames with various 
contents.
+ * Frame Commands::      Iconifying, deleting, and switching frames.
+ * Speedbar::            How to make and use a speedbar frame.
+ * Multiple Displays::   How one Emacs job can talk to several displays.
+ * Special Buffer Frames::  You can make certain buffers have their own frames.
+ * Frame Parameters::    Changing the colors and other modes of frames.
+ * Scroll Bars::               How to enable and disable scroll bars; how to 
use them.
+ * Wheeled Mice::        Using mouse wheels for scrolling.
+ * Menu Bars::         Enabling and disabling the menu bar.
+ * Tool Bars::           Enabling and disabling the tool bar.
+ * Dialog Boxes::        Controlling use of dialog boxes.
+ * Faces::             How to change the display style using faces.
+ * Font Lock::           Minor mode for syntactic highlighting using faces.
+ * Highlight Changes::   Using colors to show where you changed the buffer.
+ * Highlight Interactively:: Tell Emacs what text to highlight.
+ * Useless Whitespace::  Showing possibly-spurious trailing whitespace.
+ * Tooltips::            Showing "tooltips", AKA "ballon help" for active text.
+ * Mouse Avoidance::     Moving the mouse pointer out of the way.
+ * Non-Window Terminals::  Multiple frames on terminals that show only one.
+ * XTerm Mouse::         Using the mouse in an XTerm terminal emulator.
+ 
+ International Character Set Support
+ 
+ * International Chars::     Basic concepts of multibyte characters.
+ * Enabling Multibyte::      Controlling whether to use multibyte characters.
+ * Language Environments::   Setting things up for the language you use.
+ * Input Methods::           Entering text characters not on your keyboard.
+ * Select Input Method::     Specifying your choice of input methods.
+ * Coding Systems::          Character set conversion when you read and
+                               write files, and so on.
+ * Recognize Coding::        How Emacs figures out which conversion to use.
+ * Specify Coding::          Various ways to choose which conversion to use.
+ * Fontsets::                Fontsets are collections of fonts
+                               that cover the whole spectrum of characters.
+ * Defining Fontsets::       Defining a new fontset.
+ * Single-Byte Character Support::
+                             You can pick one European character set
+                             to use without multibyte characters.
+ 
+ Major Modes
+ 
+ * Choosing Modes::      How major modes are specified or chosen.
+ 
+ Indentation
+ 
+ * Indentation Commands::  Various commands and techniques for indentation.
+ * Tab Stops::           You can set arbitrary "tab stops" and then
+                           indent to the next tab stop when you want to.
+ * Just Spaces::                 You can request indentation using just spaces.
+ 
+ Commands for Human Languages
+ 
+ * Words::             Moving over and killing words.
+ * Sentences::         Moving over and killing sentences.
+ * Paragraphs::                Moving over paragraphs.
+ * Pages::             Moving over pages.
+ * Filling::           Filling or justifying text.
+ * Case::              Changing the case of text.
+ * Text Mode::         The major modes for editing text files.
+ * Outline Mode::        Editing outlines.
+ * TeX Mode::          Editing input to the formatter TeX.
+ * Nroff Mode::                Editing input to the formatter nroff.
+ * Formatted Text::      Editing formatted text directly in WYSIWYG fashion.
+ 
+ Filling Text
+ 
+ * Auto Fill::         Auto Fill mode breaks long lines automatically.
+ * Fill Commands::       Commands to refill paragraphs and center lines.
+ * Fill Prefix::               Filling paragraphs that are indented
+                           or in a comment, etc.
+ * Adaptive Fill::       How Emacs can determine the fill prefix automatically.
+ 
+ Editing Programs
+ 
+ * Program Modes::       Major modes for editing programs.
+ * Defuns::              Commands to operate on major top-level parts
+                           of a program.
+ * Program Indent::      Adjusting indentation to show the nesting.
+ * Comments::          Inserting, killing, and aligning comments.
+ * Parentheses::         Commands that operate on parentheses.
+ * Documentation::       Getting documentation of functions you plan to call.
+ * Hideshow::            Displaying blocks selectively.
+ * Symbol Completion::   Completion on symbol names of your program or 
language.
+ * Glasses::             Making identifiersLikeThis more readable.
+ * Misc for Programs::   Other Emacs features useful for editing programs.
+ * C Modes::             Special commands of C, C++, Objective-C,
+                           Java, and Pike modes.
+ * Fortran::             Fortran mode and its special features.
+ * Asm Mode::            Asm mode and its special features.
+ 
+ Top-Level Definitions, or Defuns
+ 
+ * Left Margin Paren::   An open-paren or similar opening delimiter
+                           starts a defun if it is at the left margin.
+ * Moving by Defuns::    Commands to move over or mark a major definition.
+ * Imenu::               Making buffer indexes as menus.
+ * Which Function::      Which Function mode shows which function you are in.
+ 
+ Indentation for Programs
+ 
+ * Basic Indent::      Indenting a single line.
+ * Multi-line Indent::   Commands to reindent many lines at once.
+ * Lisp Indent::               Specifying how each Lisp function should be 
indented.
+ * C Indent::          Extra features for indenting C and related modes.
+ * Custom C Indent::   Controlling indentation style for C and related modes.
+ 
+ Commands for Editing with Parentheses
+ 
+ * Expressions::         Expressions with balanced parentheses.
+ * Moving by Parens::    Commands for moving up, down and across
+                           in the structure of parentheses.
+ * Matching::          Insertion of a close-delimiter flashes matching open.
+ 
+ Manipulating Comments
+ 
+ * Comment Commands::    Inserting, killing, and indenting comments.
+ * Multi-Line Comments:: Commands for adding and editing multi-line comments.
+ * Options for Comments::Customizing the comment features.
+ 
+ Documentation Lookup
+ 
+ * Info Lookup::         Looking up library functions and commands
+                           in Info files.
+ * Man Page::            Looking up man pages of library functions and 
commands.
+ * Lisp Doc::            Looking up Emacs Lisp functions, etc.
+ 
+ C and Related Modes
+ 
+ * Motion in C::         Commands to move by C statements, etc.
+ * Electric C::          Colon and other chars can automatically reindent.
+ * Hungry Delete::       A more powerful DEL command.
+ * Other C Commands::    Filling comments, viewing expansion of macros,
+                           and other neat features.
+ 
+ Fortran Mode
+ 
+ * Motion: Fortran Motion.      Moving point by statements or subprograms.
+ * Indent: Fortran Indent.      Indentation commands for Fortran.
+ * Comments: Fortran Comments.  Inserting and aligning comments.
+ * Autofill: Fortran Autofill.  Auto fill minor mode for Fortran.
+ * Columns: Fortran Columns.    Measuring columns for valid Fortran.
+ * Abbrev: Fortran Abbrev.      Built-in abbrevs for Fortran keywords.
+ 
+ Compiling and Testing Programs
+ 
+ * Compilation::               Compiling programs in languages other
+                         than Lisp (C, Pascal, etc.).
+ * Compilation Mode::    The mode for visiting compiler errors.
+ * Compilation Shell::   Customizing your shell properly
+                           for use in the compilation buffer.
+ * Debuggers::         Running symbolic debuggers for non-Lisp programs.
+ * Executing Lisp::    Various modes for editing Lisp programs,
+                         with different facilities for running
+                         the Lisp programs.
+ * Lisp Libraries::      Creating Lisp programs to run in Emacs.
+ * Lisp Interaction::    Executing Lisp in an Emacs buffer.
+ * Lisp Eval::         Executing a single Lisp expression in Emacs.
+ * External Lisp::     Communicating through Emacs with a separate Lisp.
+ 
+ Running Debuggers Under Emacs
+ 
+ * Starting GUD::      How to start a debugger subprocess.
+ * Debugger Operation::        Connection between the debugger and source 
buffers.
+ * Commands of GUD::   Key bindings for common commands.
+ * GUD Customization:: Defining your own commands for GUD.
+ 
+ Maintaining Programs
+ 
+ * Change Log::                Maintaining a change history for your program.
+ @ignore
+ * Authors::             Maintaining the Emacs @file{AUTHORS} file.
+ @end ignore
+ * Tags::              Go direct to any function in your program in one
+                         command.  Tags remembers which file it is in.
+ * Emerge::            A convenient way of merging two versions of a program.
+ 
+ Tags Tables
+ 
+ * Tag Syntax::                Tag syntax for various types of code and text 
files.
+ * Create Tags Table:: Creating a tags table with @code{etags}.
+ * Select Tags Table:: How to visit a tags table.
+ * Find Tag::          Commands to find the definition of a specific tag.
+ * Tags Search::               Using a tags table for searching and replacing.
+ * List Tags::         Listing and finding tags defined in a file.
+ 
+ Merging Files with Emerge
+ 
+ * Overview of Emerge::        How to start Emerge.  Basic concepts.
+ * Submodes of Emerge::        Fast mode vs. Edit mode.
+                         Skip Prefers mode and Auto Advance mode.
+ * State of Difference::       You do the merge by specifying state A or B
+                         for each difference.
+ * Merge Commands::    Commands for selecting a difference,
+                         changing states of differences, etc.
+ * Exiting Emerge::    What to do when you've finished the merge.
+ * Combining in Emerge::           How to keep both alternatives for a 
difference.
+ * Fine Points of Emerge::   Misc.
+ 
+ Abbrevs
+ 
+ * Abbrev Concepts::     Fundamentals of defined abbrevs.
+ * Defining Abbrevs::    Defining an abbrev, so it will expand when typed.
+ * Expanding Abbrevs::   Controlling expansion: prefixes, canceling expansion.
+ * Editing Abbrevs::     Viewing or editing the entire list of defined abbrevs.
+ * Saving Abbrevs::      Saving the entire list of abbrevs for another session.
+ * Dynamic Abbrevs::     Abbreviations for words already in the buffer.
+ 
+ Editing Pictures
+ 
+ * Basic Picture::     Basic concepts and simple commands of Picture Mode.
+ * Insert in Picture:: Controlling direction of cursor motion
+                         after "self-inserting" characters.
+ * Tabs in Picture::   Various features for tab stops and indentation.
+ * Rectangles in Picture:: Clearing and superimposing rectangles.
+ 
+ Sending Mail
+ 
+ * Mail Format::       Format of the mail being composed.
+ * Mail Headers::        Details of permitted mail header fields.
+ * Mail Aliases::        Abbreviating and grouping mail addresses.
+ * Mail Mode::         Special commands for editing mail being composed.
+ * Mail Amusements::     Distract the NSA's attention; add a fortune to a msg.
+ * Mail Methods::        Using alternative mail-composition methods.
+ 
+ Reading Mail with Rmail
+ 
+ * Rmail Basics::        Basic concepts of Rmail, and simple use.
+ * Rmail Scrolling::     Scrolling through a message.
+ * Rmail Motion::        Moving to another message.
+ * Rmail Deletion::      Deleting and expunging messages.
+ * Rmail Inbox::         How mail gets into the Rmail file.
+ * Rmail Files::         Using multiple Rmail files.
+ * Rmail Output::        Copying message out to files.
+ * Rmail Labels::        Classifying messages by labeling them.
+ * Rmail Attributes::    Certain standard labels, called attributes.
+ * Rmail Reply::         Sending replies to messages you are viewing.
+ * Rmail Summary::       Summaries show brief info on many messages.
+ * Rmail Sorting::       Sorting messages in Rmail.
+ * Rmail Display::       How Rmail displays a message; customization.
+ * Rmail Editing::       Editing message text and headers in Rmail.
+ * Rmail Digest::        Extracting the messages from a digest message.
+ * Out of Rmail::      Converting an Rmail file to mailbox format.
+ * Rmail Rot13::         Reading messages encoded in the rot13 code.
+ * Movemail::            More details of fetching new mail.
+ 
+ Dired, the Directory Editor
+ 
+ * Dired Enter::            How to invoke Dired.
+ * Dired Navigation::         How to move in the Dired buffer.
+ * Dired Deletion::           Deleting files with Dired.
+ * Flagging Many Files::      Flagging files based on their names.
+ * Dired Visiting::           Other file operations through Dired.
+ * Marks vs Flags::         Flagging for deletion vs marking.
+ * Operating on Files::             How to copy, rename, print, compress, etc.
+                              either one file or several files.
+ * Shell Commands in Dired::  Running a shell command on the marked files.
+ * Transforming File Names::  Using patterns to rename multiple files.
+ * Comparison in Dired::            Running `diff' by way of Dired.
+ * Subdirectories in Dired::  Adding subdirectories to the Dired buffer.
+ * Subdirectory Motion::            Moving across subdirectories, and up and 
down.
+ * Hiding Subdirectories::    Making subdirectories visible or invisible.
+ * Dired Updating::           Discarding lines for files of no interest.
+ * Dired and Find::         Using `find' to choose the files for Dired.
+ 
+ The Calendar and the Diary
+ 
+ * Calendar Motion::     Moving through the calendar; selecting a date.
+ * Scroll Calendar::     Bringing earlier or later months onto the screen.
+ * Counting Days::       How many days are there between two dates?
+ * General Calendar::    Exiting or recomputing the calendar.
+ * LaTeX Calendar::        Print a calendar using LaTeX.
+ * Holidays::            Displaying dates of holidays.
+ * Sunrise/Sunset::      Displaying local times of sunrise and sunset.
+ * Lunar Phases::        Displaying phases of the moon.
+ * Other Calendars::     Converting dates to other calendar systems.
+ * Diary::               Displaying events from your diary.
+ * Appointments::      Reminders when it's time to do something.
+ * Daylight Savings::    How to specify when daylight savings time is active.
+ 
+ Movement in the Calendar
+ 
+ * Calendar Unit Motion::      Moving by days, weeks, months, and years.
+ * Move to Beginning or End::  Moving to start/end of weeks, months, and years.
+ * Specified Dates::         Moving to the current date or another
+                               specific date.
+ 
+ Conversion To and From Other Calendars
+ 
+ * Calendar Systems::     The calendars Emacs understands
+                            (aside from Gregorian).
+ * To Other Calendar::    Converting the selected date to various calendars.
+ * From Other Calendar::          Moving to a date specified in another 
calendar.
+ * Mayan Calendar::       Moving to a date specified in a Mayan calendar.
+ 
+ The Diary
+ 
+ * Diary Commands::       Viewing diary entries and associated calendar dates.
+ * Format of Diary File::   Entering events in your diary.
+ * Date Formats::         Various ways you can specify dates.
+ * Adding to Diary::      Commands to create diary entries.
+ * Special Diary Entries::  Anniversaries, blocks of dates, cyclic entries, 
etc.
+ 
+ Gnus
+ 
+ * Buffers of Gnus::   The group, summary, and article buffers.
+ * Gnus Startup::      What you should know about starting Gnus.
+ * Summary of Gnus::   A short description of the basic Gnus commands.
+ 
+ Running Shell Commands from Emacs
+ 
+ * Single Shell::      How to run one shell command and return.
+ * Interactive Shell:: Permanent shell taking input via Emacs.
+ * Shell Mode::                Special Emacs commands used with permanent 
shell.
+ * Shell History::       Repeating previous commands in a shell buffer.
+ * Shell Options::       Options for customizing Shell mode.
+ * Remote Host::               Connecting to another computer.
+ 
+ Customization
+ 
+ * Minor Modes::               Each minor mode is one feature you can turn on
+                         independently of any others.
+ * Variables::         Many Emacs commands examine Emacs variables
+                         to decide what to do; by setting variables,
+                         you can control their functioning.
+ * Key Bindings::      The keymaps say what command each key runs.
+                         By changing them, you can "redefine keys".
+ * Keyboard Translations::
+                         If your keyboard passes an undesired code
+                          for a key, you can tell Emacs to
+                          substitute another code.
+ * Syntax::            The syntax table controls how words and
+                          expressions are parsed.
+ * Init File::         How to write common customizations in the
+                         @file{.emacs} file.
+ 
+ Variables
+ 
+ * Examining::         Examining or setting one variable's value.
+ * Easy Customization::
+                         Convenient and easy customization of variables.
+ * Hooks::             Hook variables let you specify programs for parts
+                         of Emacs to run on particular occasions.
+ * Locals::            Per-buffer values of variables.
+ * File Variables::      How files can specify variable values.
+ 
+ Customizing Key Bindings
+ 
+ * Keymaps::             Generalities.  The global keymap.
+ * Prefix Keymaps::      Keymaps for prefix keys.
+ * Local Keymaps::       Major and minor modes have their own keymaps.
+ * Minibuffer Maps::     The minibuffer uses its own local keymaps.
+ * Rebinding::           How to redefine one key's meaning conveniently.
+ * Init Rebinding::      Rebinding keys with your init file, @file{.emacs}.
+ * Function Keys::       Rebinding terminal function keys.
+ * Named ASCII Chars::   Distinguishing @key{TAB} from @kbd{C-i}, and so on.
+ * Mouse Buttons::       Rebinding mouse buttons in Emacs.
+ * Disabling::           Disabling a command means confirmation is required
+                           before it can be executed.  This is done to protect
+                           beginners from surprises.
+ 
+ The Init File, @file{~/.emacs}
+ 
+ * Init Syntax::               Syntax of constants in Emacs Lisp.
+ * Init Examples::       How to do some things with an init file.
+ * Terminal Init::       Each terminal type can have an init file.
+ * Find Init::         How Emacs finds the init file.
+ 
+ Dealing with Emacs Trouble
+ 
+ * DEL Does Not Delete:: What to do if @key{DEL} doesn't delete.
+ * Stuck Recursive::     `[...]' in mode line around the parentheses.
+ * Screen Garbled::      Garbage on the screen.
+ * Text Garbled::        Garbage in the text.
+ * Unasked-for Search::  Spontaneous entry to incremental search.
+ * Memory Full::         How to cope when you run out of memory.
+ * Emergency Escape::    Emergency escape---
+                           What to do if Emacs stops responding.
+ * Total Frustration::   When you are at your wits' end.
+ 
+ Reporting Bugs
+ 
+ * Criteria:  Bug Criteria.     Have you really found a bug?
+ * Understanding Bug Reporting::        How to report a bug effectively.
+ * Checklist::                  Steps to follow for a good bug report.
+ * Sending Patches::            How to send a patch for GNU Emacs.
+ 
+ Command Line Options and Arguments
+ 
+ * Action Arguments::  Arguments to visit files, load libraries,
+                         and call functions.
+ * Initial Options::     Arguments that take effect while starting Emacs.
+ * Command Example::     Examples of using command line arguments.
+ * Resume Arguments::  Specifying arguments when you resume a running Emacs.
+ * Environment::         Environment variables that Emacs uses.
+ * Display X::           Changing the default display and using remote login.
+ * Font X::            Choosing a font for text, under X.
+ * Colors::            Choosing display colors.
+ * Window Size X::       Start-up window size, under X.
+ * Borders X::         Internal and external borders, under X.
+ * Title X::             Specifying the initial frame's title.
+ * Icons X::             Choosing what sort of icon to use, under X.
+ * Misc X::              Other display options.
+ 
+ X Resources
+ 
+ * Resources::           Using X resources with Emacs (in general).
+ * Table of Resources::  Table of specific X resources that affect Emacs.
+ * Face Resources::      X resources for customizing faces.
+ * Lucid Resources::     X resources for Lucid menus.
+ * LessTif Resources::   X resources for LessTif and Motif menus.
+ 
+ Environment Variables
+ 
+ * General Variables:: Environment variables that all versions of Emacs use.
+ * Misc Variables::    Certain system specific variables.
+ 
+ MS-DOS and Windows 95/98/NT
+ 
+ * MS-DOS Input::        Keyboard and mouse usage on MS-DOS.
+ * MS-DOS Display::      Fonts, frames and display size on MS-DOS.
+ * MS-DOS File Names::   File-name conventions on MS-DOS.
+ * Text and Binary::     Text files on MS-DOS use CRLF to separate lines.
+ * MS-DOS Printing::     How to specify the printer on MS-DOS.
+ * MS-DOS Processes::    Running subprocesses on MS-DOS.
+ * Windows Processes::   Running subprocesses on Windows.
+ * Windows System Menu:: Controlling what the ALT key does.
+ @end menu
+ 
+ @iftex
+ @unnumbered Preface
+ 
+   This manual documents the use and simple customization of the Emacs
+ editor.  The reader is not expected to be a programmer; simple
+ customizations do not require programming skill.  But the user who is not
+ interested in customizing can ignore the scattered customization hints.
+ 
+   This is primarily a reference manual, but can also be used as a
+ primer.  For complete beginners, it is a good idea to start with the
+ on-line, learn-by-doing tutorial, before reading the manual.  To run the
+ tutorial, start Emacs and type @kbd{C-h t}.  This way you can learn
+ Emacs by using Emacs on a specially designed file which describes
+ commands, tells you when to try them, and then explains the results you
+ see.
+ 
+   On first reading, just skim chapters 1 and 2, which describe the
+ notational conventions of the manual and the general appearance of the
+ Emacs display screen.  Note which questions are answered in these
+ chapters, so you can refer back later.  After reading chapter 4, you
+ should practice the commands there.  The next few chapters describe
+ fundamental techniques and concepts that are used constantly.  You need
+ to understand them thoroughly, experimenting with them if necessary.
+ 
+   Chapters 14 through 19 describe intermediate-level features that are
+ useful for all kinds of editing.  Chapter 20 and following chapters
+ describe features that you may or may not want to use; read those
+ chapters when you need them.
+ 
+   Read the Trouble chapter if Emacs does not seem to be working
+ properly.  It explains how to cope with some common problems
+ (@pxref{Lossage}), as well as when and how to report Emacs bugs
+ (@pxref{Bugs}).
+ 
+   To find the documentation on a particular command, look in the index.
+ Keys (character commands) and command names have separate indexes.  There
+ is also a glossary, with a cross reference for each term.
+ 
+   This manual is available as a printed book and also as an Info file.
+ The Info file is for on-line perusal with the Info program, which will
+ be the principal way of viewing documentation on-line in the GNU system.
+ Both the Info file and the Info program itself are distributed along
+ with GNU Emacs.  The Info file and the printed book contain
+ substantially the same text and are generated from the same source
+ files, which are also distributed along with GNU Emacs.
+ 
+   GNU Emacs is a member of the Emacs editor family.  There are many Emacs
+ editors, all sharing common principles of organization.  For information on
+ the underlying philosophy of Emacs and the lessons learned from its
+ development, write for a copy of AI memo 519a, ``Emacs, the Extensible,
+ Customizable Self-Documenting Display Editor,'' to Publications Department,
+ Artificial Intelligence Lab, 545 Tech Square, Cambridge, MA 02139, 
address@hidden  At
+ last report they charge $2.25 per copy.  Another useful publication is LCS
+ TM-165, ``A Cookbook for an Emacs,'' by Craig Finseth, available from
+ Publications Department, Laboratory for Computer Science, 545 Tech Square,
+ Cambridge, MA 02139, address@hidden  The price today is $3.
+ 
+ This edition of the manual is intended for use with GNU Emacs installed
+ on GNU and Unix systems.  GNU Emacs can also be used on VMS, MS-DOS
+ (also called MS-DOG), Windows NT, and Windows 95 systems.  Those systems use
+ different file name syntax; in addition, VMS and MS-DOS do not support
+ all GNU Emacs features.  We don't try to describe VMS usage in this
+ manual.  @xref{MS-DOS}, for information about using Emacs on MS-DOS.
+ @end iftex
+ 
+ @node Distrib, Intro, Top, Top
+ @unnumbered Distribution
+ 
+ GNU Emacs is @dfn{free software}; this means that everyone is free to
+ use it and free to redistribute it on certain conditions.  GNU Emacs is
+ not in the public domain; it is copyrighted and there are restrictions
+ on its distribution, but these restrictions are designed to permit
+ everything that a good cooperating citizen would want to do.  What is
+ not allowed is to try to prevent others from further sharing any version
+ of GNU Emacs that they might get from you.  The precise conditions are
+ found in the GNU General Public License that comes with Emacs and also
+ appears following this section.
+ 
+ One way to get a copy of GNU Emacs is from someone else who has it.  You
+ need not ask for our permission to do so, or tell any one else; just
+ copy it.  If you have access to the Internet, you can get the latest
+ distribution version of GNU Emacs by anonymous FTP; see the file
+ @file{etc/FTP} in the Emacs distribution for more information.
+ 
+ You may also receive GNU Emacs when you buy a computer.  Computer
+ manufacturers are free to distribute copies on the same terms that apply to
+ everyone else.  These terms require them to give you the full sources,
+ including whatever changes they may have made, and to permit you to
+ redistribute the GNU Emacs received from them under the usual terms of the
+ General Public License.  In other words, the program must be free for you
+ when you get it, not just free for the manufacturer.
+ 
+ You can also order copies of GNU Emacs from the Free Software
+ Foundation.  This is a convenient and reliable way to get a copy; it
+ is also a good way to help fund our work.  (The Foundation has always
+ received most of its funds in this way.)  An order form is included in
+ the file @file{etc/ORDERS} in the Emacs distribution, and on our web
+ site in @url{http://www.gnu.org/order/order.html}.  For further
+ information, write to
+ 
+ @display
+ Free Software Foundation
+ 59 Temple Place, Suite 330
+ Boston, MA  02111-1307 USA
+ USA
+ @end display
+ 
+ The income from distribution fees goes to support the foundation's
+ purpose: the development of new free software, and improvements to our
+ existing programs including GNU Emacs.
+ 
+ If you find GNU Emacs useful, please @strong{send a donation} to the
+ Free Software Foundation to support our work.  Donations to the Free
+ Software Foundation are tax deductible in the US.  If you use GNU Emacs
+ at your workplace, please suggest that the company make a donation.  If
+ company policy is unsympathetic to the idea of donating to charity, you
+ might instead suggest ordering a CD-ROM from the Foundation
+ occasionally, or subscribing to periodic updates.
+ 
+ @iftex
+ @node Acknowledgments, Intro, Distrib, Top
+ @unnumberedsec Acknowledgments
+ 
+ Contributors to GNU Emacs include Per Abrahamsen, Jay K. Adams, Joe
+ Arceneaux, Boaz Ben-Zvi, Jim Blandy, Terrence Brannon, Frank Bresz,
+ Peter Breton, Kevin Broadey, Vincent Broman, David M. Brown, Bill
+ Carpenter, Hans Chalupsky, Bob Chassell, James Clark, Mike Clarkson,
+ Glynn Clements, Andrew Csillag, Doug Cutting, Michael DeCorte, Gary
+ Delp, Matthieu Devin, Eri Ding, Carsten Dominik, Scott Draves, Viktor
+ Dukhovni, John Eaton, Rolf Ebert, Stephen Eglen, Torbj@"orn Einarsson,
+ Tsugutomo Enami, Hans Henrik Eriksen, Michael Ernst, Ata Etemadi,
+ Frederick Farnbach, Fred Fish, Karl Fogel, Gary Foster, Noah Friedman,
+ Keith Gabryelski, Kevin Gallagher, Kevin Gallo, Howard Gayle, Stephen
+ Gildea, David Gillespie, Bob Glickstein, Boris Goldowsky, Michelangelo
+ Grigni, Michael Gschwind, Henry Guillaume, Doug Gwyn, Ken'ichi Handa,
+ Chris Hanson, K. Shane Hartman, John Heidemann, Markus Heritsch, Karl
+ Heuer, Manabu Higashida, Anders Holst, Kurt Hornik, Tom Houlder, Lars
+ Ingebrigtsen, Andrew Innes, Michael K. Johnson, Kyle Jones, Tomoji
+ Kagatani, Brewster Kahle, David Kaufman, Henry Kautz, Howard Kaye,
+ Michael Kifer, Richard King, Larry K. Kolodney, Robert Krawitz,
+ Sebastian Kremer, Geoff Kuenning, David address@hidden, Daniel LaLiberte,
+ Aaron Larson, James R. Larus, Frederic Lepied, Lars Lindberg, Eric
+ Ludlam, Neil M. Mager, Ken Manheimer, Bill Mann, Brian Marick, Simon
+ Marshall, Bengt Martensson, Charlie Martin, Thomas May, Roland McGrath,
+ David Megginson, Wayne Mesard, Richard Mlynarik, Keith Moore, Erik
+ Naggum, Thomas Neumann, Mike Newton, Jurgen Nickelsen, Jeff Norden,
+ Andrew Norman, Jeff Peck, Damon Anton Permezel, Tom Perrine, Jens
+ Petersen, Daniel Pfeiffer, Fred Pierresteguy, Christian Plaunt,
+ Francesco A. Potorti, Michael D. Prange, Ashwin Ram, Eric S. Raymond,
+ Paul Reilly, Edward M. Reingold, Rob Riepel, Roland B. Roberts, John
+ Robinson, Danny Roozendaal, William Rosenblatt, Guillermo J. Rozas, Ivar
+ Rummelhoff, Wolfgang Rupprecht, James B. Salem, Masahiko Sato, William
+ Schelter, Ralph Schleicher, Gregor Schmid, Michael Schmidt, Ronald
+ S. Schnell, Philippe Schnoebelen, Stephen Schoef, Randal Schwartz,
+ Manuel Serrano, Stanislav Shalunov, Mark Shapiro, Richard Sharman, Olin
+ Shivers, Espen Skoglund, Rick Sladkey, Lynn Slater, Chris Smith, David
+ Smith, Paul D. Smith, William Sommerfeld, Michael Staats, Sam Steingold,
+ Ake Stenhoff, Peter Stephenson, Jonathan Stigelman, Steve Strassman,
+ Jens T. Berger Thielemann, Spencer Thomas, Jim Thompson, Masanobu Umeda,
+ Neil W. Van Dyke, Ulrik Vieth, Geoffrey Voelker, Johan Vromans, Barry
+ Warsaw, Morten Welinder, Joseph Brian Wells, Rodney Whitby, Ed
+ Wilkinson, Mike Williams, Steven A. Wood, Dale R. Worley, Felix
+ S. T. Wu, Tom Wurgler, Eli Zaretskii, Jamie Zawinski, Ian T. Zimmermann,
+ Reto Zimmermann, and Neal Ziring.
+ @end iftex
+ 
+ @node Intro, Glossary, Distrib, Top
+ @unnumbered Introduction
+ 
+   You are reading about GNU Emacs, the GNU incarnation of the advanced,
+ self-documenting, customizable, extensible real-time display editor Emacs.
+ (The `G' in `GNU' is not silent.)
+ 
+   We say that Emacs is a @dfn{display} editor because normally the text
+ being edited is visible on the screen and is updated automatically as you
+ type your commands.  @xref{Screen,Display}.
+ 
+   We call it a @dfn{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.  @xref{Basic,Real-time,Basic Editing}.
+ 
+   We call Emacs advanced because it provides facilities that go beyond
+ simple insertion and deletion: controlling subprocesses; automatic
+ indentation of programs; viewing two or more files at once; editing
+ formatted text; and dealing in terms of characters, words, lines,
+ sentences, paragraphs, and pages, as well as expressions and comments in
+ several different programming languages.
+ 
+   @dfn{Self-documenting} means that at any time you can type a special
+ character, @kbd{Control-h}, to find out what your options are.  You can
+ also use it to find out what any command does, or to find all the commands
+ that pertain to a topic.  @xref{Help}.
+ 
+   @dfn{Customizable} means that you can change the definitions of Emacs
+ commands in little ways.  For example, if you use a programming language in
+ which comments start with @samp{<**} and end with @samp{**>}, you can tell
+ the Emacs comment manipulation commands to use those strings
+ (@pxref{Comments}).  Another sort of customization is rearrangement of the
+ command set.  For example, if you prefer the four basic cursor motion
+ commands (up, down, left and right) on keys in a diamond pattern on the
+ keyboard, you can rebind the keys that way.  @xref{Customization}.
+ 
+   @dfn{Extensible} means that you can go beyond simple customization and
+ write entirely new commands, programs in the Lisp language to be run by
+ Emacs's own Lisp interpreter.  Emacs is an ``on-line extensible''
+ system, which means that it is divided into many functions that call
+ each other, any of which can be redefined in the middle of an editing
+ session.  Almost any part of Emacs can be replaced without making a
+ separate copy of all of Emacs.  Most of the editing commands of Emacs
+ are written in Lisp; the few exceptions could have been written
+ in Lisp but are written in C for efficiency.  Although only a programmer
+ can write an extension, anybody can use it afterward.  If you want to
+ learn Emacs Lisp programming, we recommend the @cite{Introduction to
+ Emacs Lisp} by Robert J. Chassell, also published by the Free Software
+ Foundation.
+ 
+    When run under the X Window System, Emacs provides its own menus and
+ convenient bindings to mouse buttons.  But Emacs can provide many of the
+ benefits of a window system on a text-only terminal.  For instance, you
+ can look at or edit several files at once, move text between files, and
+ edit files while running shell commands.
+ 
+ @include screen.texi
+ @include commands.texi
+ @include entering.texi
+ @include basic.texi
+ @include mini.texi
+ @include m-x.texi
+ @include help.texi
+ @include mark.texi
+ @include killing.texi
+ @include regs.texi
+ @include display.texi
+ @include search.texi
+ @include fixit.texi
+ @include kmacro.texi
+ @include files.texi
+ @include buffers.texi
+ @include windows.texi
+ @include frames.texi
+ @include mule.texi
+ @include major.texi
+ @include indent.texi
+ @include text.texi
+ @include programs.texi
+ @include building.texi
+ @include maintaining.texi
+ @include abbrevs.texi
+ @include picture.texi
+ @include sending.texi
+ @include rmail.texi
+ @include dired.texi
+ @include calendar.texi
+ @include misc.texi
+ @include custom.texi
+ @include trouble.texi
+ 
+ @node Copying, GNU Free Documentation License, Service, Top
+ @appendix GNU GENERAL PUBLIC LICENSE
+ @center Version 2, June 1991
+ 
+ @display
+ Copyright @copyright{} 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ 
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+ @end display
+ 
+ @unnumberedsec Preamble
+ 
+   The licenses for most software are designed to take away your
+ freedom to share and change it.  By contrast, the GNU General Public
+ License is intended to guarantee your freedom to share and change free
+ software---to make sure the software is free for all its users.  This
+ General Public License applies to most of the Free Software
+ Foundation's software and to any other program whose authors commit to
+ using it.  (Some other Free Software Foundation software is covered by
+ the GNU Library General Public License instead.)  You can apply it to
+ your programs, too.
+ 
+   When we speak of free software, we are referring to freedom, not
+ price.  Our General Public Licenses are designed to make sure that you
+ have the freedom to distribute copies of free software (and charge for
+ this service if you wish), that you receive source code or can get it
+ if you want it, that you can change the software or use pieces of it
+ in new free programs; and that you know you can do these things.
+ 
+   To protect your rights, we need to make restrictions that forbid
+ anyone to deny you these rights or to ask you to surrender the rights.
+ These restrictions translate to certain responsibilities for you if you
+ distribute copies of the software, or if you modify it.
+ 
+   For example, if you distribute copies of such a program, whether
+ gratis or for a fee, you must give the recipients all the rights that
+ you have.  You must make sure that they, too, receive or can get the
+ source code.  And you must show them these terms so they know their
+ rights.
+ 
+   We protect your rights with two steps: (1) copyright the software, and
+ (2) offer you this license which gives you legal permission to copy,
+ distribute and/or modify the software.
+ 
+   Also, for each author's protection and ours, we want to make certain
+ that everyone understands that there is no warranty for this free
+ software.  If the software is modified by someone else and passed on, we
+ want its recipients to know that what they have is not the original, so
+ that any problems introduced by others will not reflect on the original
+ authors' reputations.
+ 
+   Finally, any free program is threatened constantly by software
+ patents.  We wish to avoid the danger that redistributors of a free
+ program will individually obtain patent licenses, in effect making the
+ program proprietary.  To prevent this, we have made it clear that any
+ patent must be licensed for everyone's free use or not licensed at all.
+ 
+   The precise terms and conditions for copying, distribution and
+ modification follow.
+ 
+ @iftex
+ @unnumberedsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+ @end iftex
+ @ifinfo
+ @center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+ @end ifinfo
+ 
+ @enumerate 0
+ @item
+ This License applies to any program or other work which contains
+ a notice placed by the copyright holder saying it may be distributed
+ under the terms of this General Public License.  The ``Program,'' below,
+ refers to any such program or work, and a ``work based on the Program''
+ means either the Program or any derivative work under copyright law:
+ that is to say, a work containing the Program or a portion of it,
+ either verbatim or with modifications and/or translated into another
+ language.  (Hereinafter, translation is included without limitation in
+ the term ``modification.'')  Each licensee is addressed as ``you.''
+ 
+ Activities other than copying, distribution and modification are not
+ covered by this License; they are outside its scope.  The act of
+ running the Program is not restricted, and the output from the Program
+ is covered only if its contents constitute a work based on the
+ Program (independent of having been made by running the Program).
+ Whether that is true depends on what the Program does.
+ 
+ @item
+ You may copy and distribute verbatim copies of the Program's
+ source code as you receive it, in any medium, provided that you
+ conspicuously and appropriately publish on each copy an appropriate
+ copyright notice and disclaimer of warranty; keep intact all the
+ notices that refer to this License and to the absence of any warranty;
+ and give any other recipients of the Program a copy of this License
+ along with the Program.
+ 
+ You may charge a fee for the physical act of transferring a copy, and
+ you may at your option offer warranty protection in exchange for a fee.
+ 
+ @item
+ You may modify your copy or copies of the Program or any portion
+ of it, thus forming a work based on the Program, and copy and
+ distribute such modifications or work under the terms of Section 1
+ above, provided that you also meet all of these conditions:
+ 
+ @enumerate a
+ @item
+ You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+ 
+ @item
+ You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+ 
+ @item
+ If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License.  (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+ @end enumerate
+ 
+ These requirements apply to the modified work as a whole.  If
+ identifiable sections of that work are not derived from the Program,
+ and can be reasonably considered independent and separate works in
+ themselves, then this License, and its terms, do not apply to those
+ sections when you distribute them as separate works.  But when you
+ distribute the same sections as part of a whole which is a work based
+ on the Program, the distribution of the whole must be on the terms of
+ this License, whose permissions for other licensees extend to the
+ entire whole, and thus to each and every part regardless of who wrote it.
+ 
+ Thus, it is not the intent of this section to claim rights or contest
+ your rights to work written entirely by you; rather, the intent is to
+ exercise the right to control the distribution of derivative or
+ collective works based on the Program.
+ 
+ In addition, mere aggregation of another work not based on the Program
+ with the Program (or with a work based on the Program) on a volume of
+ a storage or distribution medium does not bring the other work under
+ the scope of this License.
+ 
+ @item
+ You may copy and distribute the Program (or a work based on it,
+ under Section 2) in object code or executable form under the terms of
+ Sections 1 and 2 above provided that you also do one of the following:
+ 
+ @enumerate a
+ @item
+ Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+ 
+ @item
+ Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+ 
+ @item
+ Accompany it with the information you received as to the offer
+ to distribute corresponding source code.  (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+ @end enumerate
+ 
+ The source code for a work means the preferred form of the work for
+ making modifications to it.  For an executable work, complete source
+ code means all the source code for all modules it contains, plus any
+ associated interface definition files, plus the scripts used to
+ control compilation and installation of the executable.  However, as a
+ special exception, the source code distributed need not include
+ anything that is normally distributed (in either source or binary
+ form) with the major components (compiler, kernel, and so on) of the
+ operating system on which the executable runs, unless that component
+ itself accompanies the executable.
+ 
+ If distribution of executable or object code is made by offering
+ access to copy from a designated place, then offering equivalent
+ access to copy the source code from the same place counts as
+ distribution of the source code, even though third parties are not
+ compelled to copy the source along with the object code.
+ 
+ @item
+ You may not copy, modify, sublicense, or distribute the Program
+ except as expressly provided under this License.  Any attempt
+ otherwise to copy, modify, sublicense or distribute the Program is
+ void, and will automatically terminate your rights under this License.
+ However, parties who have received copies, or rights, from you under
+ this License will not have their licenses terminated so long as such
+ parties remain in full compliance.
+ 
+ @item
+ You are not required to accept this License, since you have not
+ signed it.  However, nothing else grants you permission to modify or
+ distribute the Program or its derivative works.  These actions are
+ prohibited by law if you do not accept this License.  Therefore, by
+ modifying or distributing the Program (or any work based on the
+ Program), you indicate your acceptance of this License to do so, and
+ all its terms and conditions for copying, distributing or modifying
+ the Program or works based on it.
+ 
+ @item
+ Each time you redistribute the Program (or any work based on the
+ Program), the recipient automatically receives a license from the
+ original licensor to copy, distribute or modify the Program subject to
+ these terms and conditions.  You may not impose any further
+ restrictions on the recipients' exercise of the rights granted herein.
+ You are not responsible for enforcing compliance by third parties to
+ this License.
+ 
+ @item
+ If, as a consequence of a court judgment or allegation of patent
+ infringement or for any other reason (not limited to patent issues),
+ conditions are imposed on you (whether by court order, agreement or
+ otherwise) that contradict the conditions of this License, they do not
+ excuse you from the conditions of this License.  If you cannot
+ distribute so as to satisfy simultaneously your obligations under this
+ License and any other pertinent obligations, then as a consequence you
+ may not distribute the Program at all.  For example, if a patent
+ license would not permit royalty-free redistribution of the Program by
+ all those who receive copies directly or indirectly through you, then
+ the only way you could satisfy both it and this License would be to
+ refrain entirely from distribution of the Program.
+ 
+ If any portion of this section is held invalid or unenforceable under
+ any particular circumstance, the balance of the section is intended to
+ apply and the section as a whole is intended to apply in other
+ circumstances.
+ 
+ It is not the purpose of this section to induce you to infringe any
+ patents or other property right claims or to contest validity of any
+ such claims; this section has the sole purpose of protecting the
+ integrity of the free software distribution system, which is
+ implemented by public license practices.  Many people have made
+ generous contributions to the wide range of software distributed
+ through that system in reliance on consistent application of that
+ system; it is up to the author/donor to decide if he or she is willing
+ to distribute software through any other system and a licensee cannot
+ impose that choice.
+ 
+ This section is intended to make thoroughly clear what is believed to
+ be a consequence of the rest of this License.
+ 
+ @item
+ If the distribution and/or use of the Program is restricted in
+ certain countries either by patents or by copyrighted interfaces, the
+ original copyright holder who places the Program under this License
+ may add an explicit geographical distribution limitation excluding
+ those countries, so that distribution is permitted only in or among
+ countries not thus excluded.  In such case, this License incorporates
+ the limitation as if written in the body of this License.
+ 
+ @item
+ The Free Software Foundation may publish revised and/or new versions
+ of the General Public License from time to time.  Such new versions will
+ be similar in spirit to the present version, but may differ in detail to
+ address new problems or concerns.
+ 
+ Each version is given a distinguishing version number.  If the Program
+ specifies a version number of this License which applies to it and ``any
+ later version,'' you have the option of following the terms and conditions
+ either of that version or of any later version published by the Free
+ Software Foundation.  If the Program does not specify a version number of
+ this License, you may choose any version ever published by the Free Software
+ Foundation.
+ 
+ @item
+ If you wish to incorporate parts of the Program into other free
+ programs whose distribution conditions are different, write to the author
+ to ask for permission.  For software which is copyrighted by the Free
+ Software Foundation, write to the Free Software Foundation; we sometimes
+ make exceptions for this.  Our decision will be guided by the two goals
+ of preserving the free status of all derivatives of our free software and
+ of promoting the sharing and reuse of software generally.
+ 
+ @iftex
+ @heading NO WARRANTY
+ @end iftex
+ @ifinfo
+ @center NO WARRANTY
+ @end ifinfo
+ 
+ @item
+ BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+ FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE address@hidden  EXCEPT 
WHEN
+ OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+ PROVIDE THE PROGRAM ``AS IS'' WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+ OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR address@hidden  THE ENTIRE RISK 
AS
+ TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH address@hidden  SHOULD 
THE
+ PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+ REPAIR OR CORRECTION.
+ 
+ @item
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+ WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+ REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+ INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+ OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+ TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGES.
+ @end enumerate
+ 
+ @iftex
+ @heading END OF TERMS AND CONDITIONS
+ @end iftex
+ @ifinfo
+ @center END OF TERMS AND CONDITIONS
+ @end ifinfo
+ 
+ @page
+ @unnumberedsec How to Apply These Terms to Your New Programs
+ 
+   If you develop a new program, and you want it to be of the greatest
+ possible use to the public, the best way to achieve this is to make it
+ free software which everyone can redistribute and change under these terms.
+ 
+   To do so, attach the following notices to the program.  It is safest
+ to attach them to the start of each source file to most effectively
+ convey the exclusion of warranty; and each file should have at least
+ the ``copyright'' line and a pointer to where the full notice is found.
+ 
+ @smallexample
+ @var{one line to give the program's name and an idea of what it does.}
+ Copyright (C) address@hidden  @var{name of author}
+ 
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License
+ as published by the Free Software Foundation; either version 2
+ of the License, or (at your option) any later version.
+ 
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR address@hidden  See the
+ GNU General Public License for more details.
+ 
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
+ @end smallexample
+ 
+ Also add information on how to contact you by electronic and paper mail.
+ 
+ If the program is interactive, make it output a short notice like this
+ when it starts in an interactive mode:
+ 
+ @smallexample
+ Gnomovision version 69, Copyright (C) address@hidden @var{name of author}
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
+ type `show w'.  This is free software, and you are welcome
+ to redistribute it under certain conditions; type `show c'
+ for details.
+ @end smallexample
+ 
+ The hypothetical commands @samp{show w} and @samp{show c} should show
+ the appropriate parts of the General Public License.  Of course, the
+ commands you use may be called something other than @samp{show w} and
+ @samp{show c}; they could even be mouse-clicks or menu items---whatever
+ suits your program.
+ 
+ You should also get your employer (if you work as a programmer) or your
+ school, if any, to sign a ``copyright disclaimer'' for the program, if
+ necessary.  Here is a sample; alter the names:
+ 
+ @smallexample
+ @group
+ Yoyodyne, Inc., hereby disclaims all copyright
+ interest in the program `Gnomovision'
+ (which makes passes at compilers) written
+ by James Hacker.
+ 
+ @var{signature of Ty Coon}, 1 April 1989
+ Ty Coon, President of Vice
+ @end group
+ @end smallexample
+ 
+ This General Public License does not permit incorporating your program into
+ proprietary programs.  If your program is a subroutine library, you may
+ consider it more useful to permit linking proprietary applications with the
+ library.  If this is what you want to do, use the GNU Library General
+ Public License instead of this License.
+ 
+ @include doclicense.texi
+ @include cmdargs.texi
+ @include xresources.texi
+ 
+ @include anti.texi
+ @include macos.texi
+ @include msdog.texi
+ @include gnu.texi
+ @include glossary.texi
+ @ifnottex
+ @include ack.texi
+ @end ifnottex
+ 
+ @c The Option Index is produced only in the on-line version,
+ @c because the index entries related to command-line options
+ @c tend to point to the same pages and all begin with a dash.
+ @c This, and the need to keep the node links consistent, are
+ @c the reasons for the funky @iftex/@ifnottex dance below.
+ @c The Option Index is _not_ before Key Index, because that
+ @c would require changes in the glossary.texi's @node line.
+ @c It is not after Concept Index for similar reasons.
+ 
+ @iftex
+ @node Key Index, Command Index, Glossary, Top
+ @unnumbered Key (Character) Index
+ @printindex ky
+ @end iftex
+ 
+ @ifnottex
+ @node Key Index, Option Index, Glossary, Top
+ @unnumbered Key (Character) Index
+ @printindex ky
+ 
+ @node Option Index, Command Index, Key Index, Top
+ @unnumbered Command-Line Options Index
+ @printindex op
+ 
+ @node Command Index, Variable Index, Option Index, Top
+ @unnumbered Command and Function Index
+ @printindex fn
+ @end ifnottex
+ 
+ @iftex
+ @node Command Index, Variable Index, Key Index, Top
+ @unnumbered Command and Function Index
+ @printindex fn
+ @end iftex
+ 
+ @node Variable Index, Concept Index, Command Index, Top
+ @unnumbered Variable Index
+ @printindex vr
+ 
+ @node Concept Index, Acknowledgments, Variable Index, Top
+ @unnumbered Concept Index
+ @printindex cp
+ 
+ @summarycontents
+ @contents
+ @bye
+ 
+ @ignore
+    arch-tag: ed48740a-410b-46ea-9387-c9a9252a3392
+ @end ignore




reply via email to

[Prev in Thread] Current Thread [Next in Thread]