]> code.delx.au - gnu-emacs/blobdiff - man/info.texi
(enum event_kind) [MAC_OS]: Update comment for MAC_APPLE_EVENT.
[gnu-emacs] / man / info.texi
index 7033eb13e8a44df322873f4de7d7be567aad465a..f33038e0c30c98eefb75df2bfa0e9b8a6ccfc7aa 100644 (file)
 This file describes how to use Info, the on-line, menu-driven GNU
 documentation system.
 
-Copyright (C) 1989, 1992, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
-Free Software Foundation, Inc.
+Copyright @copyright{} 1989, 1992, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006 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
+under the terms of the GNU Free Documentation License, Version 1.2 or
 any later version published by the Free Software Foundation; with no
 Invariant Sections, with the Front-Cover texts being ``A GNU
 Manual'', and with the Back-Cover Texts as in (a) below.  A copy of the
@@ -72,28 +72,28 @@ If you are new to the Info reader and want to learn how to use it,
 type the command @kbd{h} now.  It brings you to a programmed
 instruction sequence.
 
-To read about expert-level Info commands, type @kbd{n} twice.  This
-brings you to @cite{Info for Experts}, skipping over the `Getting
+To read about advanced Info commands, type @kbd{n} twice.  This
+brings you to @cite{Advanced Info Commands}, skipping over the `Getting
 Started' chapter.
 @end ifinfo
 @end ifnottex
 
 @menu
 * Getting Started::             Getting started using an Info reader.
+* Advanced::                    Advanced Info commands.
 * Expert Info::                 Info commands for experts.
-* Creating an Info File::       How to make your own Info file.
 * Index::                       An index of topics, commands, and variables.
 @end menu
 
-@node Getting Started, Expert Info, Top, Top
+@node Getting Started, Advanced, Top, Top
 @comment  node-name,  next,  previous,  up
 @chapter Getting Started
 
 This first part of this Info manual describes how to get around inside
 of Info.  The second part of the manual describes various advanced
-Info commands, and how to write an Info as distinct from a Texinfo
-file.  The third part briefly explains how to generate Info files from
-Texinfo files.
+Info commands.  The third part briefly explains how to generate Info
+files from Texinfo files, and describes how to write an Info file
+by hand.
 
 @ifnotinfo
 This manual is primarily designed for browsing with an Info reader
@@ -238,7 +238,7 @@ line says that this is node @samp{Help} in the file @file{info}.
 (look at it now) says that the @samp{Next} node after this one is the
 node called @samp{Help-P}.  An advanced Info command lets you go to
 any node whose name you know.  In the stand-alone Info reader program,
-the header line shows the names of this node and the info file as
+the header line shows the names of this node and the Info file as
 well.  In Emacs, the header line is duplicated in a special typeface,
 and the duplicate remains at the top of the window all the time even
 if you scroll through the node.
@@ -284,7 +284,7 @@ node, @samp{Help-^L}.
   If you read this in Emacs, you will see an @samp{Info} item in the
 menu bar, close to its right edge.  Clicking the mouse on the
 @samp{Info} menu-bar item opens a menu of commands which include
-@samp{Next} and @samp{Prev} (and also some others which you didn't yet
+@samp{Next} and @samp{Previous} (and also some others which you didn't yet
 learn about).
 
   This all probably seems insultingly simple so far, but @emph{please
@@ -671,10 +671,12 @@ mistake.
 
   Another way to move to the menu subtopic lines and between them is
 to type @key{TAB}.  Each time you type a @key{TAB}, you move to the
-next subtopic line.  To move to a previous subtopic line, type
-@kbd{M-@key{TAB}}---that is, press and hold the @key{META} key and then
-press @key{TAB}.  (On some keyboards, the @key{META} key might be labeled
-@samp{Alt}.)
+next subtopic line.  To move to a previous subtopic line in the
+stand-alone reader, type @kbd{M-@key{TAB}}---that is, press and hold
+the @key{META} key and then press @key{TAB}.  (On some keyboards, the
+@key{META} key might be labeled @samp{Alt}.)  In Emacs Info, type
+@kbd{S-@key{TAB}} to move to a previous subtopic line (press and hold
+the @key{Shift} key and then press @key{TAB}).
 
   Once you move cursor to a subtopic line, press @key{RET} to go to
 that subtopic's node.
@@ -727,7 +729,8 @@ usually used to ``stay on the same level but go backwards''.
 @code{Info-up}).  That puts you at the @emph{front} of the node---to
 get back to where you were reading you have to type some @key{SPC}s.
 (Some Info readers, such as the one built into Emacs, put you at the
-same place where you were reading in @samp{Help-M}.)
+menu subtopic line which points to the subnode that the @kbd{u} command
+brought you from.)
 
   Another way to go Up is to click @kbd{Mouse-2} on the @samp{Up}
 pointer shown in the header line (provided that you have a mouse).
@@ -785,8 +788,14 @@ to cancel the @kbd{f}.
    type a @kbd{Control-g} and see how the @samp{f} gives up.
 @end format
 
-  The @key{TAB} and @kbd{M-@key{TAB}} key, which move between menu
-items in a menu, also move between cross references outside of menus.
+  The @key{TAB}, @kbd{M-@key{TAB}} and @kbd{S-@key{TAB}} keys,
+which move between menu items in a menu, also move between cross
+references outside of menus.
+
+  Clicking @kbd{Mouse-2} on or near a cross reference also follows the
+reference.  You can see that the cross reference is mouse-sensitive by
+moving the mouse pointer to the reference and watching how the
+underlying text and the mouse pointer change in response.
 
   Sometimes a cross reference (or a node) can lead to another file (in
 other words another ``manual''), or, on occasion, even a file on a
@@ -795,36 +804,22 @@ stand-alone Info avoid using remote links).  Such a cross reference
 looks like this: @xref{Top,, Overview of Texinfo, texinfo, Texinfo:
 The GNU Documentation Format}.  (After following this link, type
 @kbd{l} to get back to this node.)  Here the name @samp{texinfo}
-between parentheses (shown in the stand-alone version) refers to the
-file name.  This file name appears in cross references and node names
-if it differs from the current file.  In Emacs, the file name is
-hidden (along with other text).  (Use @kbd{M-x visible-mode} to show
-or hide it.)
-
-  The remainder of this node applies only to the Emacs version.  If
-you use the stand-alone version, you can type @kbd{n} immediately.
-
-  To some users, switching manuals is a much bigger switch than
-switching sections.  These users like to know that they are going to
-be switching to another manual (and which one) before actually doing
-so, especially given that, if one does not notice, Info commands like
-@kbd{t} (see the next node) can have confusing results.
-
-  If you put your mouse over the cross reference and if the cross
-reference leads to a different manual, then the information appearing
-in a separate box (tool tip) or in the echo area, will mention the
-file the cross reference will carry you to (between parentheses).
-This is also true for menu subtopic names.  If you have a mouse, just
-leave it over the @samp{Overview} cross reference above and watch what
-happens.
-
-  If you always like to have that information available without having
-to move your mouse over the cross reference, set
-@code{Info-hide-note-references} to a value other than t (@pxref{Emacs
-Info Variables}).  You might also want to do that if you have a lot of
-cross references to files on remote machines and have non-permanent or
-slow access, since otherwise you might not be able to distinguish
-between local and remote links.
+between parentheses refers to the file name.  This file name appears
+in cross references and node names if it differs from the current
+file, so you can always know that you are going to be switching to
+another manual and which one.
+
+However, Emacs normally hides some other text in cross-references.
+If you put your mouse over the cross reference, then the information
+appearing in a separate box (tool tip) or in the echo area will show
+the full cross-reference including the file name and the node name of
+the cross reference.  If you have a mouse, just leave it over the
+cross reference @xref{Top,, Overview of Texinfo, texinfo, Texinfo:
+The GNU Documentation Format}, and watch what happens.  If you
+always like to have that information visible without having to move
+your mouse over the cross reference, use @kbd{M-x visible-mode}, or
+set @code{Info-hide-note-references} to a value other than @code{t}
+(@pxref{Emacs Info Variables}).
 
 @format
 >> Now type @kbd{n} to learn more commands.
@@ -845,17 +840,18 @@ This allows Info readers to go to the exact line of an entry, not just
 the start of the containing node.)
 
   You can get to the index from the main menu of the file with the
-@kbd{m} command; then you can use the @kbd{m} command again in the
-index node to go to the node that describes the topic you want.
+@kbd{m} command and the name of the index node; then you can use the
+@kbd{m} command again in the index node to go to the node that
+describes the topic you want.
 
   There is also a short-cut Info command, @kbd{i}, which does all of
 that for you.  It searches the index for a given topic (a string) and
 goes to the node which is listed in the index for that topic.
-@xref{Info Search}, for a full explanation.
+@xref{Search Index}, for a full explanation.
 
 @kindex l @r{(Info mode)}
-@findex Info-last
-@cindex going back in Info mode
+@findex Info-history-back
+@cindex going back in Info history
   If you have been moving around to different nodes and wish to
 retrace your steps, the @kbd{l} command (@kbd{l} for @dfn{last}) will
 do that, one node-step at a time.  As you move from node to node, Info
@@ -863,7 +859,7 @@ records the nodes where you have been in a special history list.  The
 @kbd{l} command revisits nodes in the history list; each successive
 @kbd{l} command moves one step back through the history.
 
-  In Emacs, @kbd{l} runs the command @code{Info-last}.
+  In Emacs, @kbd{l} runs the command @code{Info-history-back}.
 
 @format
 >> Try typing @kbd{p p n} and then three @kbd{l}'s, pausing in between
@@ -875,6 +871,13 @@ where @emph{you} last were, whereas @kbd{p} always moves to the node
 which the header says is the @samp{Previous} node (from this node, the
 @samp{Prev} link leads to @samp{Help-Xref}).
 
+@kindex r @r{(Info mode)}
+@findex Info-history-forward
+@cindex going forward in Info history
+  You can use the @kbd{r} command (@code{Info-history-forward} in Emacs)
+to revisit nodes in the history list in the forward direction, so that
+@kbd{r} will return you to the node you came from by typing @kbd{l}.
+
 @kindex d @r{(Info mode)}
 @findex Info-directory
 @cindex go to Directory node
@@ -898,54 +901,131 @@ This is useful if you want to browse the manual's main menu, or select
 some specific top-level menu item.  The Emacs command run by @kbd{t}
 is @code{Info-top-node}.
 
-  Clicking @kbd{Mouse-2} on or near a cross reference also follows the
-reference.  You can see that the cross reference is mouse-sensitive by
-moving the mouse pointer to the reference and watching how the
-underlying text and the mouse pointer change in response.
-
 @format
 >> Now type @kbd{n} to see the last node of the course.
 @end format
 
-  @xref{Expert Info}, for more advanced Info features.
+  @xref{Advanced}, for more advanced Info features.
 
 @c If a menu appears at the end of this node, remove it.
 @c It is an accident of the menu updating command.
 
-@node Expert Info
-@chapter Info for Experts
+@node Advanced
+@chapter Advanced Info Commands
 
-  This chapter describes various Info commands for experts.  (If you
+  This chapter describes various advanced Info commands.  (If you
 are using a stand-alone Info reader, there are additional commands
 specific to it, which are documented in several chapters of @ref{Top,,
 GNU Info, info-stnd, GNU Info}.)
 
-  This chapter also explains how to write an Info as distinct from a
-Texinfo file.  (However, in most cases, writing a Texinfo file is
-better, since you can use it to make a printed manual or produce other
-formats, such as HTML and DocBook, as well as for generating Info
-files.)  @xref{Top,, Overview of Texinfo, texinfo, Texinfo: The GNU
-Documentation Format}.
-
 @menu
-* Advanced::             Advanced Info commands: g, e, and 1 - 9.
-* Info Search::          How to search Info documents for specific subjects.
-* Add::                  Describes how to add new nodes to the hierarchy.
-                           Also tells what nodes look like.
-* Menus::                How to add to or create menus in Info nodes.
-* Cross-refs::           How to add cross-references to Info nodes.
-* Tags::                 How to make tags tables for Info files.
-* Checking::             Checking an Info File
+* Search Text::          How to search Info documents.
+* Search Index::         How to search the indices for specific subjects.
+* Go to node::           How to go to a node by name.
+* Choose menu subtopic:: How to choose a menu subtopic by its number.
+* Create Info buffer::   How to create a new Info buffer in Emacs.
 * Emacs Info Variables:: Variables modifying the behavior of Emacs Info.
 @end menu
 
-@node Advanced, Info Search,  , Expert Info
+@node Search Text, Search Index,  , Advanced
 @comment  node-name,  next,  previous,  up
-@section Advanced Info Commands
+@section How to search Info documents
+
+@cindex searching Info documents
+@cindex Info document as a reference
+  The commands which move between and inside nodes allow you to read
+the entire manual or its large portions.  But what if you need to find
+some information in the manual as fast as you can, and you don't know
+or don't remember in what node to look for it?  This need arises when
+you use a manual as a @dfn{reference}, or when it is impractical to
+read the entire manual before you start using the programs it
+describes.
+
+  Info has powerful searching facilities that let you find things
+quickly.  You can search either the manual text or its indices.
+
+@kindex s @r{(Info mode)}
+@findex Info-search
+  The @kbd{s} command allows you to search a whole Info file for a string.
+It switches to the next node if and when that is necessary.  You
+type @kbd{s} followed by the string to search for, terminated by
+@key{RET}.  To search for the same string again, just @kbd{s} followed
+by @key{RET} will do.  The file's nodes are scanned in the order
+they are in the file, which has no necessary relationship to the
+order that they may be in the tree structure of menus and @samp{next}
+pointers.  But normally the two orders are not very different.  In any
+case, you can always look at the mode line to find out what node you have
+reached, if the header is not visible (this can happen, because @kbd{s}
+puts your cursor at the occurrence of the string, not at the beginning
+of the node).
+
+@kindex M-s @r{(Info mode)}
+  In Emacs, @kbd{Meta-s} is equivalent to @kbd{s}.  That is for
+compatibility with other GNU packages that use @kbd{M-s} for a similar
+kind of search command.  Both @kbd{s} and @kbd{M-s} run in Emacs the
+command @code{Info-search}.
+
+@kindex C-s @r{(Info mode)}
+@kindex C-r @r{(Info mode)}
+@findex isearch
+  Instead of using @kbd{s} in Emacs Info and in the stand-alone Info,
+you can use an incremental search started with @kbd{C-s} or @kbd{C-r}.
+It can search through multiple Info nodes.  @xref{Incremental Search,,,
+emacs, The GNU Emacs Manual}.  In Emacs, this behavior is enabled only
+if the variable @code{Info-isearch-search} is non-@code{nil}
+(@pxref{Emacs Info Variables}).
+
+@node Search Index, Go to node, Search Text, Advanced
+@comment  node-name,  next,  previous,  up
+@section How to search the indices for specific subjects
+
+@cindex searching Info indices
+@kindex i @r{(Info mode)}
+@findex Info-index
+  Since most topics in the manual should be indexed, you should try
+the index search first before the text search.  The @kbd{i} command
+prompts you for a subject and then looks up that subject in the
+indices.  If it finds an index entry with the subject you typed, it
+goes to the node to which that index entry points.  You should browse
+through that node to see whether the issue you are looking for is
+described there.  If it isn't, type @kbd{,} one or more times to go
+through additional index entries which match your subject.
+
+  The @kbd{i} command and subsequent @kbd{,} commands find all index
+entries which include the string you typed @emph{as a substring}.
+For each match, Info shows in the echo area the full index entry it
+found.  Often, the text of the full index entry already gives you
+enough information to decide whether it is relevant to what you are
+looking for, so we recommend that you read what Info shows in the echo
+area before looking at the node it displays.
+
+  Since @kbd{i} looks for a substring, you can search for subjects even
+if you are not sure how they are spelled in the index.  For example,
+suppose you want to find something that is pertinent to commands which
+complete partial input (e.g., when you type @key{TAB}).  If you want
+to catch index entries that refer to ``complete'', ``completion'', and
+``completing'', you could type @kbd{icomplet@key{RET}}.
+
+  Info documents which describe programs should index the commands,
+options, and key sequences that the program provides.  If you are
+looking for a description of a command, an option, or a key, just type
+their names when @kbd{i} prompts you for a topic.  For example, if you
+want to read the description of what the @kbd{C-l} key does, type
+@kbd{iC-l@key{RET}} literally.
 
-Here are some more Info commands that make it easier to move around.
+  In Emacs, @kbd{i} runs the command @code{Info-index}.
 
-@subheading @kbd{g} goes to a node by name
+@findex info-apropos
+@findex index-apropos
+If you aren't sure which manual documents the topic you are looking
+for, try the @kbd{M-x info-apropos} command in Emacs, or the @kbd{M-x
+index-apropos} command in the stand-alone reader.  It prompts for
+a string and then looks up that string in all the indices of all the
+Info documents installed on your system.
+
+@node Go to node, Choose menu subtopic, Search Index, Advanced
+@comment  node-name,  next,  previous,  up
+@section @kbd{g} goes to a node by name
 
 @kindex g @r{(Info mode)}
 @findex Info-goto-node
@@ -953,7 +1033,7 @@ Here are some more Info commands that make it easier to move around.
   If you know a node's name, you can go there by typing @kbd{g}, the
 name, and @key{RET}.  Thus, @kbd{gTop@key{RET}} would go to the node
 called @samp{Top} in this file.  (This is equivalent to @kbd{t}, see
-@ref{Help-Int}.)  @kbd{gAdvanced@key{RET}} would come back here.
+@ref{Help-Int}.)  @kbd{gGo to node@key{RET}} would come back here.
 @kbd{g} in Emacs runs the command @code{Info-goto-node}.
 
   Unlike @kbd{m}, @kbd{g} does not allow the use of abbreviations.
@@ -969,9 +1049,11 @@ the node @samp{Top} in the Info file @file{dir}.  Likewise,
 
   The node name @samp{*} specifies the whole file.  So you can look at
 all of the current file by typing @kbd{g*@key{RET}} or all of any
-other file with @kbd{g(@var{filename})@key{RET}}.
+other file with @kbd{g(@var{filename})*@key{RET}}.
 
-@subheading @kbd{1} -- @kbd{9} choose a menu subtopic by its number
+@node Choose menu subtopic, Create Info buffer, Go to node, Advanced
+@comment  node-name,  next,  previous,  up
+@section @kbd{1}--@kbd{9} choose a menu subtopic by its number
 
 @kindex 1 @r{through} 9 @r{(Info mode)}
 @findex Info-nth-menu-item
@@ -996,28 +1078,15 @@ underlining.  If you need to actually count items, it is better to use
 @kbd{m} instead, and specify the name, or use @key{TAB} to quickly
 move between menu items.
 
-@subheading @kbd{e} makes Info document editable
-
-@kindex e @r{(Info mode)}
-@findex Info-edit
-@cindex edit Info document
-  The Info command @kbd{e} changes from Info mode to an ordinary
-Emacs editing mode, so that you can edit the text of the current node.
-Type @kbd{C-c C-c} to switch back to Info.  The @kbd{e} command is allowed
-only if the variable @code{Info-enable-edit} is non-@code{nil}.
-
-  The @kbd{e} command only works in Emacs, where it runs the command
-@code{Info-edit}.  The stand-alone Info reader doesn't allow you to
-edit the Info file, so typing @kbd{e} there goes to the end of the
-current node.
-
-@subheading @kbd{M-n} creates a new independent Info buffer in Emacs
+@node Create Info buffer, Emacs Info Variables, Choose menu subtopic, Advanced
+@comment  node-name,  next,  previous,  up
+@section @kbd{M-n} creates a new independent Info buffer in Emacs
 
 @kindex M-n @r{(Info mode)}
 @findex clone-buffer
 @cindex multiple Info buffers
   If you are reading Info in Emacs, you can select a new independent
-Info buffer in another window by typing @kbd{M-n}.  The new buffer
+Info buffer in the same window by typing @kbd{M-n}.  The new buffer
 starts out as an exact copy of the old one, but you will be able to
 move independently between nodes in the two buffers.  (In Info mode,
 @kbd{M-n} runs the Emacs command @code{clone-buffer}.)
@@ -1028,89 +1097,132 @@ m} and @kbd{C-u g} go to a new node in exactly the same way that
 @kbd{m} and @kbd{g} do, but they do so in a new Info buffer which they
 select in another window.
 
-@node Info Search, Add, Advanced, Expert Info
+  Another way to produce new Info buffers in Emacs is to use a numeric
+prefix argument for the @kbd{C-h i} command (@code{info}) which
+switches to the Info buffer with that number.  Thus, @kbd{C-u 2 C-h i}
+switches to the buffer @samp{*info*<2>}, creating it if necessary.
+
+@node Emacs Info Variables, , Create Info buffer, Advanced
 @comment  node-name,  next,  previous,  up
-@section How to search Info documents for specific subjects
+@section Emacs Info-mode Variables
 
-@cindex searching Info documents
-@cindex Info document as a reference
-  The commands which move between and inside nodes allow you to read
-the entire manual or its large portions.  But what if you need to find
-some information in the manual as fast as you can, and you don't know
-or don't remember in what node to look for it?  This need arises when
-you use a manual as a @dfn{reference}, or when it is impractical to
-read the entire manual before you start using the programs it
-describes.
+The following variables may modify the behavior of Info-mode in Emacs;
+you may wish to set one or several of these variables interactively, or
+in your @file{~/.emacs} init file.  @xref{Examining, Examining and Setting
+Variables, Examining and Setting Variables, emacs, The GNU Emacs
+Manual}.  The stand-alone Info reader program has its own set of
+variables, described in @ref{Variables,, Manipulating Variables,
+info-stnd, GNU Info}.
 
-  Info has powerful searching facilities that let you find things
-quickly.  You can search either the manual indices or its text.
+@vtable @code
+@item Info-directory-list
+The list of directories to search for Info files.  Each element is a
+string (directory name) or @code{nil} (try default directory).  If not
+initialized Info uses the environment variable @env{INFOPATH} to
+initialize it, or @code{Info-default-directory-list} if there is no
+@env{INFOPATH} variable in the environment.
 
-@kindex i @r{(Info mode)}
-@findex Info-index
-  Since most subjects related to what the manual describes should be
-indexed, you should try the index search first.  The @kbd{i} command
-prompts you for a subject and then looks up that subject in the
-indices.  If it finds an index entry with the subject you typed, it
-goes to the node to which that index entry points.  You should browse
-through that node to see whether the issue you are looking for is
-described there.  If it isn't, type @kbd{,} one or more times to go
-through additional index entries which match your subject.
+If you wish to customize the Info directory search list for both Emacs
+Info and stand-alone Info, it is best to set the @env{INFOPATH}
+environment variable, since that applies to both programs.
 
-  The @kbd{i} command finds all index entries which include the string
-you typed @emph{as a substring}.  For each match, Info shows in the
-echo area the full index entry it found.  Often, the text of the full
-index entry already gives you enough information to decide whether it
-is relevant to what you are looking for, so we recommend that you read
-what Info shows in the echo area before looking at the node it
-displays.
+@item Info-additional-directory-list
+A list of additional directories to search for Info documentation files.
+These directories are not searched for merging the @file{dir} file.
 
-  Since @kbd{i} looks for a substring, you can search for subjects even
-if you are not sure how they are spelled in the index.  For example,
-suppose you want to find something that is pertinent to commands which
-complete partial input (e.g., when you type @key{TAB}).  If you want
-to catch index entries that refer to ``complete'', ``completion'', and
-``completing'', you could type @kbd{icomplet@key{RET}}.
+@item Info-mode-hook
+Hooks run when @code{Info-mode} is called.  By default, it contains
+the hook @code{turn-on-font-lock} which enables highlighting of Info
+files.  You can change how the highlighting looks by customizing the
+faces @code{info-node}, @code{info-xref}, @code{info-xref-visited},
+@code{info-header-xref}, @code{info-header-node}, @code{info-menu-header},
+@code{info-menu-star}, and @code{info-title-@var{n}} (where @var{n}
+is the level of the section, a number between 1 and 4).  To customize
+a face, type @kbd{M-x customize-face @key{RET} @var{face} @key{RET}},
+where @var{face} is one of the face names listed here.
 
-  Info documents which describe programs should index the commands,
-options, and key sequences that the program provides.  If you are
-looking for a description of a command, an option, or a key, just type
-their names when @kbd{i} prompts you for a topic.  For example, if you
-want to read the description of what the @kbd{C-f} key does, type
-@kbd{i C - f @key{RET}}.  Here @kbd{C-f} are 3 literal characters
-@samp{C}, @samp{-}, and @samp{f}, not the ``Control-f'' command key
-you type inside Emacs to run the command bound to @kbd{C-f}.
+@item Info-fontify-maximum-menu-size
+Maximum size of menu to fontify if @code{font-lock-mode} is non-@code{nil}.
 
-  In Emacs, @kbd{i} runs the command @code{Info-index}.
+@item Info-fontify-visited-nodes
+If non-@code{nil}, menu items and cross-references pointing to visited
+nodes are displayed in the @code{info-xref-visited} face.
 
-@findex info-apropos
-If you don't know what manual documents something, try the @kbd{M-x
-info-apropos} command.  It prompts for a string and then looks up that
-string in all the indices of all the Info documents installed on your
-system.
+@item Info-use-header-line
+If non-@code{nil}, Emacs puts in the Info buffer a header line showing
+the @samp{Next}, @samp{Prev}, and @samp{Up} links.  A header line does
+not scroll with the rest of the buffer, making these links always
+visible.
 
-@kindex s @r{(Info mode)}
-@findex Info-search
-  The @kbd{s} command allows you to search a whole file for a string.
-It switches to the next node if and when that is necessary.  You
-type @kbd{s} followed by the string to search for, terminated by
-@key{RET}.  To search for the same string again, just @kbd{s} followed
-by @key{RET} will do.  The file's nodes are scanned in the order
-they are in in the file, which has no necessary relationship to the
-order that they may be in the tree structure of menus and @samp{next}
-pointers.  But normally the two orders are not very different.  In any
-case, you can always do a @kbd{b} to find out what node you have
-reached, if the header is not visible (this can happen, because @kbd{s}
-puts your cursor at the occurrence of the string, not at the beginning
-of the node).
+@item Info-hide-note-references
+As explained in earlier nodes, the Emacs version of Info normally
+hides some text in menus and cross-references.  You can completely
+disable this feature, by setting this option to @code{nil}.  Setting
+it to a value that is neither @code{nil} nor @code{t} produces an
+intermediate behavior, hiding a limited amount of text, but showing
+all text that could potentially be useful.
 
-@kindex M-s @r{(Info mode)}
-  In Emacs, @kbd{Meta-s} is equivalent to @kbd{s}.  That is for
-compatibility with other GNU packages that use @kbd{M-s} for a similar
-kind of search command.  Both @kbd{s} and @kbd{M-s} run in Emacs the
-command @code{Info-search}.
+@item Info-scroll-prefer-subnodes
+If set to a non-@code{nil} value, @key{SPC} and @key{BACKSPACE} (or
+@key{DEL}) keys in a menu visit subnodes of the current node before
+scrolling to its end or beginning, respectively.  For example, if the
+node's menu appears on the screen, the next @key{SPC} moves to a
+subnode indicated by the following menu item.  Setting this option to
+@code{nil} results in behavior similar to the stand-alone Info reader
+program, which visits the first subnode from the menu only when you
+hit the end of the current node.  The default is @code{nil}.
 
+@item Info-isearch-search
+If non-@code{nil}, isearch in Info searches through multiple nodes.
 
-@node Add, Menus, Info Search, Expert Info
+@item Info-enable-active-nodes
+When set to a non-@code{nil} value, allows Info to execute Lisp code
+associated with nodes.  The Lisp code is executed when the node is
+selected.  The Lisp code to be executed should follow the node
+delimiter (the @samp{DEL} character) and an @samp{execute: } tag, like
+this:
+
+@example
+^_execute: (message "This is an active node!")
+@end example
+@end vtable
+
+
+@node Expert Info
+@chapter Info for Experts
+
+  This chapter explains how to write an Info file by hand.  However,
+in most cases, writing a Texinfo file is better, since you can use it
+to make a printed manual or produce other formats, such as HTML and
+DocBook, as well as for generating Info files.
+
+The @code{makeinfo} command converts a Texinfo file into an Info file;
+@code{texinfo-format-region} and @code{texinfo-format-buffer} are GNU
+Emacs functions that do the same.
+
+@xref{Top,, Overview of Texinfo, texinfo, Texinfo: The GNU
+Documentation Format}, for how to write a Texinfo file.
+
+@xref{Creating an Info File,,, texinfo, Texinfo: The GNU Documentation
+Format}, for how to create an Info file from a Texinfo file.
+
+@xref{Installing an Info File,,, texinfo, Texinfo: The GNU
+Documentation Format}, for how to install an Info file after you
+have created one.
+
+However, if you want to edit an Info file manually and install it manually,
+here is how.
+
+@menu
+* Add::                   Describes how to add new nodes to the hierarchy.
+                            Also tells what nodes look like.
+* Menus::                 How to add to or create menus in Info nodes.
+* Cross-refs::            How to add cross-references to Info nodes.
+* Tags::                  How to make tags tables for Info files.
+* Checking::              Checking an Info File.
+@end menu
+
+@node Add, Menus,  , Expert Info
 @comment  node-name,  next,  previous,  up
 @section Adding a new node to Info
 
@@ -1123,14 +1235,6 @@ Create some nodes, in some file, to document that topic.
 Put that topic in the menu in the directory.  @xref{Menus, Menu}.
 @end enumerate
 
-  Usually, the way to create the nodes is with Texinfo (@pxref{Top,,
-Overview of Texinfo, texinfo, Texinfo: The GNU Documentation Format});
-this has the advantage that you can also make a printed manual or HTML
-from them.  You would use the @samp{@@dircategory} and
-@samp{@@direntry} commands to put the manual into the Info directory.
-However, if you want to edit an Info file manually and install it
-manually, here is how.
-
 @cindex node delimiters
   The new node can live in an existing documentation file, or in a new
 one.  It must have a @samp{^_} character before it (invisible to the
@@ -1245,9 +1349,9 @@ the nodes in a file to form a connected structure.  In fact, this file
 has two connected components.  You are in one of them, which is under
 the node @samp{Top}; the other contains the node @samp{Help} which the
 @kbd{h} command goes to.  In fact, since there is no garbage
-collector, nothing terrible happens if a substructure is not pointed
-to, but such a substructure is rather useless since nobody can
-ever find out that it exists.
+collector on the node graph, nothing terrible happens if a substructure
+is not pointed to, but such a substructure is rather useless since nobody
+can ever find out that it exists.
 
 @node Cross-refs, Tags, Menus, Expert Info
 @comment  node-name,  next,  previous,  up
@@ -1310,7 +1414,7 @@ as new users should do when they learn a new package.
 something quickly in a manual---that is, when you need to use a manual
 as a reference rather than as a tutorial.  We urge you to learn
 these search commands as well.  If you want to do that now, follow this
-cross reference to @ref{Info Search}.
+cross reference to @ref{Advanced}.
 
 Yet another set of commands are meant for experienced users; you can
 find them by looking in the Directory node for documentation on Info.
@@ -1328,7 +1432,7 @@ manner.
 @comment  node-name,  next,  previous,  up
 @section Tags Tables for Info Files
 
-@cindex tags tables in info files
+@cindex tags tables in Info files
   You can speed up the access to nodes of a large Info file by giving
 it a tags table.  Unlike the tags table for a program, the tags table for
 an Info file lives inside the file itself and is used
@@ -1368,8 +1472,7 @@ the beginning of the node's header (ending just after the node name),
 a @samp{DEL} character, and the character position in the file of the
 beginning of the node.
 
-
-@node Checking, Emacs Info Variables, Tags, Expert Info
+@node Checking, , Tags, Expert Info
 @section Checking an Info File
 
 When creating an Info file, it is easy to forget the name of a node when
@@ -1388,101 +1491,6 @@ usually few.
 To check an Info file, do @kbd{M-x Info-validate} while looking at any
 node of the file with Emacs Info mode.
 
-@node Emacs Info Variables, , Checking, Expert Info
-@section Emacs Info-mode Variables
-
-The following variables may modify the behavior of Info-mode in Emacs;
-you may wish to set one or several of these variables interactively, or
-in your @file{~/.emacs} init file.  @xref{Examining, Examining and Setting
-Variables, Examining and Setting Variables, emacs, The GNU Emacs
-Manual}.  The stand-alone Info reader program has its own set of
-variables, described in @ref{Variables,, Manipulating Variables,
-info-stnd, GNU Info}.
-
-@vtable @code
-@item Info-directory-list
-The list of directories to search for Info files.  Each element is a
-string (directory name) or @code{nil} (try default directory).  If not
-initialized Info uses the environment variable @env{INFOPATH} to
-initialize it, or @code{Info-default-directory-list} if there is no
-@env{INFOPATH} variable in the environment.
-
-If you wish to customize the Info directory search list for both Emacs
-info and stand-alone Info, it is best to set the @env{INFOPATH}
-environment variable, since that applies to both programs.
-
-@item Info-additional-directory-list
-A list of additional directories to search for Info documentation files.
-These directories are not searched for merging the @file{dir} file.
-
-@item Info-fontify
-When set to a non-@code{nil} value, enables highlighting of Info
-files.  The default is @code{t}.  You can change how the highlighting
-looks by customizing the faces @code{info-node}, @code{info-xref},
-@code{info-header-xref}, @code{info-header-node}, @code{info-menu-5},
-@code{info-menu-header}, and @code{info-title-@var{n}-face} (where
-@var{n} is the level of the section, a number between 1 and 4).  To
-customize a face, type @kbd{M-x customize-face @key{RET} @var{face}
-@key{RET}}, where @var{face} is one of the face names listed here.
-
-@item Info-use-header-line
-If non-@code{nil}, Emacs puts in the Info buffer a header line showing
-the @samp{Next}, @samp{Prev}, and @samp{Up} links.  A header line does
-not scroll with the rest of the buffer, making these links always
-visible.
-
-@item Info-hide-note-references
-As explained in earlier nodes, the Emacs version of Info normally
-hides some text in menus and cross-references.  You can completely
-disable this feature, by setting this option to @code{nil}.  Setting
-it to a value that is neither @code{nil} nor @code{t} produces an
-intermediate behavior, hiding a limited amount of text, but showing
-all text that could potentially be useful.
-
-@item Info-scroll-prefer-subnodes
-If set to a non-@code{nil} value, @key{SPC} and @key{BACKSPACE} (or
-@key{DEL}) keys in a menu visit subnodes of the current node before
-scrolling to its end or beginning, respectively.  For example, if the
-node's menu appears on the screen, the next @key{SPC} moves to a
-subnode indicated by the following menu item.  Setting this option to
-@code{nil} results in behavior similar to the stand-alone Info reader
-program, which visits the first subnode from the menu only when you
-hit the end of the current node.  The default is @code{nil}.
-
-@item Info-enable-active-nodes
-When set to a non-@code{nil} value, allows Info to execute Lisp code
-associated with nodes.  The Lisp code is executed when the node is
-selected.  The Lisp code to be executed should follow the node
-delimiter (the @samp{DEL} character) and an @samp{execute: } tag, like
-this:
-
-@example
-^_execute: (message "This is an active node!")
-@end example
-
-@item Info-enable-edit
-Set to @code{nil}, disables the @samp{e} (@code{Info-edit}) command.  A
-non-@code{nil} value enables it.  @xref{Add, Edit}.
-@end vtable
-
-
-@node Creating an Info File
-@chapter Creating an Info File from a Texinfo File
-
-@code{makeinfo} is a utility that converts a Texinfo file into an Info
-file; @code{texinfo-format-region} and @code{texinfo-format-buffer} are
-GNU Emacs functions that do the same.
-
-@xref{Top,, Overview of Texinfo, texinfo, Texinfo: The GNU
-Documentation Format}, to learn how to write a Texinfo file.
-
-@xref{Creating an Info File,,, texinfo, Texinfo: The GNU Documentation
-Format}, to learn how to create an Info file from a Texinfo file.
-
-@xref{Installing an Info File,,, texinfo, Texinfo: The GNU
-Documentation Format}, to learn how to install an Info file after you
-have created one.
-
 @node Index
 @unnumbered Index