]> code.delx.au - gnu-emacs/blobdiff - man/emacs.texi
(XTerm Mouse): Xterm Mouse mode is now enabled by default.
[gnu-emacs] / man / emacs.texi
index d00b6d81a8439c0a262057f44becc529188d5ad2..0ad3a5148c92a99811732f257d9909aa474f9cee 100644 (file)
@@ -5,14 +5,14 @@
 
 @c The edition number appears in several places in this file
 @set EDITION   Fourteenth
-@set EMACSVER  21.3.50
+@set EMACSVER  22.0.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 Free Software Foundation, Inc.
+1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
 
 @quotation
 Permission is granted to copy, distribute and/or modify this document
@@ -125,7 +125,7 @@ and Sending Mail and Registers and Minibuffer.
 * 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!
-* Acknowldgments::     Major contributors to GNU Emacs.
+* Acknowledgments::     Major contributors to GNU Emacs.
 
 Indexes (nodes containing large menus)
 * Key Index::          An item for each standard Emacs key sequence.
@@ -148,7 +148,7 @@ Important General Concepts
                          and strings).
 * Entering Emacs::      Starting Emacs from the shell.
 * Exiting::            Stopping or killing Emacs.
-* Command Arguments::   Hairy startup options.
+* Emacs Invocation::    Hairy startup options.
 
 Fundamental Editing Commands
 * Basic::              The most basic editing commands.
@@ -158,8 +158,8 @@ Fundamental Editing Commands
 
 Important Text-Changing Commands
 * Mark::               The mark: how to delimit a ``region'' of text.
-* Killing::            Killing text.
-* Yanking::            Recovering killed text.  Moving 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.
@@ -224,11 +224,13 @@ Recovery from Problems
 * Contributing::        How to contribute improvements to Emacs.
 * Service::            How to get help for your own Emacs needs.
 
+
+Detailed Node Listing
+---------------------
+
 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.
@@ -278,13 +280,15 @@ The Mark and the Region
 * Mark Ring::          Previous mark positions saved so you can go back there.
 * Global Mark Ring::   Previous mark positions in various buffers.
 
-Deletion and Killing
+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.
+* Graphical Kill::      The kill ring on graphical terminals:
+                          yanking between applications.
 
 Yanking
 
@@ -303,12 +307,19 @@ Registers
 
 Controlling the Display
 
+* 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.
 * Scrolling::             Moving text up and down in a window.
 * Horizontal Scrolling::   Moving text left and right in a window.
+* Fringes::                Enabling or disabling window fringes.
+* Useless Whitespace::     Showing possibly-spurious trailing whitespace.
 * 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.
+* Text Display::           How text characters are normally displayed.
+* Cursor Display::         Features for displaying the cursor.
 * Display Custom::         Information on variables for customizing display.
 
 Searching and Replacement
@@ -416,15 +427,11 @@ Frames and X Windows
 * 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.
+* Drag and Drop::       Using drag and drop to open files and insert text.
 * 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.
+* Tooltips::            Showing "tooltips", AKA "balloon 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.
@@ -541,7 +548,6 @@ C and Related Modes
 * Hungry Delete::       A more powerful DEL command.
 * Other C Commands::    Filling comments, viewing expansion of macros,
                           and other neat features.
-* Comments in C::       Options for customizing comment style.
 
 Fortran Mode
 
@@ -559,6 +565,8 @@ Compiling and Testing Programs
 * Compilation Mode::    The mode for visiting compiler errors.
 * Compilation Shell::   Customizing your shell properly
                           for use in the compilation buffer.
+* Grep Searching::      Searching with grep.
+* Flymake::             Finding syntax errors on the fly.
 * Debuggers::          Running symbolic debuggers for non-Lisp programs.
 * Executing Lisp::     Various modes for editing Lisp programs,
                          with different facilities for running
@@ -672,6 +680,9 @@ Dired, the Directory Editor
 * 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.
+* Dired and Find::           Using `find' to choose the files for Dired.
+* Wdired::                   Operating on files by editing the Dired buffer.
+* Misc Dired Features::      Various other features.
 
 The Calendar and the Diary
 
@@ -705,7 +716,7 @@ Conversion To and From Other Calendars
 
 The Diary
 
-* Diary Commands::        Viewing diary entries and associated calendar dates.
+* Displaying the Diary::   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.
@@ -730,6 +741,8 @@ Customization
 
 * Minor Modes::                Each minor mode is one feature you can turn on
                          independently of any others.
+* Easy Customization::
+                        Convenient way to browse and change user options.
 * Variables::          Many Emacs commands examine Emacs variables
                          to decide what to do; by setting variables,
                          you can control their functioning.
@@ -747,8 +760,6 @@ Customization
 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.
@@ -810,6 +821,7 @@ Command Line Options and Arguments
 * 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
 
@@ -826,7 +838,8 @@ Environment Variables
 
 MS-DOS and Windows 95/98/NT
 
-* MS-DOS Input::        Keyboard and mouse usage on MS-DOS.
+* MS-DOS Keyboard::     Keyboard usage on MS-DOS.
+* MS-DOS Mouse::        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.
@@ -901,7 +914,7 @@ 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, Copying, Top, Top
+@node Distrib, Intro, Top, Top
 @unnumbered Distribution
 
 GNU Emacs is @dfn{free software}; this means that everyone is free to
@@ -955,55 +968,170 @@ 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.
 
-@ifnotinfo
-@node Acknowledgments, Copying, Distrib, Top
-@section 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 K@aa{}gedal, Daniel LaLiberte,
-Aaron Larson, James R. Larus, Frederic Lepied, Lars Lindberg, Eric
-Ludlam, Neil M. Mager, Ken Manheimer, Bill Mann, Brian Marick, Simon
+@iftex
+@node Acknowledgments, Intro, Distrib, Top
+@unnumberedsec Acknowledgments
+
+Contributors to GNU Emacs include Per Abrahamsen, Tomas Abrahamsson,
+Jay K.@: Adams, Joe Arceneaux, Miles Bader, David Bakhash, Eli
+Barzilay, Steven L.@: Baur, Boaz Ben-Zvi, Ray Blaak, Jim Blandy, Per
+Bothner, Terrence Brannon, Frank Bresz, Peter Breton, Emmanuel Briot,
+Kevin Broadey, Vincent Broman, David M.@: Brown, Georges Brun-Cottan,
+W@l{}odek Bzyl, Bill Carpenter, Per Cederqvist, Hans Chalupsky, Chris
+Chase, Bob Chassell, Andrew Choi, James Clark, Mike Clarkson, Glynn
+Clements, Andrew Csillag, Doug Cutting, Michael DeCorte, Gary Delp,
+Matthieu Devin, Eri Ding, Jan Dj@"{a}rv, Carsten Dominik, Scott
+Draves, Benjamin Drieu, Viktor Dukhovni, John Eaton, Rolf Ebert,
+Stephen Eglen, Torbj@"orn Einarsson, Tsugutomo Enami, Hans Henrik
+Eriksen, Michael Ernst, Ata Etemadi, Frederick Farnbach, Oscar
+Figueiredo, Fred Fish, Karl Fogel, Gary Foster, Noah Friedman,
+Hallvard Furuseth, Keith Gabryelski, Kevin Gallagher, Kevin Gallo,
+Juan Le@'{o}n Lahoz Garc@'{i}a, Howard Gayle, Stephen Gildea, Julien
+Gilles, David Gillespie, Bob Glickstein, Boris Goldowsky, Michelangelo
+Grigni, Odd Gripenstam, Kai Gro@ss{}johann, Michael Gschwind, Henry
+Guillaume, Doug Gwyn, Ken'ichi Handa, Chris Hanson, K. Shane Hartman,
+John Heidemann, Jon K.@: Hellan, Markus Heritsch, Karl Heuer, Manabu
+Higashida, Anders Holst, Kurt Hornik, Tom Houlder, Denis Howe, Lars
+Ingebrigtsen, Andrew Innes, Seiichiro Inoue, Ulf Jasper, Michael
+K. Johnson, Kyle Jones, Terry Jones, Simon Josefsson, Tomoji Kagatani,
+Brewster Kahle, David Kaufman, Henry Kautz, Taichi Kawabata, Howard
+Kaye, Michael Kifer, Richard King, Peter Kleiweg, Larry K.@: Kolodney,
+Pavel Kobiakov, Larry K.@: Kolodney, David M.@: Koppelman, Koseki
+Yoshinori, Robert Krawitz, Sebastian Kremer, Ryszard Kubiak, Geoff
+Kuenning, David K@aa{}gedal, Daniel LaLiberte, Aaron Larson, James
+R.@: Larus, Vinicius Jose Latorre, Frederic Lepied, Peter Liljenberg,
+Lars Lindberg, Chris Lindblad, Anders Lindgren, Thomas Link, Dave
+Love, Eric Ludlam, Alan Mackenzie, Christopher J.@: Madsen,
+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 ifnotinfo
-
-@node Copying, GNU Free Documentation License, Distrib, Top
-@unnumbered GNU GENERAL PUBLIC LICENSE
+Will Mengarini, David Megginson, Wayne Mesard, Brad Miller, Richard
+Mlynarik, Gerd Moellmann, Stefan Monnier, Morioka Tomohiko, Keith
+Moore, Sen Nagata, Erik Naggum, Thomas Neumann, Thien-Thi Nguyen, Mike
+Newton, Jurgen Nickelsen, Dan Nicolaescu, Jeff Norden, Andrew Norman,
+Alexandre Oliva, Bob Olson, Takaaki Ota, Pieter E.@: J.@: Pareit,
+David Pearson, Jeff Peck, Damon Anton Permezel, Tom Perrine, William
+M.@: Perry, Per Persson, Jens Petersen, Daniel Pfeiffer, Richard
+L.@: Pieri, Fred Pierresteguy, Christian Plaunt, David Ponce, Francesco
+A. Potorti, Michael D. Prange, Mukesh Prasad, Marko Rahamaa, Ashwin
+Ram, Eric S. Raymond, Paul Reilly, Edward M. Reingold, Alex Rezinsky,
+Rob Riepel, Nick Roberts, Roland B.@: Roberts, John Robinson, Danny
+Roozendaal, William Rosenblatt, Guillermo J.@: Rozas, Ivar Rummelhoff,
+Jason Rumney, Wolfgang Rupprecht, Kevin Ryde, James B. Salem, Masahiko
+Sato, Holger Schauer, William Schelter, Ralph Schleicher, Gregor
+Schmid, Michael Schmidt, Ronald S. Schnell, Philippe Schnoebelen, Jan
+Schormann, Alex Schroeder, Stephen Schoef, Randal Schwartz, Oliver
+Seidel, Manuel Serrano, Hovav Shacham, Stanislav Shalunov, Mark
+Shapiro, Richard Sharman, Olin Shivers, Espen Skoglund, Rick Sladkey,
+Lynn Slater, Chris Smith, David Smith, Paul D.@: Smith, Andre Spiegel,
+Michael Staats, William Sommerfeld, Michael Staats, Sam Steingold, Ake
+Stenhoff, Peter Stephenson, Ken Stevens, Jonathan Stigelman, Martin
+Stjernholm, Kim F.@: Storm, Steve Strassman, Olaf Sylvester, Naoto
+Takahashi, Jean-Philippe Theberge, Jens T.@: Berger Thielemann,
+Spencer Thomas, Jim Thompson, Tom Tromey, Daiki Ueno, Masanobu Umeda,
+Rajesh Vaidheeswarran, Neil W.@: Van Dyke, Didier Verna, Ulrik Vieth,
+Geoffrey Voelker, Johan Vromans, Inge Wallin, Colin Walters, Barry
+Warsaw, Morten Welinder, Joseph Brian Wells, Rodney Whitby, John
+Wiegley, Ed Wilkinson, Mike Williams, Bill Wohler, Steven A. Wood,
+Dale R.@: Worley, Francis J.@: Wright, Felix S. T. Wu, Tom Wurgler,
+Masatake Yamato, Jonathan Yavner, Ilya Zakharevich, Milan Zamazal,
+Victor Zandy, Eli Zaretskii, Jamie Zawinski, Shenghuo Zhu, Ian
+T.@: Zimmermann, Reto Zimmermann, Neal Ziring, and Detlev Zundel.
+@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
@@ -1399,98 +1527,6 @@ library.  If this is what you want to do, use the GNU Library General
 Public License instead of this License.
 
 @include doclicense.texi
-
-@node Intro, Glossary, GNU Free Documentation License, 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
 @include cmdargs.texi
 @include xresources.texi
 
@@ -1499,9 +1535,9 @@ edit files while running shell commands.
 @include msdog.texi
 @include gnu.texi
 @include glossary.texi
-@ifinfo
+@ifnottex
 @include ack.texi
-@end ifinfo
+@end ifnottex
 
 @c The Option Index is produced only in the on-line version,
 @c because the index entries related to command-line options