summaryrefslogtreecommitdiff
path: root/Master/texmf/doc
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-03 00:03:41 +0000
committerKarl Berry <karl@freefriends.org>2006-01-03 00:03:41 +0000
commited761d546905fa3c52013c1075865991b5f485ff (patch)
treece0129220c44a6e522cf73525cf50aa7d89be0c8 /Master/texmf/doc
parent190e50abeda2127720c100ad282c55a4bd332cf3 (diff)
trunk/Master/texmf/doc/texinfo/
git-svn-id: svn://tug.org/texlive/trunk@60 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf/doc')
-rw-r--r--Master/texmf/doc/texinfo/info-stnd.html2463
-rw-r--r--Master/texmf/doc/texinfo/info-stnd.pdfbin0 -> 366035 bytes
-rw-r--r--Master/texmf/doc/texinfo/info.html1534
-rw-r--r--Master/texmf/doc/texinfo/info.pdfbin0 -> 229224 bytes
-rw-r--r--Master/texmf/doc/texinfo/texinfo.html19883
-rw-r--r--Master/texmf/doc/texinfo/texinfo.pdfbin0 -> 1603231 bytes
6 files changed, 23880 insertions, 0 deletions
diff --git a/Master/texmf/doc/texinfo/info-stnd.html b/Master/texmf/doc/texinfo/info-stnd.html
new file mode 100644
index 00000000000..3e227d9a42f
--- /dev/null
+++ b/Master/texmf/doc/texinfo/info-stnd.html
@@ -0,0 +1,2463 @@
+<html lang="en">
+<head>
+<title>GNU Info 4.7</title>
+<meta http-equiv="Content-Type" content="text/html">
+<meta name="description" content="GNU Info 4.7">
+<meta name="generator" content="makeinfo 4.7">
+<link title="Top" rel="top" href="#Top">
+<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
+<!--
+This manual is for GNU Info (version 4.7, 23 March 2004),
+a program for viewing documents in Info format (usually created from
+Texinfo source files).
+
+Copyright (C) 1992, 1993, 1996, 1997, 1998, 1999, 2001, 2002,
+2003, 2004 Free Software Foundation, Inc.
+
+ 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 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 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."
+ -->
+<meta http-equiv="Content-Style-Type" content="text/css">
+<style type="text/css"><!--
+ pre.display { font-family:inherit }
+ pre.format { font-family:inherit }
+ pre.smalldisplay { font-family:inherit; font-size:smaller }
+ pre.smallformat { font-family:inherit; font-size:smaller }
+ pre.smallexample { font-size:smaller }
+ pre.smalllisp { font-size:smaller }
+ span.sc { font-variant:small-caps }
+ span.roman { font-family: serif; font-weight: normal; }
+--></style>
+</head>
+<body>
+<h1 class="settitle">GNU Info 4.7</h1>
+ <div class="contents">
+<h2>Table of Contents</h2>
+<ul>
+<li><a name="toc_Top" href="#Top">GNU Info</a>
+<li><a name="toc_What-is-Info" href="#What-is-Info">1 What is Info?</a>
+<li><a name="toc_Invoking-Info" href="#Invoking-Info">2 Invoking Info</a>
+<li><a name="toc_Cursor-Commands" href="#Cursor-Commands">3 Moving the Cursor</a>
+<li><a name="toc_Scrolling-Commands" href="#Scrolling-Commands">4 Moving Text Within a Window</a>
+<li><a name="toc_Node-Commands" href="#Node-Commands">5 Selecting a Node</a>
+<li><a name="toc_Searching-Commands" href="#Searching-Commands">6 Searching an Info File</a>
+<li><a name="toc_Xref-Commands" href="#Xref-Commands">7 Selecting Cross References</a>
+<ul>
+<li><a href="#Parts-of-an-Xref">7.1 Parts of an Xref</a>
+<li><a href="#Selecting-Xrefs">7.2 Selecting Xrefs</a>
+</li></ul>
+<li><a name="toc_Window-Commands" href="#Window-Commands">8 Manipulating Multiple Windows</a>
+<ul>
+<li><a href="#The-Mode-Line">8.1 The Mode Line</a>
+<li><a href="#Basic-Windows">8.2 Window Commands</a>
+<li><a href="#The-Echo-Area">8.3 The Echo Area</a>
+</li></ul>
+<li><a name="toc_Printing-Nodes" href="#Printing-Nodes">9 Printing Nodes</a>
+<li><a name="toc_Miscellaneous-Commands" href="#Miscellaneous-Commands">10 Miscellaneous Commands</a>
+<li><a name="toc_Variables" href="#Variables">11 Manipulating Variables</a>
+<li><a name="toc_Custom-Key-Bindings" href="#Custom-Key-Bindings">12 Customizing Key Bindings and Variables</a>
+<ul>
+<li><a href="#Invoking-infokey">12.1 Invoking <span class="command">infokey</span></a>
+<li><a href="#infokey-source-format">12.2 <span class="command">infokey</span> source format</a>
+</li></ul>
+<li><a name="toc_Copying-This-Manual" href="#Copying-This-Manual">Appendix A Copying This Manual</a>
+<ul>
+<li><a href="#GNU-Free-Documentation-License">A.1 GNU Free Documentation License</a>
+<ul>
+<li><a href="#GNU-Free-Documentation-License">A.1.1 ADDENDUM: How to use this License for your documents</a>
+</li></ul>
+</li></ul>
+<li><a name="toc_Index" href="#Index">Appendix B Index</a>
+</li></ul>
+</div>
+
+
+
+<div class="node">
+<p><hr>
+<a name="Top"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#What-is-Info">What is Info</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#dir">(dir)</a>
+<br>
+</div>
+
+<h2 class="unnumbered">GNU Info</h2>
+
+<p>This manual is for GNU Info (version 4.7, 23 March 2004),
+a program for viewing documents in Info format (usually created from
+Texinfo source files).
+
+ <p>Copyright &copy; 1992, 1993, 1996, 1997, 1998, 1999, 2001, 2002,
+2003, 2004 Free Software Foundation, Inc.
+
+ <blockquote>
+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 no
+Invariant Sections, with the Front-Cover texts being &ldquo;A GNU Manual,&rdquo;
+and with the Back-Cover Texts as in (a) below. A copy of the
+license is included in the section entitled &ldquo;GNU Free Documentation
+License.&rdquo;
+
+ <p>(a) The FSF's Back-Cover Text is: &ldquo;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.&rdquo;
+</blockquote>
+
+ <p>This documentation is different from the documentation for the Info
+reader that is part of GNU Emacs. If you do not know how to use Info,
+but have a working Info reader, you should read the Emacs documentation
+first, as it includes more background information and a thorough tutorial.
+
+<ul class="menu">
+<li><a accesskey="1" href="#What-is-Info">What is Info</a>: What is Info?
+<li><a accesskey="2" href="#Invoking-Info">Invoking Info</a>: Options you can pass on the command line.
+<li><a accesskey="3" href="#Cursor-Commands">Cursor Commands</a>: Commands which move the cursor within a node.
+<li><a accesskey="4" href="#Scrolling-Commands">Scrolling Commands</a>: Commands for reading the text within a node.
+<li><a accesskey="5" href="#Node-Commands">Node Commands</a>: Commands for selecting a new node.
+<li><a accesskey="6" href="#Searching-Commands">Searching Commands</a>: Commands for searching an Info file.
+<li><a accesskey="7" href="#Xref-Commands">Xref Commands</a>: Commands for selecting cross references.
+<li><a accesskey="8" href="#Window-Commands">Window Commands</a>: Commands which manipulate multiple windows.
+<li><a accesskey="9" href="#Printing-Nodes">Printing Nodes</a>: How to print out the contents of a node.
+<li><a href="#Miscellaneous-Commands">Miscellaneous Commands</a>: A few commands that defy categories.
+<li><a href="#Variables">Variables</a>: How to change the default behavior of Info.
+<li><a href="#Custom-Key-Bindings">Custom Key Bindings</a>: How to define your own key-to-command bindings.
+<li><a href="#Copying-This-Manual">Copying This Manual</a>: The GNU Free Documentation License.
+<li><a href="#Index">Index</a>: Global index containing keystrokes,
+ command names, variable names,
+ and general concepts.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="What-is-Info"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Invoking-Info">Invoking Info</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Top">Top</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">1 What is Info?</h2>
+
+<p><dfn>Info</dfn> is a program which is used to view Info files on an ASCII
+terminal. <dfn>Info files</dfn> are the result of processing Texinfo files
+with the program <code>makeinfo</code> or with one of the Emacs commands, such
+as <code>M-x texinfo-format-buffer</code>. Texinfo itself is a documentation
+system that uses a single source file to produce both on-line
+information and printed output. You can typeset and print the files
+that you read in Info.
+
+<div class="node">
+<p><hr>
+<a name="Invoking-Info"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Cursor-Commands">Cursor Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#What-is-Info">What is Info</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">2 Invoking Info</h2>
+
+<p><a name="index-Info_002c-invoking-1"></a><a name="index-invoking-Info-2"></a><a name="index-command-line-options-3"></a><a name="index-options_002c-command-line-4"></a><a name="index-arguments_002c-command-line-5"></a>
+GNU Info accepts several options to control the initial node being
+viewed, and to specify which directories to search for Info files. Here
+is a template showing an invocation of GNU Info from the shell:
+
+<pre class="example"> info [<var>option</var>]... [<var>menu-item</var>...]
+</pre>
+ <p>The program accepts the following options:
+
+ <dl>
+<a name="_002d_002dapropos"></a>
+<dt><code>--apropos=</code><var>string</var><dd><a name="index-Searching-all-indices-6"></a><a name="index-Info-files_0040r_007b_002c-searching-all-indices_007d-7"></a><a name="index-Apropos_0040r_007b_002c-in-Info-files_007d-8"></a>Specify a string to search in every index of every Info file installed
+on your system. Info looks up the named <var>string</var> in all the indices
+it can find, prints the results to standard output, and then exits. If
+you are not sure which Info file explains certain issues, this option is
+your friend. Note that if your system has a lot of Info files
+installed, searching all of them might take some time.
+
+ <p>You can invoke the apropos command from inside Info; see
+<a href="#Searching-Commands">Searching Commands</a>.
+
+ <p><a name="index-directory-path-9"></a><br><dt><code>--directory </code><var>directory-path</var><dt><code>-d </code><var>directory-path</var><dd>Prepend <var>directory-path</var> to the list of directory paths searched
+when Info needs to find a file. You may issue <code>--directory</code>
+multiple times; once for each directory which contains Info files. The
+list of directories searched by Info is constructed from the value of
+the environment variable <code>INFOPATH</code>; <code>--directory</code> causes the
+named <var>directory-path</var> to be prepended to that list. The value of
+<code>INFOPATH</code> is a list of directories usually separated by a colon;
+on MS-DOS/MS-Windows systems, the semicolon is used. If you do not
+define <code>INFOPATH</code>, Info uses a default path defined when Info was
+built as the initial list of directories. If the value of
+<code>INFOPATH</code> ends with a colon (or semicolon on MS-DOS/MS-Windows),
+the initial list of directories is constructed by appending the
+build-time default to the value of <code>INFOPATH</code>.
+
+ <p><a name="index-keystrokes_002c-recording-10"></a><a name="index-remembering-user-keystrokes-11"></a><br><dt><code>--dribble=</code><var>dribble-file</var><dd>Specify a file where all user keystrokes will be recorded. This file
+can be used later to replay the same sequence of commands, see the
+<span class="samp">--restore</span> option below.
+
+ <br><dt><code>--file </code><var>filename</var><dt><code>-f </code><var>filename</var><dd><a name="index-Info-file_002c-selecting-12"></a>Specify a particular Info file to visit. By default, Info visits
+the file <code>dir</code>; if you use this option, Info will start with
+<code>(</code><var>filename</var><code>)Top</code> as the first file and node.
+
+ <p><a name="index-relative-Info-file-names-13"></a><a name="index-file-names_002c-relative-14"></a><a name="index-Info-files_002c-relative-15"></a>If <var>filename</var> is an absolute file name, or begins with <span class="file">./</span> or
+<span class="file">../</span>, Info looks for <var>filename</var> only in the directory of the
+specified <var>filename</var>, and adds the directory of <var>filename</var> to
+the value of <code>INFOPATH</code>. In contrast, if <var>filename</var> is in the
+form of a relative file name, but without the <span class="file">./</span> or <span class="file">../</span>
+prefix, Info will only look for it in the directories specified in
+<code>INFOPATH</code>. In other words, Info does <em>not</em> treat file names
+which lack <span class="file">./</span> and <span class="file">../</span> prefix as relative to the current
+directory.
+
+ <p><a name="index-compressed-Info-files-16"></a><a name="index-files_002c-compressed-17"></a><a name="index-Info-files_002c-compressed-18"></a>In every directory Info tries, if <var>filename</var> is not found, Info
+looks for it with a number of known extensions of Info files<a rel="footnote" href="#fn-1" name="fnd-1"><sup>1</sup></a>. For every
+known extension, Info looks for a compressed file, if a regular file
+isn't found. Info supports files compressed with <code>gzip</code>,
+<code>bzip2</code>, <code>compress</code> and <code>yabba</code> programs; it calls
+<code>gunzip</code>, <code>bunzip2</code>, <code>uncompress</code> and <code>unyabba</code>,
+accordingly, to decompress such files. Compressed Info files are
+assumed to have <span class="file">.z</span>, <span class="file">.gz</span>, <span class="file">.bz2</span>, <span class="file">.Z</span>, or
+<span class="file">.Y</span> extensions, possibly in addition to one of the known Info
+files extensions<a rel="footnote" href="#fn-2" name="fnd-2"><sup>2</sup></a>.
+
+ <br><dt><code>--help</code><dt><code>-h</code><dd>Produces a relatively brief description of the available Info options.
+
+ <br><dt><code>--index-search </code><var>string</var><dd><a name="index-index-search_002c-selecting-from-the-command-line-19"></a><a name="index-online-help_002c-using-Info-as-20"></a>After processing all command-line arguments, go to the index in the Info
+file and search for index entries which match <var>string</var>. If such an
+entry is found, the Info session begins with displaying the node pointed
+to by the first matching index entry; press <kbd>,</kbd> to step through the
+rest of the matching entries. If no such entry exists, print <span class="samp">no
+entries found</span> and exit with nonzero status. This can be used from
+another program as a way to provide online help, or as a quick way of
+starting to read an Info file at a certain node when you don't know the
+exact name of that node.
+
+ <p>This command can also be invoked from inside Info; see <a href="#Searching-Commands">Searching Commands</a>.
+
+ <br><dt><code>--node </code><var>nodename</var><dt><code>-n </code><var>nodename</var><dd><a name="index-node_002c-selecting-from-the-command-line-21"></a>Specify a particular node to visit in the initial file that Info
+loads. This is especially useful in conjunction with
+<code>--file</code><a rel="footnote" href="#fn-3" name="fnd-3"><sup>3</sup></a>. You may specify <code>--node</code> multiple times; for
+an interactive Info, each <var>nodename</var> is visited in its own window,
+for a non-interactive Info (such as when <code>--output</code> is given) each
+<var>nodename</var> is processed sequentially.
+
+ <br><dt><code>--output </code><var>filename</var><dt><code>-o </code><var>filename</var><dd><a name="index-file_002c-outputting-to-22"></a><a name="index-outputting-to-a-file-23"></a>Specify <var>filename</var> as the name of a file to which to direct output.
+Each node that Info visits will be output to <var>filename</var> instead of
+interactively viewed. A value of <code>-</code> for <var>filename</var> specifies
+the standard output.
+
+ <p><a name="index-colors-in-documents-24"></a><a name="index-ANSI-escape-sequences-in-documents-25"></a><br><dt><code>--raw-escapes</code><dt><code>--no-raw-escapes</code><dt><code>-R</code><dd>Do not remove ANSI escape sequences from documents. Some versions of
+Groff, the GNU document formatter, produce man pages with ANSI escape
+sequences for bold, italics, and underlined characters, and for
+colorized text. By default, Info lets those escape sequences pass
+through directly to the terminal. If your terminal does not support
+these escapes, use <code>--no-raw-escapes</code> to make Info remove them.
+
+ <p><a name="index-replaying-recorded-keystrokes-26"></a><br><dt><code>--restore=</code><var>dribble-file</var><dd>Read keystrokes from <var>dribble-file</var>, presumably recorded during
+previous Info session (see the description of the <span class="samp">--dribble</span>
+option above). When the keystrokes in the files are all read, Info
+reverts its input to the usual interactive operation.
+
+ <p><a name="_002d_002dshow_002doptions"></a>
+<a name="index-command_002dline-options_002c-how-to-find-27"></a><a name="index-invocation-description_002c-how-to-find-28"></a><br><dt><code>--show-options</code><dt><code>--usage</code><dt><code>-O</code><dd>This option causes Info to look for the node that describes how to
+invoke the program and its command-line options, and begin the session
+by displaying that node. It is provided to make it easier to find the
+most important usage information in a manual without the need to wade
+through complex menu hierarchies. The effect is similar to the
+<code>M-x goto-invocation</code> command (see <a href="#goto_002dinvocation">goto-invocation</a>) from inside
+Info.
+
+ <p><a name="index-speech-synthesizers-29"></a><br><dt><code>--speech-friendly</code><dt><code>-b</code><dd>On MS-DOS/MS-Windows only, this option causes Info to use standard file
+I/O functions for screen writes. (By default, Info uses direct writes
+to the video memory on these systems, for faster operation and colored
+display support.) This allows the speech synthesizers used by blind
+persons to catch the output and convert it to audible speech.
+
+ <br><dt><code>--subnodes</code><dd><a name="index-_0040code_007b_002d_002dsubnodes_007d_002c-command-line-option-30"></a>This option only has meaning when given in conjunction with
+<code>--output</code>. It means to recursively output the nodes appearing in
+the menus of each node being output. Menu items which resolve to
+external Info files are not output, and neither are menu items which are
+members of an index. Each node is only output once.
+
+ <br><dt><code>--version</code><dd><a name="index-version-information-31"></a>Prints the version information of Info and exits.
+
+ <p><a name="_002d_002dvi_002dkeys"></a>
+<a name="index-vi_002dlike-key-bindings-32"></a><a name="index-Less_002dlike-key-bindings-33"></a><br><dt><code>--vi-keys</code><dd>This option binds functions to keys differently, to emulate the key
+bindings of <code>vi</code> and Less. The default key bindings are generally
+modeled after Emacs.
+(See <a href="#Custom-Key-Bindings">Custom Key Bindings</a>,
+for a more general way of altering GNU Info's key bindings.)
+
+ <p><a name="index-Info-manual-location-34"></a><a name="index-Where-is-an-Info-manual_003f-35"></a><br><dt><code>--where</code><dt><code>--location</code><dt><code>-w</code><dd>Show the filename that would be read and exit, instead of actually
+reading it and starting Info.
+
+ <br><dt><var>menu-item</var><dd><a name="index-menu_002c-following-36"></a><a name="command_002dline-menu-items"></a>
+Info treats its remaining arguments as the names of menu items. The
+first argument is a menu item in the initial node visited (generally
+<code>dir</code>), the second argument is a menu item in the first argument's
+node, etc. You can easily move to the node of your choice by specifying
+the menu names which describe the path to that node. For example,
+
+ <pre class="example"> info emacs buffers
+ </pre>
+ <p class="noindent">first selects the menu item <span class="samp">Emacs</span> in the node <span class="samp">(dir)Top</span>,
+and then selects the menu item <span class="samp">Buffers</span> in the node
+<span class="samp">(emacs)Top</span>.
+</dl>
+
+ <p>To avoid searching the <span class="file">dir</span> files and just show some arbitrary
+file, use <span class="samp">-f</span> and the filename, as in <span class="samp">info -f ./foo.info</span>.
+
+ <p>The index search and the search for the node which describes program
+invocation and command-line options begins <em>after</em> processing all
+the command-line menu items. Therefore, the Info file searched for the
+index or the invocation node is the file where Info finds itself after
+following all the menu items given on the command line. This is so
+<span class="samp">info emacs --show-options</span> does what you'd expect.
+
+<!-- FIXME: the feature with lowercasing the file name isn't documented -->
+<div class="node">
+<p><hr>
+<a name="Cursor-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Scrolling-Commands">Scrolling Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Invoking-Info">Invoking Info</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">3 Moving the Cursor</h2>
+
+<p><a name="index-cursor_002c-moving-37"></a><a name="index-moving-the-cursor-38"></a>
+Many people find that reading screens of text page by page is made
+easier when one is able to indicate particular pieces of text with
+some kind of pointing device. Since this is the case, GNU Info (both
+the Emacs and standalone versions) have several commands which allow
+you to move the cursor about the screen. The notation used in this
+manual to describe keystrokes is identical to the notation used within
+the Emacs manual, and the GNU Readline manual. See <a href="emacs.html#User-Input">User Input (the GNU Emacs Manual)</a>, if you are unfamiliar with the
+notation.<a rel="footnote" href="#fn-4" name="fnd-4"><sup>4</sup></a>
+
+ <p>The following table lists the basic cursor movement commands in Info.
+Each entry consists of the key sequence you should type to execute the
+cursor movement, the <code>M-x</code><a rel="footnote" href="#fn-5" name="fnd-5"><sup>5</sup></a> command name (displayed in parentheses), and a short
+description of what the command does. All of the cursor motion commands
+can take a <dfn>numeric</dfn> argument (see <a href="#Miscellaneous-Commands"><code>universal-argument</code></a>. With a
+numeric argument, the motion commands are simply executed that
+many times; for example, a numeric argument of 4 given to
+<code>next-line</code> causes the cursor to move down 4 lines. With a
+negative numeric argument, the motion is reversed; an argument of -4
+given to the <code>next-line</code> command would cause the cursor to move
+<em>up</em> 4 lines.
+
+ <dl>
+<dt>&lt;C-n&gt; (<code>next-line</code>)<dt>&lt;DOWN&gt; (an arrow key)<dd><a name="index-C_002dn-39"></a><a name="index-DOWN-_0028an-arrow-key_0029-40"></a><a name="index-next_002dline-41"></a>Move the cursor down to the next line.
+
+ <br><dt>&lt;C-p&gt; (<code>prev-line</code>)<dt>&lt;UP&gt; (an arrow key)<dd><a name="index-C_002dp-42"></a><a name="index-UP-_0028an-arrow-key_0029-43"></a><a name="index-prev_002dline-44"></a>Move the cursor up to the previous line.
+
+ <br><dt>&lt;C-a&gt; (<code>beginning-of-line</code>)<dt>&lt;Home&gt; (on DOS/Windows only)<dd><a name="index-C_002da_002c-in-Info-windows-45"></a><a name="index-Home-46"></a><a name="index-beginning_002dof_002dline-47"></a>Move the cursor to the start of the current line.
+
+ <br><dt>&lt;C-e&gt; (<code>end-of-line</code>)<dt>&lt;End&gt; (on DOS/Windows only)<dd><a name="index-C_002de_002c-in-Info-windows-48"></a><a name="index-End-49"></a><a name="index-end_002dof_002dline-50"></a>Move the cursor to the end of the current line.
+
+ <br><dt>&lt;C-f&gt; (<code>forward-char</code>)<dt>&lt;RIGHT&gt; (an arrow key)<dd><a name="index-C_002df_002c-in-Info-windows-51"></a><a name="index-RIGHT-_0028an-arrow-key_0029-52"></a><a name="index-forward_002dchar-53"></a>Move the cursor forward a character.
+
+ <br><dt>&lt;C-b&gt; (<code>backward-char</code>)<dt>&lt;LEFT&gt; (an arrow key)<dd><a name="index-C_002db_002c-in-Info-windows-54"></a><a name="index-LEFT-_0028an-arrow-key_0029-55"></a><a name="index-backward_002dchar-56"></a>Move the cursor backward a character.
+
+ <br><dt>&lt;M-f&gt; (<code>forward-word</code>)<dt><kbd>C-&lt;RIGHT&gt;</kbd> (on DOS/Windows only)<dd><a name="index-M_002df_002c-in-Info-windows-57"></a><a name="index-C_002dRIGHT-58"></a><a name="index-forward_002dword-59"></a>Move the cursor forward a word.
+
+ <br><dt>&lt;M-b&gt; (<code>backward-word</code>)<dt><kbd>C-&lt;LEFT&gt;</kbd> (on DOS/Windows only)<dd><a name="index-M_002db_002c-in-Info-windows-60"></a><a name="index-C_002dLEFT-61"></a><a name="index-backward_002dword-62"></a>Move the cursor backward a word.
+
+ <br><dt>&lt;M-&lt;&gt; (<code>beginning-of-node</code>)<dt>&lt;C-&lt;Home&gt;&gt; (on DOS/Windows only)<dt>&lt;b&gt;<dt>&lt;M-b&gt;, vi-like operation<dd><a name="index-b_002c-in-Info-windows-63"></a><a name="index-M_002d_003c-64"></a><a name="index-C_002dHome-65"></a><a name="index-M_002db_002c-vi_002dlike-operation-66"></a><a name="index-beginning_002dof_002dnode-67"></a>Move the cursor to the start of the current node.
+
+ <br><dt>&lt;M-&gt;&gt; (<code>end-of-node</code>)<dt>&lt;C-&lt;End&gt;&gt; (on DOS/Windows only)<dt>&lt;e&gt;<dd><a name="index-M_002d_003e-68"></a><a name="index-e_002c-in-Info-windows-69"></a><a name="index-C_002dEnd-70"></a><a name="index-end_002dof_002dnode-71"></a>Move the cursor to the end of the current node.
+
+ <br><dt>&lt;M-r&gt; (<code>move-to-window-line</code>)<dd><a name="index-M_002dr-72"></a><a name="index-move_002dto_002dwindow_002dline-73"></a>Move the cursor to a specific line of the window. Without a numeric
+argument, <code>M-r</code> moves the cursor to the start of the line in the
+center of the window. With a numeric argument of <var>n</var>, <code>M-r</code>
+moves the cursor to the start of the <var>n</var>th line in the window.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Scrolling-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Node-Commands">Node Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Cursor-Commands">Cursor Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">4 Moving Text Within a Window</h2>
+
+<p><a name="index-scrolling-74"></a>
+Sometimes you are looking at a screenful of text, and only part of the
+current paragraph you are reading is visible on the screen. The
+commands detailed in this section are used to shift which part of the
+current node is visible on the screen.
+
+ <p>Scrolling commands are bound differently when <span class="samp">--vi-keys</span> operation
+is in effect (see <a href="#_002d_002dvi_002dkeys">&ndash;vi-keys</a>). These key bindings are designated
+with &ldquo;vi-like operation&rdquo;.
+
+ <dl>
+<dt>&lt;SPC&gt; (<code>scroll-forward</code>)<dd><a name="index-SPC_002c-in-Info-windows-75"></a><a name="index-scroll_002dforward-76"></a>Shift the text in this window up. That is, show more of the node which
+is currently below the bottom of the window. With a numeric argument,
+show that many more lines at the bottom of the window; a numeric
+argument of 4 would shift all of the text in the window up 4 lines
+(discarding the top 4 lines), and show you four new lines at the bottom
+of the window. Without a numeric argument, &lt;SPC&gt; takes the bottom
+two lines of the window and places them at the top of the window,
+redisplaying almost a completely new screenful of lines. If you are at
+the end of a node, &lt;SPC&gt; takes you to the &ldquo;next&rdquo; node, so that you can
+read an entire manual from start to finish by repeating &lt;SPC&gt;.
+
+ <p>The default scroll size is one screen-full, but it can be changed by
+invoking the (<code>scroll-forward-page-only-set-window</code>) command,
+<span class="samp">z</span> under <span class="samp">--vi-keys</span>, with a numeric argument.
+
+ <br><dt>&lt;NEXT&gt; (an arrow key) (<code>scroll-forward-page-only</code>)<dt>&lt;C-v&gt;<dt>&lt;C-f&gt;, vi-like operation<dt>&lt;f&gt;, vi-like operation<dt>&lt;M-SPC&gt;, vi-like operation<dd><a name="index-NEXT-77"></a><a name="index-C_002dv-78"></a><a name="index-C_002df_002c-vi_002dlike-operation-79"></a><a name="index-f_002c-vi_002dlike-operation-80"></a><a name="index-M_002dSPC_002c-vi_002dlike-operation-81"></a><a name="index-scroll_002dforward_002dpage_002donly-82"></a>Shift the text in this window up. This is identical to the &lt;SPC&gt;
+operation above, except that it never scrolls beyond the end of the
+current node.
+
+ <p><a name="index-PageDown-83"></a>The &lt;NEXT&gt; key is known as the &lt;PageDown&gt; key on some
+keyboards.
+
+ <br><dt>&lt;z&gt; (<code>scroll-forward-page-only-set-window</code>, vi-like operation)<dd><a name="index-z_002c-vi_002dlike-operation-84"></a><a name="index-scroll_002dforward_002dpage_002donly_002dset_002dwindow-85"></a>Scroll forward, like with &lt;NEXT&gt;, but if a numeric argument is
+specified, it becomes the default scroll size for subsequent
+<code>scroll-forward</code> and <code>scroll-backward</code> commands and their
+ilk.
+
+ <br><dt>&lt;DEL&gt; (<code>scroll-backward</code>)<dd><a name="index-DEL_002c-in-Info-windows-86"></a><a name="index-scroll_002dbackward-87"></a>Shift the text in this window down. The inverse of
+<code>scroll-forward</code>.
+If you are at the start of a node, &lt;DEL&gt; takes you to the
+&ldquo;previous&rdquo; node, so that you can read an entire manual from finish to
+start by repeating &lt;DEL&gt;. The default scroll size can be changed by
+invoking the (<code>scroll-backward-page-only-set-window</code>) command,
+<span class="samp">w</span> under <span class="samp">--vi-keys</span>, with a numeric argument.
+
+ <dt>&lt;PREVIOUS&gt; (arrow key) (<code>scroll-backward-page-only</code>)<dt>&lt;PRIOR&gt; (arrow key)<dt>&lt;M-v&gt;<dt>&lt;b&gt;, vi-like operation<dt>&lt;C-b&gt;, vi-like operation<dd><a name="index-PREVIOUS-88"></a><a name="index-M_002dv-89"></a><a name="index-b_002c-vi_002dlike-operation-90"></a><a name="index-C_002db_002c-vi_002dlike-operation-91"></a><a name="index-scroll_002dbackward_002dpage_002donly-92"></a>Shift the text in this window down. The inverse of
+<code>scroll-forward-page-only</code>. Does not scroll beyond the start of
+the current node. The default scroll size can be changed by invoking
+the(<code>scroll-backward-page-only-set-window</code>) command, <span class="samp">w</span> under
+<span class="samp">--vi-keys</span>, with a numeric argument.
+
+ <br><dt>&lt;w&gt; (<code>scroll-backward-page-only-set-window</code>, vi-like operation)<dd><a name="index-w_002c-vi_002dlike-operation-93"></a><a name="index-scroll_002dbackward_002dpage_002donly_002dset_002dwindow-94"></a>Scroll backward, like with &lt;PREVIOUS&gt;, but if a numeric argument is
+specified, it becomes the default scroll size for subsequent
+<code>scroll-forward</code> and <code>scroll-backward</code> commands.
+
+ <br><dt>&lt;C-n&gt; (<code>down-line</code>, vi-like operation)<dt>&lt;C-e&gt;, vi-like operation<dt>&lt;RET&gt;, vi-like operation<dt>&lt;LFD&gt;, vi-like operation<dt>&lt;DOWN&gt;, vi-like operation<dd><a name="index-C_002dn_002c-vi_002dlike-operation-95"></a><a name="index-C_002de_002c-vi_002dlike-operation-96"></a><a name="index-RET_002c-vi_002dlike-operation-97"></a><a name="index-LFD_002c-vi_002dlike-operation-98"></a><a name="index-DOWN_002c-vi_002dlike-operation-99"></a><a name="index-down_002dline-100"></a>Scroll forward by one line. With a numeric argument, scroll forward
+that many lines.
+
+ <br><dt>&lt;C-p&gt; (<code>up-line</code>, vi-like operation)<dt>&lt;UP&gt;, vi-like operation<dt>&lt;y&gt;, vi-like operation<dt>&lt;k&gt;, vi-like operation<dt>&lt;C-k&gt;, vi-like operation<dt>&lt;C-y&gt;, vi-like operation<dd><a name="index-C_002dp_002c-vi_002dlike-operation-101"></a><a name="index-UP_002c-vi_002dlike-operation-102"></a><a name="index-y_002c-vi_002dlike-operation-103"></a><a name="index-k_002c-vi_002dlike-operation-104"></a><a name="index-C_002dk_002c-vi_002dlike-operation-105"></a><a name="index-C_002dy_002c-vi_002dlike-operation-106"></a><a name="index-up_002dline-107"></a>Scroll backward one line. With a numeric argument, scroll backward that
+many lines.
+
+ <br><dt>&lt;d&gt; (<code>scroll-half-screen-down</code>, vi-like operation)<dt>&lt;C-d&gt;, vi-like operation<dd><a name="index-d_002c-vi_002dlike-operation-108"></a><a name="index-C_002dd_002c-vi_002dlike-operation-109"></a><a name="index-scroll_002dhalf_002dscreen_002ddown-110"></a>Scroll forward by half of the screen size. With a numeric argument,
+scroll that many lines. If an argument is specified, it becomes the new
+default number of lines to scroll for subsequent <span class="samp">d</span> and <span class="samp">u</span>
+commands.
+
+ <br><dt>&lt;u&gt; (<code>scroll-half-screen-up</code>, vi-like operation)<dt>&lt;C-u&gt;, vi-like operation<dd><a name="index-u_002c-vi_002dlike-operation-111"></a><a name="index-C_002du_002c-vi_002dlike-operation-112"></a><a name="index-scroll_002dhalf_002dscreen_002dup-113"></a>Scroll back by half of the screen size. With a numeric argument,
+scroll that many lines. If an argument is specified, it becomes the new
+default number of lines to scroll for subsequent <span class="samp">u</span> and <span class="samp">d</span>
+commands.
+</dl>
+
+ <p><a name="index-scrolling-through-node-structure-114"></a>The <code>scroll-forward</code> and <code>scroll-backward</code> commands can also
+move forward and backward through the node structure of the file. If
+you press &lt;SPC&gt; while viewing the end of a node, or &lt;DEL&gt; while
+viewing the beginning of a node, what happens is controlled by the
+variable <code>scroll-behavior</code>. See <a href="#Variables"><code>scroll-behavior</code></a>, for more information.
+
+ <p>The <code>scroll-forward-page-only</code> and <code>scroll-backward-page-only</code>
+commands never scroll beyond the current node.
+
+ <p><a name="index-PageUp-115"></a>The &lt;PREVIOUS&gt; key is the &lt;PageUp&gt; key on many keyboards. Emacs
+refers to it by the name &lt;PRIOR&gt;. When you use &lt;PRIOR&gt; or
+&lt;PageUp&gt; to scroll, Info never scrolls beyond the beginning of the
+current node.
+
+ <p><a name="index-BS-_0028backspace_0029-116"></a>If your keyboard lacks the &lt;DEL&gt; key, look for a key called
+&lt;BS&gt;, or <span class="samp">BackSpace</span>, sometimes designated with an arrow which
+points to the left, which should perform the same function.
+
+ <dl>
+<dt>&lt;C-l&gt; (<code>redraw-display</code>)<dd><a name="index-C_002dl-117"></a><a name="index-redraw_002ddisplay-118"></a>Redraw the display from scratch, or shift the line containing the cursor
+to a specified location. With no numeric argument, <span class="samp">C-l</span> clears
+the screen, and then redraws its entire contents. Given a numeric
+argument of <var>n</var>, the line containing the cursor is shifted so that
+it is on the <var>n</var>th line of the window.
+
+ <br><dt><kbd>C-x &lt;w&gt;</kbd> (<code>toggle-wrap</code>)<dd><a name="index-C_002dw-119"></a><a name="index-toggle_002dwrap-120"></a>Toggles the state of line wrapping in the current window. Normally,
+lines which are longer than the screen width <dfn>wrap</dfn>, i.e., they are
+continued on the next line. Lines which wrap have a <span class="samp">\</span> appearing
+in the rightmost column of the screen. You can cause such lines to be
+terminated at the rightmost column by changing the state of line
+wrapping in the window with <code>C-x w</code>. When a line which needs more
+space than one screen width to display is displayed, a <span class="samp">$</span> appears
+in the rightmost column of the screen, and the remainder of the line is
+invisible. When long lines are truncated, the modeline displays the
+<span class="samp">$</span> character near its left edge.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Node-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Searching-Commands">Searching Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Scrolling-Commands">Scrolling Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">5 Selecting a Node</h2>
+
+<p><a name="index-nodes_002c-selection-of-121"></a>
+This section details the numerous Info commands which select a new node
+to view in the current window.
+
+ <p>The most basic node commands are <span class="samp">n</span>, <span class="samp">p</span>, <span class="samp">u</span>, and
+<span class="samp">l</span>. Note that the commands to select nodes are mapped differently
+when <span class="samp">--vi-keys</span> is in effect; these keybindings are designated
+below as &ldquo;vi-like operation&rdquo;.
+
+ <p>When you are viewing a node, the top line of the node contains some Info
+<dfn>pointers</dfn> which describe where the next, previous, and up nodes
+are. Info uses this line to move about the node structure of the file
+when you use the following commands:
+
+ <dl>
+<dt>&lt;n&gt; (<code>next-node</code>)<dt><kbd>C-&lt;NEXT&gt;</kbd> (on DOS/Windows only)<dt><kbd>C-x &lt;n&gt;</kbd>, vi-like operation<dd><a name="index-n-122"></a><a name="index-C_002dNEXT-123"></a><a name="index-C_002dx-n_002c-vi_002dlike-operation-124"></a><a name="index-next_002dnode-125"></a>Select the `Next' node.
+
+ <p><a name="index-C_002dPgDn-126"></a>The &lt;NEXT&gt; key is known as the &lt;PgDn&gt; key on some
+keyboards.
+
+ <br><dt>&lt;p&gt; (<code>prev-node</code>)<dt><kbd>C-&lt;PREVIOUS&gt;</kbd> (on DOS/Windows only)<dd><a name="index-p-127"></a><a name="index-C_002dPREVIOUS-128"></a><a name="index-prev_002dnode-129"></a>Select the `Prev' node.
+
+ <p><a name="index-C_002dPgUp-130"></a>The &lt;PREVIOUS&gt; key is known as the &lt;PgUp&gt; key on some
+keyboards.
+
+ <br><dt>&lt;u&gt; (<code>up-node</code>)<dt><kbd>C-&lt;UP&gt;</kbd> (an arrow key on DOS/Windows only)<dt><kbd>C-x &lt;u&gt;</kbd>, vi-like operation<dd><a name="index-u-131"></a><a name="index-C_002dUP-132"></a><a name="index-C_002dx-u_002c-vi_002dlike-operation-133"></a><a name="index-up_002dnode-134"></a>Select the `Up' node.
+</dl>
+
+ <p>You can easily select a node that you have already viewed in this window
+by using the <span class="samp">l</span> command &ndash; this name stands for "last", and
+actually moves backwards through the history of visited nodes for this
+window. This is handy when you followed a reference to another node,
+possibly to read about a related issue, and would like then to resume
+reading at the same place where you started the excursion.
+
+ <p>Each node where you press <span class="samp">l</span> is discarded from the history. Thus,
+by the time you get to the first node you visited in a window, the
+entire history of that window is discarded.
+
+ <dl>
+<dt>&lt;l&gt; (<code>history-node</code>)<dt>&lt;C-&lt;CENTER&gt;&gt; (on DOS/Windows only)<dt>&lt;'&gt;, vi-like operation<dd><a name="index-l-135"></a><a name="index-C_002dCENTER-136"></a><a name="index-_0027_002c-vi_002dlike-operation-137"></a><a name="index-history_002dnode-138"></a>Pop the most recently selected node in this window from the node
+history.
+</dl>
+
+ <p>Two additional commands make it easy to select the most commonly
+selected nodes; they are <span class="samp">t</span> and <span class="samp">d</span>.
+
+ <dl>
+<dt>&lt;t&gt; (<code>top-node</code>)<dt>&lt;M-t&gt;, vi-like operation<dd><a name="index-t-139"></a><a name="index-M_002dt_002c-vi_002dlike-operation-140"></a><a name="index-top_002dnode-141"></a>Select the node <span class="samp">Top</span> in the current Info file.
+
+ <br><dt>&lt;d&gt; (<code>dir-node</code>)<dt>&lt;M-d&gt;, vi-like operation<dd><a name="index-d-142"></a><a name="index-M_002dd_002c-vi_002dlike-operation-143"></a><a name="index-dir_002dnode-144"></a>Select the directory node (i.e., the node <span class="samp">(dir)</span>).
+</dl>
+
+ <p>Here are some other commands which immediately result in the selection
+of a different node in the current window:
+
+ <dl>
+<dt>&lt;&lt;&gt; (<code>first-node</code>)<dt>&lt;g&gt;, vi-like operation<dd><a name="index-_003c-145"></a><a name="index-g_002c-vi_002dlike-operation-146"></a><a name="index-first_002dnode-147"></a>Selects the first node which appears in this file. This node is most
+often <span class="samp">Top</span>, but it does not have to be. With a numeric argument
+<var>N</var>, select the <var>N</var>th node (the first node is node 1). An
+argument of zero is the same as the argument of 1.
+
+ <br><dt>&lt;&gt;&gt; (<code>last-node</code>)<dt>&lt;G&gt;, vi-like operation<dd><a name="index-_003e-148"></a><a name="index-G_002c-vi_002dlike-operation-149"></a><a name="index-last_002dnode-150"></a>Select the last node which appears in this file. With a numeric argument
+<var>N</var>, select the <var>N</var>th node (the first node is node 1). An
+argument of zero is the same as no argument, i.e., it selects the last
+node.
+
+ <br><dt>&lt;]&gt; (<code>global-next-node</code>)<dd><a name="index-_005d-151"></a><a name="index-global_002dnext_002dnode-152"></a>Move forward or down through node structure. If the node that you are
+currently viewing has a <span class="samp">Next</span> pointer, that node is selected.
+Otherwise, if this node has a menu, the first menu item is selected. If
+there is no <span class="samp">Next</span> and no menu, the same process is tried with the
+<span class="samp">Up</span> node of this node.
+
+ <br><dt>&lt;[&gt; (<code>global-prev-node</code>)<dd><a name="index-_005b-153"></a><a name="index-global_002dprev_002dnode-154"></a>Move backward or up through node structure. If the node that you are
+currently viewing has a <span class="samp">Prev</span> pointer, that node is selected.
+Otherwise, if the node has an <span class="samp">Up</span> pointer, that node is selected,
+and if it has a menu, the last item in the menu is selected.
+</dl>
+
+ <p>You can get the same behavior as <code>global-next-node</code> and
+<code>global-prev-node</code> while simply scrolling through the file with
+&lt;SPC&gt; and &lt;DEL&gt;; See <a href="#Variables"><code>scroll-behavior</code></a>, for
+more information.
+
+ <dl>
+<a name="goto_002dnode"></a>
+<dt>&lt;g&gt; (<code>goto-node</code>)<dt><kbd>C-x &lt;g&gt;</kbd>, vi-like operation<dd><a name="index-g-155"></a><a name="index-C_002dx-g_002c-vi_002dlike-operation-156"></a><a name="index-goto_002dnode-157"></a>Read the name of a node and select it. While reading the node name,
+completion (see <a href="#The-Echo-Area">completion</a>) is only done for the
+nodes which reside in one of the Info files that were loaded in the
+current Info session; if the desired node resides in some other file,
+you must type the node exactly as it appears in that Info file, and you
+must include the Info file of the other file. For example,
+
+ <pre class="example"> <code>g(emacs)Buffers</code>
+ </pre>
+ <p>finds the node <span class="samp">Buffers</span> in the Info file <span class="file">emacs</span>.
+
+ <p><a name="goto_002dinvocation"></a>
+<br><dt>&lt;O&gt; (<code>goto-invocation</code><dt>&lt;I&gt;<dd><a name="index-O-158"></a><a name="index-I-159"></a><a name="index-goto_002dinvocation-160"></a><a name="index-finding-the-Invocation-node-161"></a>Read the name of a program and look for a node in the current Info file
+which describes the invocation and the command-line options for that
+program. The default program name is derived from the name of the
+current Info file. This command does the same as the
+<span class="samp">--show-options</span> command-line option (see <a href="#_002d_002dshow_002doptions">&ndash;show-options</a>), but
+it also allows to specify the program name; this is important for those
+manuals which describe several programs.
+
+ <p>If you need to find the Invocation node of a program that is documented
+in another Info file, you need to visit that file before invoking
+<span class="samp">I</span>. For example, if you are reading the Emacs manual and want to
+see the command-line options of the <code>makeinfo</code> program, type <kbd>g
+(texinfo) &lt;RET&gt;</kbd> and then <kbd>I makeinfo &lt;RET&gt;</kbd>. If you don't
+know what Info file documents the command, or if invoking <span class="samp">I</span>
+doesn't display the right node, go to the <span class="samp">(dir)</span> node (using the
+<span class="samp">d</span> command) and invoke <span class="samp">I</span> from there.
+
+ <br><dt>&lt;G&gt; (<code>menu-sequence</code>)<dd><a name="index-G-162"></a><a name="index-menu_002dsequence-163"></a><a name="index-menu_002c-following_002c-from-inside-Info-164"></a>Read a sequence of menu entries and follow it. Info prompts for a
+sequence of menu items separated by commas. (Since commas are not
+allowed in a node name, they are a natural choice for a delimiter in a
+list of menu items.) Info then looks up the first item in the menu of
+the node <span class="samp">(dir)</span> (if the <span class="samp">(dir)</span> node cannot be found, Info
+uses <span class="samp">Top</span>). If such an entry is found, Info goes to the node it
+points to and looks up the second item in the menu of that node, etc.
+In other words, you can specify a complete path which descends through
+the menu hierarchy of a particular Info file starting at the
+<span class="samp">(dir)</span> node. This has the same effect as if you typed the menu
+item sequence on Info's command line, see <a href="#command_002dline-menu-items">Info command-line arguments processing</a>. For example,
+
+ <pre class="example"> <kbd>G Texinfo,Overview,Reporting Bugs &lt;RET&gt;</kbd>
+ </pre>
+ <p class="noindent">displays the node <span class="samp">Reporting Bugs</span> in the Texinfo manual. (You
+don't actually need to type the menu items in their full length, or in
+their exact letter-case. However, if you do type the menu items
+exactly, Info will find it faster.)
+
+ <p>If any of the menu items you type are not found, Info stops at the last
+entry it did find and reports an error.
+
+ <br><dt><kbd>C-x &lt;k&gt;</kbd> (<code>kill-node</code>)<dd><a name="index-C_002dx-k-165"></a><a name="index-kill_002dnode-166"></a>Kill a node. The node name is prompted for in the echo area, with a
+default of the current node. <dfn>Killing</dfn> a node means that Info tries
+hard to forget about it, removing it from the list of history nodes kept
+for the window where that node is found. Another node is selected in
+the window which contained the killed node.
+
+ <br><dt><kbd>C-x C-f</kbd> (<code>view-file</code>)<dd><a name="index-C_002dx-C_002df-167"></a><a name="index-view_002dfile-168"></a>Read the name of a file and selects the entire file. The command
+ <pre class="example"> <code>C-x C-f </code><var>filename</var>
+ </pre>
+ <p>is equivalent to typing
+ <pre class="example"> <code>g(</code><var>filename</var><code>)*</code>
+ </pre>
+ <br><dt><kbd>C-x C-b</kbd> (<code>list-visited-nodes</code>)<dd><a name="index-C_002dx-C_002db-169"></a><a name="index-list_002dvisited_002dnodes-170"></a>Make a window containing a menu of all of the currently visited nodes.
+This window becomes the selected window, and you may use the standard
+Info commands within it.
+
+ <br><dt><kbd>C-x &lt;b&gt;</kbd> (<code>select-visited-node</code>)<dd><a name="index-C_002dx-b-171"></a><a name="index-select_002dvisited_002dnode-172"></a>Select a node which has been previously visited in a visible window.
+This is similar to <span class="samp">C-x C-b</span> followed by <span class="samp">m</span>, but no window is
+created.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Searching-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Xref-Commands">Xref Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Node-Commands">Node Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">6 Searching an Info File</h2>
+
+<p><a name="index-searching-173"></a>
+GNU Info allows you to search for a sequence of characters throughout an
+entire Info file, search through the indices of an Info file, or find
+areas within an Info file which discuss a particular topic.
+
+ <dl>
+<dt>&lt;s&gt; (<code>search</code>)<dt>&lt;/&gt;<dd><a name="index-s-174"></a><a name="index-_002f-175"></a><a name="index-search-176"></a>Read a string in the echo area and search for it. If the string
+includes upper-case characters, the Info file is searched
+case-sensitively; otherwise Info ignores the letter case. With a
+numeric argument of <var>N</var>, search for <var>N</var>th occurrence of the
+string. Negative arguments search backwards.
+
+ <br><dt>&lt;?&gt; (<code>search-backward</code>, vi-like operation)<dd><a name="index-_003f_002c-vi_002dlike-operation-177"></a><a name="index-search_002dbackward-178"></a>Read a string in the echo area and search backward through the Info file
+for that string. If the string includes upper-case characters, the Info
+file is searched case-sensitively; otherwise Info ignores the letter
+case. With a numeric argument of <var>N</var>, search for <var>N</var>th
+occurrence of the string. Negative arguments search forward.
+
+ <br><dt>&lt;S&gt; (<code>search-case-sensitively</code><dd><a name="index-S-179"></a><a name="index-search_002dcase_002dsensitively-180"></a><a name="index-search_002c-case_002dsensitive-181"></a><a name="index-case_002dsensitive-search-182"></a>Read a string in the echo area and search for it case-sensitively, even
+if the string includes only lower-case letters. With a numeric argument
+of <var>N</var>, search for <var>N</var>th occurrence of the string. Negative
+arguments search backwards.
+
+ <br><dt><kbd>C-x &lt;n&gt;</kbd> (<code>search-next</code>)<dt>&lt;n&gt;, vi-like operation<dd><a name="index-C_002dx-n-183"></a><a name="index-n_002c-vi_002dlike-operation-184"></a><a name="index-search_002dnext-185"></a><a name="index-repeated-search-186"></a>Search for the same string used in the last search command, in the same
+direction, and with the same case-sensitivity option. With a numeric
+argument of <var>N</var>, search for <var>N</var>th next occurrence.
+
+ <br><dt><kbd>C-x &lt;N&gt;</kbd> (<code>search-previous</code>)<dt>&lt;N&gt;, vi-like operation<dd><a name="index-C_002dx-N-187"></a><a name="index-n_002c-vi_002dlike-operation-188"></a><a name="index-search_002dprevious-189"></a>Search for the same string used in the last search command, and with the
+same case-sensitivity option, but in the reverse direction. With a
+numeric argument of <var>N</var>, search for <var>N</var>th previous occurrence.
+
+ <br><dt>&lt;C-s&gt; (<code>isearch-forward</code>)<dd><a name="index-C_002ds-190"></a><a name="index-isearch_002dforward-191"></a><a name="index-incremental-search-192"></a>Interactively search forward through the Info file for a string as you
+type it. If the string includes upper-case characters, the search is
+case-sensitive; otherwise Info ignores the letter case.
+
+ <br><dt>&lt;C-r&gt; (<code>isearch-backward</code>)<dd><a name="index-C_002dr-193"></a><a name="index-isearch_002dbackward-194"></a>Interactively search backward through the Info file for a string as
+you type it. If the string includes upper-case characters, the search
+is case-sensitive; otherwise Info ignores the letter case.
+
+ <br><dt>&lt;i&gt; (<code>index-search</code>)<dd><a name="index-i-195"></a><a name="index-index_002dsearch-196"></a><a name="index-index_002c-searching-197"></a><a name="index-searching_002c-in-the-indices-198"></a>Look up a string in the indices for this Info file, and select a node
+to which the found index entry points.
+
+ <br><dt>&lt;,&gt; (<code>next-index-match</code>)<dd><a name="index-_002c-199"></a><a name="index-next_002dindex_002dmatch-200"></a>Move to the node containing the next matching index item from the last
+<span class="samp">i</span> command.
+
+ <br><dt><kbd>M-x index-apropos</kbd><dd><a name="index-index_002dapropos-201"></a>Grovel the indices of all the known Info files on your system for a
+string, and build a menu of the possible matches.
+</dl>
+
+ <p>The most basic searching command is <span class="samp">s</span> or <span class="samp">/</span>
+(<code>search</code>). The <span class="samp">s</span> command prompts you for a string in the
+echo area, and then searches the remainder of the Info file for an
+occurrence of that string. If the string is found, the node containing
+it is selected, and the cursor is left positioned at the start of the
+found string. Subsequent <span class="samp">s</span> commands show you the default search
+string within <span class="samp">[</span> and <span class="samp">]</span>; pressing &lt;RET&gt; instead of
+typing a new string will use the default search string. Under
+<span class="samp">--vi-keys</span> (see <a href="#_002d_002dvi_002dkeys">&ndash;vi-keys</a>), using the <span class="samp">n</span> or <span class="samp">N</span>
+commands is a faster way of searching for the same string.
+
+ <p><dfn>Incremental searching</dfn> is similar to basic searching, but the
+string is looked up while you are typing it, instead of waiting until
+the entire search string has been specified.
+
+ <p><a name="index-search_002c-and-case_002dsensitivity-202"></a><a name="index-case_002dsensitivity_002c-and-search-203"></a>Both incremental and non-incremental search by default ignore the case
+of letters when comparing the Info file text with the search string.
+However, an uppercase letter in the search string makes the search
+case-sensitive. You can force a case-sensitive non-incremental search,
+even for a string that includes only lower-case letters, by using the
+<span class="samp">S</span> command (<code>search-case-sensitively</code>). The <span class="samp">n</span> and
+<span class="samp">N</span> commands operate case-sensitively if the last search command
+was <span class="samp">S</span>.
+
+ <p>The most efficient means of finding something quickly in a manual is
+the <span class="samp">i</span> command (<code>index-search</code>). This command prompts for
+a string, and then looks for that string in all the indices of the
+current Info manual. If it finds a matching index entry, it displays
+the node to which that entry refers and prints the full text of the
+entry in the echo area. You can press <span class="samp">,</span>
+(<code>next-index-match</code>) to find more matches. A good Info manual
+has all of its important concepts indexed, so the <span class="samp">i</span> command
+lets you use a manual as a reference.
+
+ <p>If you don't know what manual documents something, try the <kbd>M-x
+index-apropos</kbd> 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. It can also be invoked from the command line; see
+<a href="#_002d_002dapropos">&ndash;apropos</a>.
+
+<div class="node">
+<p><hr>
+<a name="Xref-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Window-Commands">Window Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Searching-Commands">Searching Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">7 Selecting Cross References</h2>
+
+<p>We have already discussed the <span class="samp">Next</span>, <span class="samp">Prev</span>, and <span class="samp">Up</span>
+pointers which appear at the top of a node. In addition to these
+pointers, a node may contain other pointers which refer you to a
+different node, perhaps in another Info file. Such pointers are called
+<dfn>cross references</dfn>, or <dfn>xrefs</dfn> for short.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Parts-of-an-Xref">Parts of an Xref</a>: What a cross reference is made of.
+<li><a accesskey="2" href="#Selecting-Xrefs">Selecting Xrefs</a>: Commands for selecting menu or note items.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Parts-of-an-Xref"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Selecting-Xrefs">Selecting Xrefs</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Xref-Commands">Xref Commands</a>
+<br>
+</div>
+
+<h3 class="section">7.1 Parts of an Xref</h3>
+
+<p>Cross references have two major parts: the first part is called the
+<dfn>label</dfn>; it is the name that you can use to refer to the cross
+reference, and the second is the <dfn>target</dfn>; it is the full name of
+the node that the cross reference points to.
+
+ <p>The target is separated from the label by a colon <span class="samp">:</span>; first the
+label appears, and then the target. For example, in the sample menu
+cross reference below, the single colon separates the label from the
+target.
+
+<pre class="example"> * Foo Label: Foo Target. More information about Foo.
+</pre>
+ <p>Note the <span class="samp">.</span> which ends the name of the target. The <span class="samp">.</span> is
+not part of the target; it serves only to let Info know where the target
+name ends.
+
+ <p>A shorthand way of specifying references allows two adjacent colons to
+stand for a target name which is the same as the label name:
+
+<pre class="example"> * Foo Commands:: Commands pertaining to Foo.
+</pre>
+ <p>In the above example, the name of the target is the same as the name of
+the label, in this case <code>Foo Commands</code>.
+
+ <p>You will normally see two types of cross reference while viewing nodes:
+<dfn>menu</dfn> references, and <dfn>note</dfn> references. Menu references
+appear within a node's menu; they begin with a <span class="samp">*</span> at the beginning
+of a line, and continue with a label, a target, and a comment which
+describes what the contents of the node pointed to contains.
+
+ <p>Note references appear within the body of the node text; they begin with
+<code>*Note</code>, and continue with a label and a target.
+
+ <p>Like <span class="samp">Next</span>, <span class="samp">Prev</span>, and <span class="samp">Up</span> pointers, cross references
+can point to any valid node. They are used to refer you to a place
+where more detailed information can be found on a particular subject.
+Here is a cross reference which points to a node within the Texinfo
+documentation: See <a href="texinfo.html#xref">Writing an Xref (the Texinfo Manual)</a>, for more information on creating your own texinfo cross
+references.
+
+<div class="node">
+<p><hr>
+<a name="Selecting-Xrefs"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Parts-of-an-Xref">Parts of an Xref</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Xref-Commands">Xref Commands</a>
+<br>
+</div>
+
+<h3 class="section">7.2 Selecting Xrefs</h3>
+
+<p>The following table lists the Info commands which operate on menu items.
+
+ <dl>
+<dt>&lt;1&gt; (<code>menu-digit</code>)<dt>&lt;2&gt; <small class="dots">...</small> &lt;9&gt;<dt>&lt;M-1&gt;, vi-like operation<dt>&lt;M-2&gt; <small class="dots">...</small> &lt;M-9&gt;, vi-like operation<dd><a name="index-1-_0040dots_007b_007d-9_002c-in-Info-windows-204"></a><a name="index-M_002d1-_0040dots_007b_007d-M_002d9_002c-vi_002dlike-operation-205"></a><a name="index-1-_0040dots_007b_007d-9_002c-in-Info-windows-206"></a><a name="index-M_002d1-_0040dots_007b_007d-M_002d9_002c-vi_002dlike-operation-207"></a><a name="index-menu_002ddigit-208"></a>Within an Info window, pressing a single digit, (such as <span class="samp">1</span>),
+selects that menu item, and places its node in the current window.
+For convenience, there is one exception; pressing <span class="samp">0</span> selects the
+<em>last</em> item in the node's menu. When <span class="samp">--vi-keys</span> is in
+effect, digits set the numeric argument, so these commands are remapped
+to their <span class="samp">M-</span> varieties. For example, to select the last menu
+item, press &lt;M-0&gt;.
+
+ <br><dt>&lt;0&gt; (<code>last-menu-item</code>)<dt>&lt;M-0&gt;, vi-like operation<dd><a name="index-0_002c-in-Info-windows-209"></a><a name="index-M_002d0_002c-vi_002dlike-operation-210"></a><a name="index-last_002dmenu_002ditem-211"></a>Select the last item in the current node's menu.
+
+ <br><dt>&lt;m&gt; (<code>menu-item</code>)<dd><a name="index-m-212"></a><a name="index-menu_002ditem-213"></a>Reads the name of a menu item in the echo area and selects its node.
+Completion is available while reading the menu label. See <a href="#The-Echo-Area">completion</a>.
+
+ <br><dt><kbd>M-x find-menu</kbd><dd><a name="index-find_002dmenu-214"></a>Move the cursor to the start of this node's menu.
+</dl>
+
+ <p>This table lists the Info commands which operate on cross references.
+
+ <dl>
+<dt>&lt;f&gt; (<code>xref-item</code>)<dt>&lt;r&gt;<br><dt>&lt;M-f&gt;, vi-like operation<dt><kbd>C-x &lt;r&gt;</kbd>, vi-like operation<dd><a name="index-f-215"></a><a name="index-r-216"></a><a name="index-M_002df_002c-vi_002dlike-operation-217"></a><a name="index-C_002dx-r_002c-vi_002dlike-operation-218"></a><a name="index-xref_002ditem-219"></a>Reads the name of a note cross reference in the echo area and selects
+its node. Completion is available while reading the cross reference
+label. See <a href="#The-Echo-Area">completion</a>.
+</dl>
+
+ <p>Finally, the next few commands operate on menu or note references alike:
+
+ <dl>
+<dt>&lt;TAB&gt; (<code>move-to-next-xref</code>)<dd><a name="index-TAB_002c-in-Info-windows-220"></a><a name="index-move_002dto_002dnext_002dxref-221"></a>Move the cursor to the start of the next nearest menu item or note
+reference in this node. You can then use &lt;RET&gt;
+(<code>select-reference-this-line</code>) to select the menu or note reference.
+
+ <br><dt>&lt;M-TAB&gt; (<code>move-to-prev-xref</code>)<dt>&lt;Shift-&lt;TAB&gt;&gt; (on DOS/Windows only)<dd><a name="index-M_002dTAB_002c-in-Info-windows-222"></a><a name="index-move_002dto_002dprev_002dxref-223"></a>Move the cursor the start of the nearest previous menu item or note
+reference in this node.
+
+ <p><a name="index-Shift_002dTAB_002c-in-Info-windows-224"></a><a name="index-BackTab_002c-in-Info-windows-225"></a>On DOS/Windows only, the <kbd>Shift-&lt;TAB&gt;</kbd> key is an alias for
+<kbd>M-&lt;TAB&gt;</kbd>. This key is sometimes called <span class="samp">BackTab</span>.
+
+ <br><dt>&lt;RET&gt; (<code>select-reference-this-line</code>)<dt>&lt;M-g&gt;, vi-like operation<dd><a name="index-RET_002c-in-Info-windows-226"></a><a name="index-M_002dg_002c-vi_002dlike-operation-227"></a><a name="index-select_002dreference_002dthis_002dline-228"></a>Select the menu item or note reference appearing on this line.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Window-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Printing-Nodes">Printing Nodes</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Xref-Commands">Xref Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">8 Manipulating Multiple Windows</h2>
+
+<p><a name="index-windows_002c-manipulating-229"></a>
+A <dfn>window</dfn> is a place to show the text of a node. Windows have a
+view area where the text of the node is displayed, and an associated
+<dfn>mode line</dfn>, which briefly describes the node being viewed.
+
+ <p>GNU Info supports multiple windows appearing in a single screen; each
+window is separated from the next by its modeline. At any time, there
+is only one <dfn>active</dfn> window, that is, the window in which the cursor
+appears. There are commands available for creating windows, changing
+the size of windows, selecting which window is active, and for deleting
+windows.
+
+<ul class="menu">
+<li><a accesskey="1" href="#The-Mode-Line">The Mode Line</a>: What appears in the mode line?
+<li><a accesskey="2" href="#Basic-Windows">Basic Windows</a>: Manipulating windows in Info.
+<li><a accesskey="3" href="#The-Echo-Area">The Echo Area</a>: Used for displaying errors and reading input.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="The-Mode-Line"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Basic-Windows">Basic Windows</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Window-Commands">Window Commands</a>
+<br>
+</div>
+
+<h3 class="section">8.1 The Mode Line</h3>
+
+<p>A <dfn>mode line</dfn> is a line of inverse video which appears at the bottom
+of an Info window. It describes the contents of the window just above
+it; this information includes the name of the file and node appearing in
+that window, the number of screen lines it takes to display the node,
+and the percentage of text that is above the top of the window. It can
+also tell you if the indirect tags table for this Info file needs to be
+updated, and whether or not the Info file was compressed when stored on
+disk.
+
+ <p>Here is a sample mode line for a window containing an uncompressed file
+named <span class="file">dir</span>, showing the node <span class="samp">Top</span>.
+
+<pre class="example"> -----Info: (dir)Top, 40 lines --Top-------------------------------------
+ ^^ ^ ^^^ ^^
+ (file)Node #lines where
+</pre>
+ <p>When a node comes from a file which is compressed on disk, this is
+indicated in the mode line with two small <span class="samp">z</span>'s. In addition, if
+the Info file containing the node has been split into subfiles, the name
+of the subfile containing the node appears in the modeline as well:
+
+<pre class="example"> --zz-Info: (emacs)Top, 291 lines --Top-- Subfile: emacs-1.Z-------------
+</pre>
+ <p>Truncation of long lines (as opposed to wrapping them to the next
+display line, see <a href="#Scrolling-Commands">toggle-wrap</a>) is indicated by a
+<span class="samp">$</span> at the left edge of the mode line:
+
+<pre class="example"> --$--Info: (texinfo)Top, 480 lines --Top-- Subfile: texinfo-1-----------
+</pre>
+ <p>When Info makes a node internally, such that there is no corresponding
+info file on disk, the name of the node is surrounded by asterisks
+(<span class="samp">*</span>). The name itself tells you what the contents of the window
+are; the sample mode line below shows an internally constructed node
+showing possible completions:
+
+<pre class="example"> -----Info: *Completions*, 7 lines --All---------------------------------
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Basic-Windows"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#The-Echo-Area">The Echo Area</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#The-Mode-Line">The Mode Line</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Window-Commands">Window Commands</a>
+<br>
+</div>
+
+<h3 class="section">8.2 Window Commands</h3>
+
+<p>It can be convenient to view more than one node at a time. To allow
+this, Info can display more than one <dfn>window</dfn>. Each window has its
+own mode line (see <a href="#The-Mode-Line">The Mode Line</a>) and history of nodes viewed in that
+window (see <a href="#Node-Commands"><code>history-node</code></a>).
+
+ <dl>
+<dt><kbd>C-x &lt;o&gt;</kbd> (<code>next-window</code>)<dd><a name="index-windows_002c-selecting-230"></a><a name="index-C_002dx-o-231"></a><a name="index-next_002dwindow-232"></a>Select the next window on the screen. Note that the echo area can only be
+selected if it is already in use, and you have left it temporarily.
+Normally, <span class="samp">C-x o</span> simply moves the cursor into the next window on
+the screen, or if you are already within the last window, into the first
+window on the screen. Given a numeric argument, <span class="samp">C-x o</span> moves over
+that many windows. A negative argument causes <span class="samp">C-x o</span> to select
+the previous window on the screen.
+
+ <br><dt><kbd>M-x prev-window</kbd><dd><a name="index-prev_002dwindow-233"></a>Select the previous window on the screen. This is identical to
+<span class="samp">C-x o</span> with a negative argument.
+
+ <br><dt><kbd>C-x &lt;2&gt;</kbd> (<code>split-window</code>)<dd><a name="index-windows_002c-creating-234"></a><a name="index-C_002dx-2-235"></a><a name="index-split_002dwindow-236"></a>Split the current window into two windows, both showing the same node.
+Each window is one half the size of the original window, and the cursor
+remains in the original window. The variable <code>automatic-tiling</code>
+can cause all of the windows on the screen to be resized for you
+automatically, please see <a href="#Variables">automatic-tiling</a> for more
+information.
+
+ <br><dt><kbd>C-x &lt;0&gt;</kbd> (<code>delete-window</code>)<dd><a name="index-windows_002c-deleting-237"></a><a name="index-C_002dx-0-238"></a><a name="index-delete_002dwindow-239"></a>Delete the current window from the screen. If you have made too many
+windows and your screen appears cluttered, this is the way to get rid of
+some of them.
+
+ <br><dt><kbd>C-x &lt;1&gt;</kbd> (<code>keep-one-window</code>)<dd><a name="index-C_002dx-1-240"></a><a name="index-keep_002done_002dwindow-241"></a>Delete all of the windows excepting the current one.
+
+ <br><dt><kbd>ESC &lt;C-v&gt;</kbd> (<code>scroll-other-window</code>)<dd><a name="index-ESC-C_002dv_002c-in-Info-windows-242"></a><a name="index-scroll_002dother_002dwindow-243"></a>Scroll the other window, in the same fashion that <span class="samp">C-v</span> might
+scroll the current window. Given a negative argument, scroll the
+"other" window backward.
+
+ <br><dt><kbd>C-x &lt;^&gt;</kbd> (<code>grow-window</code>)<dd><a name="index-C_002dx-_005e-244"></a><a name="index-grow_002dwindow-245"></a>Grow (or shrink) the current window. Given a numeric argument, grow
+the current window that many lines; with a negative numeric argument,
+shrink the window instead.
+
+ <br><dt><kbd>C-x &lt;t&gt;</kbd> (<code>tile-windows</code>)<dd><a name="index-tiling-246"></a><a name="index-C_002dx-t-247"></a><a name="index-tile_002dwindows-248"></a>Divide the available screen space among all of the visible windows.
+Each window is given an equal portion of the screen in which to display
+its contents. The variable <code>automatic-tiling</code> can cause
+<code>tile-windows</code> to be called when a window is created or deleted.
+See <a href="#Variables"><code>automatic-tiling</code></a>.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="The-Echo-Area"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Basic-Windows">Basic Windows</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Window-Commands">Window Commands</a>
+<br>
+</div>
+
+<h3 class="section">8.3 The Echo Area</h3>
+
+<p><a name="index-echo-area-249"></a>
+The <dfn>echo area</dfn> is a one line window which appears at the bottom of
+the screen. It is used to display informative or error messages, and to
+read lines of input from you when that is necessary. Almost all of the
+commands available in the echo area are identical to their Emacs
+counterparts, so please refer to that documentation for greater depth of
+discussion on the concepts of editing a line of text. The following
+table briefly lists the commands that are available while input is being
+read in the echo area:
+
+ <dl>
+<dt>&lt;C-f&gt; (<code>echo-area-forward</code>)<dt>&lt;RIGHT&gt; (an arrow key)<dt>&lt;M-h&gt;, vi-like operation<dd><a name="index-C_002df_002c-in-the-echo-area-250"></a><a name="index-RIGHT_002c-in-the-echo-area-251"></a><a name="index-M_002dh_002c-in-the-echo-area_002c-vi_002dlike-operation-252"></a><a name="index-echo_002darea_002dforward-253"></a>Move forward a character.
+
+ <br><dt>&lt;C-b&gt; (<code>echo-area-backward</code>)<dt>&lt;LEFT&gt; (an arrow key)<dt>&lt;M-l&gt;, vi-like operation<dd><a name="index-LEFT_002c-in-the-echo-area-254"></a><a name="index-C_002db_002c-in-the-echo-area-255"></a><a name="index-M_002dl_002c-in-the-echo-area_002c-vi_002dlike-operation-256"></a><a name="index-echo_002darea_002dbackward-257"></a>Move backward a character.
+
+ <br><dt>&lt;C-a&gt; (<code>echo-area-beg-of-line</code>)<dt>&lt;M-0&gt;, vi-like operation<dd><a name="index-C_002da_002c-in-the-echo-area-258"></a><a name="index-M_002d0_002c-in-the-echo-area_002c-vi_002dlike-operation-259"></a><a name="index-echo_002darea_002dbeg_002dof_002dline-260"></a>Move to the start of the input line.
+
+ <br><dt>&lt;C-e&gt; (<code>echo-area-end-of-line</code>)<dt>&lt;M-$&gt;, vi-like operation<dd><a name="index-C_002de_002c-in-the-echo-area-261"></a><a name="index-M_002d_0024_002c-vi_002dlike-operation-262"></a><a name="index-echo_002darea_002dend_002dof_002dline-263"></a>Move to the end of the input line.
+
+ <br><dt>&lt;M-f&gt; (<code>echo-area-forward-word</code>)<dt>&lt;C-&lt;RIGHT&gt;&gt; (DOS/Windows only)<dt>&lt;M-w&gt;, vi-like operation<dd><a name="index-M_002df_002c-in-the-echo-area-264"></a><a name="index-M_002dw_002c-in-the-echo-area_002c-vi_002dlike-operation-265"></a><a name="index-echo_002darea_002dforward_002dword-266"></a>Move forward a word.
+
+ <p><a name="index-C_002dRIGHT_002c-in-the-echo-area-267"></a>On DOS/Windows, <kbd>C-&lt;RIGHT&gt;</kbd> moves forward by words.
+
+ <br><dt>&lt;M-b&gt; (<code>echo-area-backward-word</code>)<dt>&lt;C-&lt;LEFT&gt;&gt; (DOS/Windows only)<dd><a name="index-M_002db_002c-in-the-echo-area-268"></a><a name="index-echo_002darea_002dbackward_002dword-269"></a>Move backward a word.
+
+ <p><a name="index-C_002dLEFT_002c-in-the-echo-area-270"></a>On DOS/Windows, <kbd>C-&lt;LEFT&gt;</kbd> moves backward by words.
+
+ <br><dt>&lt;C-d&gt; (<code>echo-area-delete</code>)<dt>&lt;M-x&gt;, vi-like operation<dd><a name="index-C_002dd_002c-in-the-echo-area-271"></a><a name="index-M_002dx_002c-in-the-echo-area_002c-vi_002dlike-operation-272"></a><a name="index-echo_002darea_002ddelete-273"></a>Delete the character under the cursor.
+
+ <br><dt>&lt;DEL&gt; (<code>echo-area-rubout</code>)<dd><a name="index-DEL_002c-in-the-echo-area-274"></a><a name="index-echo_002darea_002drubout-275"></a>Delete the character behind the cursor.
+
+ <p>On some keyboards, this key is designated &lt;BS&gt;, for
+<span class="samp">BackSpace</span>. Those keyboards will usually bind &lt;DEL&gt; in the
+echo area to <code>echo-area-delete</code>.
+
+ <br><dt>&lt;C-g&gt; (<code>echo-area-abort</code>)<dt>&lt;C-u&gt;, vi-like operation<dd><a name="index-C_002dg_002c-in-the-echo-area-276"></a><a name="index-C_002du_002c-in-the-echo-area_002c-vi_002dlike-operation-277"></a><a name="index-echo_002darea_002dabort-278"></a>Cancel or quit the current operation. If completion is being read, this
+command discards the text of the input line which does not match any
+completion. If the input line is empty, it aborts the calling function.
+
+ <br><dt>&lt;RET&gt; (<code>echo-area-newline</code>)<dd><a name="index-RET_002c-in-the-echo-area-279"></a><a name="index-echo_002darea_002dnewline-280"></a>Accept (or forces completion of) the current input line.
+
+ <br><dt>&lt;C-q&gt; (<code>echo-area-quoted-insert</code>)<dt>&lt;C-v&gt;, vi-like operation<dd><a name="index-C_002dq_002c-in-the-echo-area-281"></a><a name="index-C_002dv_002c-in-the-echo-area_002c-vi_002dlike-operation-282"></a><a name="index-echo_002darea_002dquoted_002dinsert-283"></a>Insert the next character verbatim. This is how you can insert control
+characters into a search string, for example, or the <span class="samp">?</span> character
+when Info prompts with completion.
+
+ <br><dt><var>printing character</var> (<code>echo-area-insert</code>)<dd><a name="index-printing-characters_002c-in-the-echo-area-284"></a><a name="index-echo_002darea_002dinsert-285"></a>Insert the character. Characters that have their 8th bit set, and not
+bound to <span class="samp">M-</span> commands, are also inserted verbatim; this is useful
+for terminals which support Latin scripts.
+
+ <br><dt>&lt;M-TAB&gt; (<code>echo-area-tab-insert</code>)<dt>&lt;Shift-&lt;TAB&gt;&gt; (on DOS/Windows only)<dd><a name="index-M_002dTAB_002c-in-the-echo-area-286"></a><a name="index-Shift_002dTAB_002c-in-the-echo-area-287"></a><a name="index-echo_002darea_002dtab_002dinsert-288"></a>Insert a TAB character.
+
+ <p><a name="index-Shift_002dTAB_002c-in-the-echo-area-289"></a><a name="index-BackTab_002c-in-the-echo-area-290"></a>On DOS/Windows only, the <kbd>Shift-&lt;TAB&gt;</kbd> key is an alias for
+<kbd>M-&lt;TAB&gt;</kbd>. This key is sometimes called <span class="samp">BackTab</span>.
+
+ <br><dt>&lt;C-t&gt; (<code>echo-area-transpose-chars</code>)<dd><a name="index-C_002dt_002c-in-the-echo-area-291"></a><a name="index-echo_002darea_002dtranspose_002dchars-292"></a>Transpose the characters at the cursor.
+</dl>
+
+ <p>The next group of commands deal with <dfn>killing</dfn>, and <dfn>yanking</dfn>
+text<a rel="footnote" href="#fn-6" name="fnd-6"><sup>6</sup></a>. For an in-depth discussion of killing and
+yanking, see <a href="emacs.html#Killing">Killing and Deleting (the GNU Emacs Manual)</a>.
+
+ <dl>
+<dt>&lt;M-d&gt; (<code>echo-area-kill-word</code>)<dt>&lt;M-X&gt;, vi-like operation<dd><a name="index-M_002dd_002c-in-the-echo-area-293"></a><a name="index-M_002dX_002c-in-the-echo-area_002c-vi_002dlike-operation-294"></a><a name="index-echo_002darea_002dkill_002dword-295"></a>Kill the word following the cursor.
+
+ <br><dt>&lt;M-DEL&gt; (<code>echo-area-backward-kill-word</code>)<dt>&lt;M-&lt;BS&gt;&gt;<dd><a name="index-M_002dDEL_002c-in-the-echo-area-296"></a><a name="index-echo_002darea_002dbackward_002dkill_002dword-297"></a>Kill the word preceding the cursor.
+
+ <p><a name="index-M_002dBS_002c-in-the-echo-area-298"></a>On some keyboards, the <code>Backspace</code> key is used instead of
+<code>DEL</code>, so <code>M-&lt;Backspace&gt;</code> has the same effect as
+<code>M-&lt;DEL&gt;</code>.
+
+ <br><dt>&lt;C-k&gt; (<code>echo-area-kill-line</code>)<dd><a name="index-C_002dk_002c-in-the-echo-area-299"></a><a name="index-echo_002darea_002dkill_002dline-300"></a>Kill the text from the cursor to the end of the line.
+
+ <br><dt><kbd>C-x &lt;DEL&gt;</kbd> (<code>echo-area-backward-kill-line</code>)<dd><a name="index-C_002dx-DEL_002c-in-the-echo-area-301"></a><a name="index-echo_002darea_002dbackward_002dkill_002dline-302"></a>Kill the text from the cursor to the beginning of the line.
+
+ <br><dt>&lt;C-y&gt; (<code>echo-area-yank</code>)<dd><a name="index-C_002dy_002c-in-the-echo-area-303"></a><a name="index-echo_002darea_002dyank-304"></a>Yank back the contents of the last kill.
+
+ <br><dt>&lt;M-y&gt; (<code>echo-area-yank-pop</code>)<dd><a name="index-M_002dy_002c-in-the-echo-area-305"></a><a name="index-echo_002darea_002dyank_002dpop-306"></a>Yank back a previous kill, removing the last yanked text first.
+</dl>
+
+ <p><a name="index-completion-307"></a>Sometimes when reading input in the echo area, the command that needed
+input will only accept one of a list of several choices. The choices
+represent the <dfn>possible completions</dfn>, and you must respond with one
+of them. Since there are a limited number of responses you can make,
+Info allows you to abbreviate what you type, only typing as much of the
+response as is necessary to uniquely identify it. In addition, you can
+request Info to fill in as much of the response as is possible; this
+is called <dfn>completion</dfn>.
+
+ <p>The following commands are available when completing in the echo area:
+
+ <dl>
+<dt>&lt;TAB&gt; (<code>echo-area-complete</code>)<dt>&lt;SPC&gt;<dd><a name="index-TAB_002c-in-the-echo-area-308"></a><a name="index-SPC_002c-in-the-echo-area-309"></a><a name="index-echo_002darea_002dcomplete-310"></a>Insert as much of a completion as is possible.
+
+ <br><dt>&lt;?&gt; (<code>echo-area-possible-completions</code>)<dd><a name="index-_003f_002c-in-the-echo-area-311"></a><a name="index-echo_002darea_002dpossible_002dcompletions-312"></a>Display a window containing a list of the possible completions of what
+you have typed so far. For example, if the available choices are:
+
+ <pre class="example"> bar
+ foliate
+ food
+ forget
+ </pre>
+ <p class="noindent">and you have typed an <span class="samp">f</span>, followed by <span class="samp">?</span>, Info will pop up a
+window showing a node called <span class="samp">*Completions*</span> which lists the
+possible completions like this:
+
+ <pre class="example"> 3 completions:
+ foliate food
+ forget
+ </pre>
+ <p class="noindent">i.e., all of the choices which begin with <span class="samp">f</span>. Pressing &lt;SPC&gt;
+or &lt;TAB&gt; would result in <span class="samp">fo</span> appearing in the echo area, since
+all of the choices which begin with <span class="samp">f</span> continue with <span class="samp">o</span>.
+Now, typing <span class="samp">l</span> followed by <span class="samp">TAB</span> results in <span class="samp">foliate</span>
+appearing in the echo area, since that is the only choice which begins
+with <span class="samp">fol</span>.
+
+ <br><dt>&lt;ESC C-v&gt; (<code>echo-area-scroll-completions-window</code>)<dd><a name="index-ESC-C_002dv_002c-in-the-echo-area-313"></a><a name="index-echo_002darea_002dscroll_002dcompletions_002dwindow-314"></a>Scroll the completions window, if that is visible, or the "other"
+window if not.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Printing-Nodes"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Miscellaneous-Commands">Miscellaneous Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Window-Commands">Window Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">9 Printing Nodes</h2>
+
+<p><a name="index-printing-315"></a>
+In general, we recommend that you use TeX to format the document and
+print sections of it, by running <code>tex</code> on the Texinfo source file.
+However, you may wish to print out the contents of a node as a quick
+reference document for later use, or if you don't have TeX installed.
+Info provides you with a command for doing this.
+
+ <dl>
+<dt><kbd>M-x print-node</kbd><dd><a name="index-print_002dnode-316"></a><a name="index-INFO_005fPRINT_005fCOMMAND_002c-environment-variable-317"></a>Pipe the contents of the current node through the command in the
+environment variable <code>INFO_PRINT_COMMAND</code>. If the variable does not
+exist, the node is simply piped to <code>lpr</code> (on DOS/Windows, the
+default is to print the node to the local printer device, <span class="file">PRN</span>).
+
+ <p><a name="index-printing-nodes-to-the-local-printer-318"></a><a name="index-local-printer-device-319"></a>The value of <code>INFO_PRINT_COMMAND</code> may begin with the <span class="samp">&gt;</span>
+character, as in <span class="samp">&gt;/dev/printer</span>, in which case Info treats the
+rest as the name of a file or a device. Instead of piping to a command,
+Info opens the file, writes the node contents, and closes the file,
+under the assumption that text written to that file will be printed by
+the underlying OS.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Miscellaneous-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Variables">Variables</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Printing-Nodes">Printing Nodes</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">10 Miscellaneous Commands</h2>
+
+<p>GNU Info contains several commands which self-document GNU Info:
+
+ <dl>
+<dt><kbd>M-x describe-command</kbd><dd><a name="index-functions_002c-describing-320"></a><a name="index-commands_002c-describing-321"></a><a name="index-describe_002dcommand-322"></a>Read the name of an Info command in the echo area and then display a
+brief description of what that command does.
+
+ <br><dt><kbd>M-x describe-key</kbd><dd><a name="index-keys_002c-describing-323"></a><a name="index-describe_002dkey-324"></a>Read a key sequence in the echo area, and then display the name and
+documentation of the Info command that the key sequence invokes.
+
+ <br><dt><kbd>M-x describe-variable</kbd><dd>Read the name of a variable in the echo area and then display a brief
+description of what the variable affects.
+
+ <br><dt><kbd>M-x where-is</kbd><dd><a name="index-where_002dis-325"></a>Read the name of an Info command in the echo area, and then display
+a key sequence which can be typed in order to invoke that command.
+
+ <br><dt>&lt;C-h&gt; (<code>get-help-window</code>)<dt>&lt;?&gt;<dt>&lt;F1&gt; (on DOS/Windows only)<dt>h, vi-like operation<dd><a name="index-C_002dh-326"></a><a name="index-_003f_002c-in-Info-windows-327"></a><a name="index-F1-328"></a><a name="index-h_002c-vi_002dlike-operation-329"></a><a name="index-get_002dhelp_002dwindow-330"></a>Create (or Move into) the window displaying <code>*Help*</code>, and place
+a node containing a quick reference card into it. This window displays
+the most concise information about GNU Info available.
+
+ <br><dt>&lt;h&gt; (<code>get-info-help-node</code>)<dt>&lt;M-h&gt;, vi-like operation<dd><a name="index-h-331"></a><a name="index-M_002dh_002c-vi_002dlike-operation-332"></a><a name="index-get_002dinfo_002dhelp_002dnode-333"></a>Try hard to visit the node <code>(info)Help</code>. The Info file
+<span class="file">info.texi</span> distributed with GNU Info contains this node. Of
+course, the file must first be processed with <code>makeinfo</code>, and then
+placed into the location of your Info directory.
+</dl>
+
+ <p>Here are the commands for creating a numeric argument:
+
+ <dl>
+<dt>&lt;C-u&gt; (<code>universal-argument</code>)<dd><a name="index-numeric-arguments-334"></a><a name="index-C_002du-335"></a><a name="index-universal_002dargument-336"></a>Start (or multiply by 4) the current numeric argument. <span class="samp">C-u</span> is
+a good way to give a small numeric argument to cursor movement or
+scrolling commands; <span class="samp">C-u C-v</span> scrolls the screen 4 lines, while
+<span class="samp">C-u C-u C-n</span> moves the cursor down 16 lines. <span class="samp">C-u</span> followed
+by digit keys sets the numeric argument to the number thus typed:
+<kbd>C-u 1 2 0</kbd> sets the argument to 120.
+
+ <br><dt>&lt;M-1&gt; (<code>add-digit-to-numeric-arg</code>)<dt>&lt;1&gt;, vi-like operation<dt>&lt;M-2&gt; <small class="dots">...</small> &lt;M-9&gt;<dt>&lt;2&gt; <small class="dots">...</small> &lt;9&gt;, vi-like operation<dt>&lt;M-0&gt;<dt>&lt;0&gt;, vi-like operation<dd><a name="index-M_002d0-_0040dots_007b_007d-M_002d9-337"></a><a name="index-0-_0040dots_007b_007d-9_002c-vi_002dlike-operation-338"></a><a name="index-add_002ddigit_002dto_002dnumeric_002darg-339"></a>Add the digit value of the invoking key to the current numeric
+argument. Once Info is reading a numeric argument, you may just type
+the digits of the argument, without the Meta prefix. For example, you
+might give <span class="samp">C-l</span> a numeric argument of 32 by typing:
+
+ <pre class="example"> <kbd>C-u 3 2 C-l</kbd>
+ </pre>
+ <p class="noindent">or
+
+ <pre class="example"> <kbd>M-3 2 C-l</kbd>
+ </pre>
+ <br><dt>&lt;M&ndash;&gt; (<code>add-digit-to-numeric-arg</code><dt>&lt;-&gt;<dd><a name="index-M_002d_002d-340"></a><a name="index-_002d-341"></a><a name="index-negative-arguments-342"></a><a name="index-arguments_002c-negative-343"></a><a name="index-numeric-arguments_002c-negative-344"></a>To make a negative argument, type <kbd>-</kbd>. Typing <kbd>-</kbd> alone makes a
+negative argument with a value of -1. If you continue to type digit or
+Meta-digit keys after <kbd>-</kbd>, the result is a negative number produced
+by those digits.
+
+ <p><kbd>-</kbd> doesn't work when you type in the echo area, because you need to
+be able to insert the <span class="samp">-</span> character itself; use <kbd>M--</kbd> instead,
+if you need to specify negative arguments in the echo area.
+</dl>
+
+ <p><span class="samp">C-g</span> is used to abort the reading of a multi-character key
+sequence, to cancel lengthy operations (such as multi-file searches) and
+to cancel reading input in the echo area.
+
+ <dl>
+<dt>&lt;C-g&gt; (<code>abort-key</code>)<dt>&lt;C-u&gt;, vi-like operation<dd><a name="index-cancelling-typeahead-345"></a><a name="index-cancelling-the-current-operation-346"></a><a name="index-C_002dg_002c-in-Info-windows-347"></a><a name="index-C_002du-cancels-typeahead_002c-vi_002dlike-operation-348"></a><a name="index-abort_002dkey-349"></a>Cancel current operation.
+</dl>
+
+ <p>The <span class="samp">q</span> command of Info simply quits running Info. Under
+<span class="samp">--vi-keys</span> (see <a href="#_002d_002dvi_002dkeys">&ndash;vi-keys</a>), you can also exit with <span class="samp">:q</span>
+or <span class="samp">ZZ</span>.
+
+ <dl>
+<dt>&lt;q&gt; (<code>quit</code>)<dt><kbd>C-x C-c</kbd><dt><kbd>:q</kbd>, vi-like operation<dt><kbd>ZZ</kbd>, vi-like operation<dd><a name="index-quitting-350"></a><a name="index-q-351"></a><a name="index-C_002dx-C_002dc-352"></a><a name="index-ZZ_002c-vi_002dlike-operation-353"></a><a name="index-quit-354"></a>Exit GNU Info.
+</dl>
+
+ <p>If the operating system tells GNU Info that the screen is 60 lines tall,
+and it is actually only 40 lines tall, here is a way to tell Info that
+the operating system is correct.
+
+ <dl>
+<dt><kbd>M-x set-screen-height</kbd><dd><a name="index-set_002dscreen_002dheight-355"></a><a name="index-screen_002c-changing-the-height-of-356"></a>Read a height value in the echo area and set the height of the
+displayed screen to that value.
+</dl>
+
+ <p>On MS-DOS/MS-Windows, this command actually tries to change the
+dimensions of the visible screen to the value you type in the echo
+area.
+
+ <p>Finally, Info provides a convenient way to display footnotes which might
+be associated with the current node that you are viewing:
+
+ <dl>
+<dt>&lt;ESC C-f&gt; (<code>show-footnotes</code>)<dd><a name="index-ESC-C_002df-357"></a><a name="index-show_002dfootnotes-358"></a><a name="index-footnotes_002c-displaying-359"></a>Show the footnotes (if any) associated with the current node in another
+window. You can have Info automatically display the footnotes
+associated with a node when the node is selected by setting the variable
+<code>automatic-footnotes</code>. See <a href="#Variables"><code>automatic-footnotes</code></a>.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Variables"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Custom-Key-Bindings">Custom Key Bindings</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Miscellaneous-Commands">Miscellaneous Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">11 Manipulating Variables</h2>
+
+<p>GNU Info contains several <dfn>variables</dfn> whose values are looked at by
+various Info commands. You can change the values of these variables,
+and thus change the behavior of Info to more closely match your
+environment and Info file reading manner.
+
+ <p>There are two ways to set the value of a variable: interactively, using
+the <code>set-variable</code> command described below, or in the <code>#var</code>
+section of the <code>.infokey</code> file. See <a href="#Custom-Key-Bindings">Custom Key Bindings</a>.
+
+ <dl>
+<dt><kbd>M-x set-variable</kbd><dd><a name="index-variables_002c-setting-360"></a><a name="index-set_002dvariable-361"></a>Read the name of a variable, and the value for it, in the echo area and
+then set the variable to that value. Completion is available when
+reading the variable name (see <a href="#The-Echo-Area">completion</a>); often,
+completion is available when reading the value to give to the variable,
+but that depends on the variable itself. If a variable does <em>not</em>
+supply multiple choices to complete over, it expects a numeric value.
+
+ <br><dt><kbd>M-x describe-variable</kbd><dd><a name="index-variables_002c-describing-362"></a><a name="index-describe_002dvariable-363"></a>Read the name of a variable in the echo area and then display a brief
+description of what the variable affects.
+</dl>
+
+ <p>Here is a list of the variables that you can set in Info.
+
+ <dl>
+<dt><code>automatic-footnotes</code><dd><a name="index-automatic_002dfootnotes-364"></a>When set to <code>On</code>, footnotes appear and disappear automatically;
+else, they appear at the bottom of the node text. This variable is
+<code>Off</code> by default. When a node is selected, a window containing
+the footnotes which appear in that node is created, and the footnotes
+are displayed within the new window. The window that Info creates to
+contain the footnotes is called <span class="samp">*Footnotes*</span>. If a node is
+selected which contains no footnotes, and a <span class="samp">*Footnotes*</span> window
+is on the screen, the <span class="samp">*Footnotes*</span> window is deleted. Footnote
+windows created in this fashion are not automatically tiled so that
+they can use as little of the display as is possible.
+
+ <br><dt><code>automatic-tiling</code><dd><a name="index-automatic_002dtiling-365"></a>When set to <code>On</code>, creating or deleting a window resizes other
+windows. This variable is <code>Off</code> by default. Normally, typing
+<span class="samp">C-x 2</span> divides the current window into two equal parts. When
+<code>automatic-tiling</code> is set to <code>On</code>, all of the windows are
+resized automatically, keeping an equal number of lines visible in each
+window. There are exceptions to the automatic tiling; specifically, the
+windows <span class="samp">*Completions*</span> and <span class="samp">*Footnotes*</span> are <em>not</em>
+resized through automatic tiling; they remain their original size.
+
+ <br><dt><code>errors-ring-bell</code><dd><a name="index-errors_002dring_002dbell-366"></a>When set to <code>On</code>, errors cause the bell to ring. The default
+setting of this variable is <code>On</code>.
+
+ <br><dt><code>gc-compressed-files</code><dd><a name="index-gc_002dcompressed_002dfiles-367"></a>When set to <code>On</code>, Info garbage collects files which had to be
+uncompressed. The default value of this variable is <code>Off</code>.
+Whenever a node is visited in Info, the Info file containing that node
+is read into core, and Info reads information about the tags and nodes
+contained in that file. Once the tags information is read by Info, it
+is never forgotten. However, the actual text of the nodes does not need
+to remain in core unless a particular Info window needs it. For
+non-compressed files, the text of the nodes does not remain in core when
+it is no longer in use. But de-compressing a file can be a time
+consuming operation, and so Info tries hard not to do it twice.
+<code>gc-compressed-files</code> tells Info it is okay to garbage collect the
+text of the nodes of a file which was compressed on disk.
+
+ <br><dt><code>ISO-Latin</code><dd><a name="index-ISO-Latin-characters-368"></a><a name="index-ISO_002dLatin-369"></a>When set to <code>On</code>, Info accepts and displays ISO Latin characters.
+By default, Info assumes an ASCII character set. <code>ISO-Latin</code> tells
+Info that it is running in an environment where the European standard
+character set is in use, and allows you to input such characters to
+Info, as well as display them.
+
+ <br><dt><code>scroll-behavior</code><dd><a name="index-scroll_002dbehavior-370"></a>Control what happens when forward scrolling is requested at the end of
+a node, or when backward scrolling is requested at the beginning of a
+node. The default value for this variable is <code>Continuous</code>. There
+are three possible values for this variable:
+
+ <dl>
+<dt><code>Continuous</code><dd>Try to get the first item in this node's menu, or failing that, the
+<span class="samp">Next</span> node, or failing that, the <span class="samp">Next</span> of the <span class="samp">Up</span>.
+This behavior is identical to using the <span class="samp">]</span>
+(<code>global-next-node</code>) and <span class="samp">[</span> (<code>global-prev-node</code>)
+commands.
+
+ <br><dt><code>Next Only</code><dd>Only try to get the <span class="samp">Next</span> node.
+
+ <br><dt><code>Page Only</code><dd>Simply give up, changing nothing. If <code>scroll-behavior</code> is
+<code>Page Only</code>, no scrolling command can change the node that is being
+viewed.
+</dl>
+
+ <br><dt><code>scroll-step</code><dd><a name="index-scroll_002dstep-371"></a>The number of lines to scroll when the cursor moves out of the window.
+Scrolling happens automatically if the cursor has moved out of the
+visible portion of the node text when it is time to display. Usually
+the scrolling is done so as to put the cursor on the center line of the
+current window. However, if the variable <code>scroll-step</code> has a
+nonzero value, Info attempts to scroll the node text by that many lines;
+if that is enough to bring the cursor back into the window, that is what
+is done. The default value of this variable is 0, thus placing the
+cursor (and the text it is attached to) in the center of the window.
+Setting this variable to 1 causes a kind of "smooth scrolling" which
+some people prefer.
+
+ <br><dt><code>show-index-match</code><dd><a name="index-show_002dindex_002dmatch-372"></a>When set to <code>On</code>, the portion of the matched search string is
+highlighted in the message which explains where the matched search
+string was found. The default value of this variable is <code>On</code>.
+When Info displays the location where an index match was found,
+(see <a href="#Searching-Commands"><code>next-index-match</code></a>), the portion of the
+string that you had typed is highlighted by displaying it in the inverse
+case from its surrounding characters.
+
+ <br><dt><code>visible-bell</code><dd><a name="index-visible_002dbell-373"></a>When set to <code>On</code>, GNU Info attempts to flash the screen instead of
+ringing the bell. This variable is <code>Off</code> by default. Of course,
+Info can only flash the screen if the terminal allows it; in the case
+that the terminal does not allow it, the setting of this variable has no
+effect. However, you can make Info perform quietly by setting the
+<code>errors-ring-bell</code> variable to <code>Off</code>.
+
+ </dl>
+
+<div class="node">
+<p><hr>
+<a name="Custom-Key-Bindings"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Copying-This-Manual">Copying This Manual</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Variables">Variables</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">12 Customizing Key Bindings and Variables</h2>
+
+<p><a name="index-default-key-bindings_002c-overriding-374"></a><a name="index-overriding-default-key-bindings-375"></a><a name="index-customizing-key-bindings-376"></a><a name="index-key-bindings_002c-customizing-377"></a><a name="index-infokey-378"></a><a name="index-_002einfo-379"></a><a name="index-_002einfokey-380"></a><a name="index-_005finfo-file-_0028MS_002dDOS_0029-381"></a>
+For those whose editor/pager of choice is not Emacs and who are not
+entirely satisfied with the &ndash;vi-keys option (see <a href="#_002d_002dvi_002dkeys">&ndash;vi-keys</a>), GNU
+Info provides a way to define different key-to-command bindings and
+variable settings from the defaults described in this document.
+
+ <p>On startup, GNU Info looks for a configuration file in the invoker's
+HOME directory called <span class="file">.info</span><a rel="footnote" href="#fn-7" name="fnd-7"><sup>7</sup></a>. If it is present, and
+appears to contain Info configuration data, and was created with the
+current version of the <code>infokey</code> command, then Info adopts the
+key bindings and variable settings contained therein.
+
+ <p>The <span class="file">.info</span> file contains compact, non-textual data for reasons of
+efficiency and because its design was lifted wholesale from the GNU Less
+program, which also does it that way. It must be created by compiling a
+textual source file using the <code>infokey</code> command.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Invoking-infokey">Invoking infokey</a>
+<li><a accesskey="2" href="#infokey-source-format">infokey source format</a>
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Invoking-infokey"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#infokey-source-format">infokey source format</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Custom-Key-Bindings">Custom Key Bindings</a>
+<br>
+</div>
+
+<h3 class="section">12.1 Invoking <span class="command">infokey</span></h3>
+
+<p><a name="index-invoking-infokey-382"></a><a name="index-infokey_002c-invoking-383"></a><a name="index-_005finfokey-file-_0028MS_002dDOS_0029-384"></a>
+<span class="command">infokey</span> compiles a source file
+(<span class="file">$HOME/.infokey</span><a rel="footnote" href="#fn-8" name="fnd-8"><sup>8</sup></a> by default) containing Info customizations
+into a binary format (<span class="file">$HOME/.info</span> by default). GNU Info reads
+the binary file at startup to override the default key bindings and
+variable definitions. Synopsis:
+
+<pre class="example"> infokey [<var>option</var>...] [<var>input-file</var>]
+</pre>
+ <p>Besides the standard <span class="option">--help</span> and <span class="option">--version</span>, the only
+option is <span class="option">--output </span><var>file</var>. This tells <span class="command">infokey</span> to
+write the binary data to <var>file</var> instead of <span class="file">$HOME/.info</span>.
+
+<div class="node">
+<p><hr>
+<a name="infokey-source-format"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Invoking-infokey">Invoking infokey</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Custom-Key-Bindings">Custom Key Bindings</a>
+<br>
+</div>
+
+<h3 class="section">12.2 <span class="command">infokey</span> source format</h3>
+
+<p><a name="index-infokey-source-format-385"></a><a name="index-_002einfokey-source-format-386"></a><a name="index-format-of-_002einfokey-source-387"></a>
+The format of the source file read by <span class="command">infokey</span> is most easily
+illustrated by example. For instance, here is a sample <span class="file">.infokey</span>
+source file suitable for aficionados of <span class="command">vi</span> or <span class="command">less</span>:
+
+<pre class="example"> #info
+ j next-line
+ k prev-line
+ l forward-char
+ h backward-char
+ \kd next-line
+ \ku prev-line
+ \kr forward-char
+ \kl backward-char
+ \ scroll-forward
+ \kD scroll-forward-page-only
+ b scroll-backward
+ \kU scroll-backward-page-only
+ g beginning-of-node
+ \kh beginning-of-node
+ G end-of-node
+ \ke end-of-node
+ \t select-reference-this-line
+ - history-node
+ n next-node
+ p prev-node
+ u up-node
+ t top-node
+ d dir-node
+ #var
+ scroll-step=1
+</pre>
+ <p>The source file consists of one or more <dfn>sections</dfn>.
+Each section starts with a line that identifies the type of section.
+Possible sections are:
+
+ <dl>
+<dt><code>#info</code><dd>Key bindings for Info windows.
+The start of this section is indicated by a line containing just
+<code>#info</code> by itself. If this is the first section in the source
+file, the <code>#info</code> line can be omitted. The rest of this section
+consists of lines of the form:
+
+ <pre class="example"> <var>string</var> whitespace <var>action</var> [ whitespace [ # comment ] ] newline
+ </pre>
+ <p>Whitespace is any sequence of one or more spaces and/or tabs. Comment
+is any sequence of any characters, excluding newline. <var>string</var> is
+the key sequence which invokes the action. <var>action</var> is the name of
+an Info command. The characters in <var>string</var> are interpreted
+literally or prefixed by a caret (<code>^</code>) to indicate a control
+character. A backslash followed by certain characters specifies input
+keystrokes as follows:
+
+ <dl>
+<dt><code>\b</code><dd>Backspace
+<br><dt><code>\e</code><dd>Escape (ESC)
+<br><dt><code>\n</code><dd>Newline
+<br><dt><code>\r</code><dd>Return
+<br><dt><code>\t</code><dd>Tab
+<br><dt><code>\ku</code><dd>Up arrow
+<br><dt><code>\kd</code><dd>Down arrow
+<br><dt><code>\kl</code><dd>Left arrow
+<br><dt><code>\kr</code><dd>Right arrow
+<br><dt><code>\kU</code><dd>Page Up
+<br><dt><code>\kD</code><dd>Page Down
+<br><dt><code>\kh</code><dd>HOME
+<br><dt><code>\ke</code><dd>END
+<br><dt><code>\kx</code><dd>Delete (DEL)
+<br><dt><code>\m</code><var>x</var><dd>Meta-<var>x</var> where <var>x</var> is any character as described above.
+</dl>
+
+ <p>Backslash followed by any other character indicates that character is to
+be taken literally. Characters which must be preceded by a backslash
+include caret, space, tab, and backslash itself.
+
+ <br><dt><code>#echo-area</code><dd>Key bindings for the echo area.
+The start of this section is indicated by a line containing just
+<code>#echo-area</code> by itself. The rest of this section has a syntax
+identical to that for the key definitions for the Info area, described
+above.
+
+ <br><dt><code>#var</code><dd>Variable initializations.
+The start of this section is indicated by a line containing just
+<code>#var</code> by itself. Following this line is a list of variable
+assignments, one per line. Each line consists of a variable name
+(See <a href="#Variables">Variables</a>,) followed by <code>=</code> followed by a value.
+There may be no white space between the variable name and the <code>=</code>,
+and all characters following the <code>=</code>, including white space,
+are included in the value.
+</dl>
+
+ <p>Blank lines and lines starting with <code>#</code> are ignored, except for
+the special section header lines.
+
+ <p>Key bindings defined in the <span class="file">.info</span> file take precedence over GNU
+Info's default key bindings, whether or not <span class="samp">--vi-keys</span> is used. A
+default key binding may be disabled by overriding it in the <span class="file">.info</span>
+file with the action <code>invalid</code>. In addition, <em>all</em> default
+key bindings can be disabled by adding this line <em>anywhere</em> in the
+relevant section:
+
+<pre class="example"> #stop
+</pre>
+ <p>This will cause GNU Info to ignore all the default key commands for that
+section.
+
+ <p>Beware: <code>#stop</code> can be dangerous. Since it disables all default
+key bindings, you must supply enough new key bindings to enable all
+necessary actions. Failure to bind any key to the <code>quit</code> command,
+for example, can lead to frustration.
+
+ <p>The order in which key bindings are defined in the <span class="file">.info</span> file is
+not important, except that the command summary produced by the
+<code>get-help-window</code> command only displays the <em>first</em> key that
+is bound to each command.
+
+<!-- the following is incomplete -->
+<div class="node">
+<p><hr>
+<a name="Copying-This-Manual"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Index">Index</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Custom-Key-Bindings">Custom Key Bindings</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="appendix">Appendix A Copying This Manual</h2>
+
+<ul class="menu">
+<li><a accesskey="1" href="#GNU-Free-Documentation-License">GNU Free Documentation License</a>: License for copying this manual.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="GNU-Free-Documentation-License"></a>Up:&nbsp;<a rel="up" accesskey="u" href="#Copying-This-Manual">Copying This Manual</a>
+<br>
+</div>
+
+<h3 class="appendixsec">A.1 GNU Free Documentation License</h3>
+
+<p><a name="index-FDL_002c-GNU-Free-Documentation-License-388"></a><div align="center">Version 1.2, November 2002</div>
+
+<pre class="display"> Copyright &copy; 2000,2001,2002 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.
+</pre>
+ <ol type=1 start=0>
+<li>PREAMBLE
+
+ <p>The purpose of this License is to make a manual, textbook, or other
+functional and useful document <dfn>free</dfn> in the sense of freedom: to
+assure everyone the effective freedom to copy and redistribute it,
+with or without modifying it, either commercially or noncommercially.
+Secondarily, this License preserves for the author and publisher a way
+to get credit for their work, while not being considered responsible
+for modifications made by others.
+
+ <p>This License is a kind of &ldquo;copyleft&rdquo;, which means that derivative
+works of the document must themselves be free in the same sense. It
+complements the GNU General Public License, which is a copyleft
+license designed for free software.
+
+ <p>We have designed this License in order to use it for manuals for free
+software, because free software needs free documentation: a free
+program should come with manuals providing the same freedoms that the
+software does. But this License is not limited to software manuals;
+it can be used for any textual work, regardless of subject matter or
+whether it is published as a printed book. We recommend this License
+principally for works whose purpose is instruction or reference.
+
+ <li>APPLICABILITY AND DEFINITIONS
+
+ <p>This License applies to any manual or other work, in any medium, that
+contains a notice placed by the copyright holder saying it can be
+distributed under the terms of this License. Such a notice grants a
+world-wide, royalty-free license, unlimited in duration, to use that
+work under the conditions stated herein. The &ldquo;Document&rdquo;, below,
+refers to any such manual or work. Any member of the public is a
+licensee, and is addressed as &ldquo;you&rdquo;. You accept the license if you
+copy, modify or distribute the work in a way requiring permission
+under copyright law.
+
+ <p>A &ldquo;Modified Version&rdquo; of the Document means any work containing the
+Document or a portion of it, either copied verbatim, or with
+modifications and/or translated into another language.
+
+ <p>A &ldquo;Secondary Section&rdquo; is a named appendix or a front-matter section
+of the Document that deals exclusively with the relationship of the
+publishers or authors of the Document to the Document's overall
+subject (or to related matters) and contains nothing that could fall
+directly within that overall subject. (Thus, if the Document is in
+part a textbook of mathematics, a Secondary Section may not explain
+any mathematics.) The relationship could be a matter of historical
+connection with the subject or with related matters, or of legal,
+commercial, philosophical, ethical or political position regarding
+them.
+
+ <p>The &ldquo;Invariant Sections&rdquo; are certain Secondary Sections whose titles
+are designated, as being those of Invariant Sections, in the notice
+that says that the Document is released under this License. If a
+section does not fit the above definition of Secondary then it is not
+allowed to be designated as Invariant. The Document may contain zero
+Invariant Sections. If the Document does not identify any Invariant
+Sections then there are none.
+
+ <p>The &ldquo;Cover Texts&rdquo; are certain short passages of text that are listed,
+as Front-Cover Texts or Back-Cover Texts, in the notice that says that
+the Document is released under this License. A Front-Cover Text may
+be at most 5 words, and a Back-Cover Text may be at most 25 words.
+
+ <p>A &ldquo;Transparent&rdquo; copy of the Document means a machine-readable copy,
+represented in a format whose specification is available to the
+general public, that is suitable for revising the document
+straightforwardly with generic text editors or (for images composed of
+pixels) generic paint programs or (for drawings) some widely available
+drawing editor, and that is suitable for input to text formatters or
+for automatic translation to a variety of formats suitable for input
+to text formatters. A copy made in an otherwise Transparent file
+format whose markup, or absence of markup, has been arranged to thwart
+or discourage subsequent modification by readers is not Transparent.
+An image format is not Transparent if used for any substantial amount
+of text. A copy that is not &ldquo;Transparent&rdquo; is called &ldquo;Opaque&rdquo;.
+
+ <p>Examples of suitable formats for Transparent copies include plain
+<span class="sc">ascii</span> without markup, Texinfo input format, LaTeX input
+format, <acronym>SGML</acronym> or <acronym>XML</acronym> using a publicly available
+<acronym>DTD</acronym>, and standard-conforming simple <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> designed for human modification. Examples
+of transparent image formats include <acronym>PNG</acronym>, <acronym>XCF</acronym> and
+<acronym>JPG</acronym>. Opaque formats include proprietary formats that can be
+read and edited only by proprietary word processors, <acronym>SGML</acronym> or
+<acronym>XML</acronym> for which the <acronym>DTD</acronym> and/or processing tools are
+not generally available, and the machine-generated <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> produced by some word processors for
+output purposes only.
+
+ <p>The &ldquo;Title Page&rdquo; means, for a printed book, the title page itself,
+plus such following pages as are needed to hold, legibly, the material
+this License requires to appear in the title page. For works in
+formats which do not have any title page as such, &ldquo;Title Page&rdquo; means
+the text near the most prominent appearance of the work's title,
+preceding the beginning of the body of the text.
+
+ <p>A section &ldquo;Entitled XYZ&rdquo; means a named subunit of the Document whose
+title either is precisely XYZ or contains XYZ in parentheses following
+text that translates XYZ in another language. (Here XYZ stands for a
+specific section name mentioned below, such as &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, &ldquo;Endorsements&rdquo;, or &ldquo;History&rdquo;.) To &ldquo;Preserve the Title&rdquo;
+of such a section when you modify the Document means that it remains a
+section &ldquo;Entitled XYZ&rdquo; according to this definition.
+
+ <p>The Document may include Warranty Disclaimers next to the notice which
+states that this License applies to the Document. These Warranty
+Disclaimers are considered to be included by reference in this
+License, but only as regards disclaiming warranties: any other
+implication that these Warranty Disclaimers may have is void and has
+no effect on the meaning of this License.
+
+ <li>VERBATIM COPYING
+
+ <p>You may copy and distribute the Document in any medium, either
+commercially or noncommercially, provided that this License, the
+copyright notices, and the license notice saying this License applies
+to the Document are reproduced in all copies, and that you add no other
+conditions whatsoever to those of this License. You may not use
+technical measures to obstruct or control the reading or further
+copying of the copies you make or distribute. However, you may accept
+compensation in exchange for copies. If you distribute a large enough
+number of copies you must also follow the conditions in section 3.
+
+ <p>You may also lend copies, under the same conditions stated above, and
+you may publicly display copies.
+
+ <li>COPYING IN QUANTITY
+
+ <p>If you publish printed copies (or copies in media that commonly have
+printed covers) of the Document, numbering more than 100, and the
+Document's license notice requires Cover Texts, you must enclose the
+copies in covers that carry, clearly and legibly, all these Cover
+Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
+the back cover. Both covers must also clearly and legibly identify
+you as the publisher of these copies. The front cover must present
+the full title with all words of the title equally prominent and
+visible. You may add other material on the covers in addition.
+Copying with changes limited to the covers, as long as they preserve
+the title of the Document and satisfy these conditions, can be treated
+as verbatim copying in other respects.
+
+ <p>If the required texts for either cover are too voluminous to fit
+legibly, you should put the first ones listed (as many as fit
+reasonably) on the actual cover, and continue the rest onto adjacent
+pages.
+
+ <p>If you publish or distribute Opaque copies of the Document numbering
+more than 100, you must either include a machine-readable Transparent
+copy along with each Opaque copy, or state in or with each Opaque copy
+a computer-network location from which the general network-using
+public has access to download using public-standard network protocols
+a complete Transparent copy of the Document, free of added material.
+If you use the latter option, you must take reasonably prudent steps,
+when you begin distribution of Opaque copies in quantity, to ensure
+that this Transparent copy will remain thus accessible at the stated
+location until at least one year after the last time you distribute an
+Opaque copy (directly or through your agents or retailers) of that
+edition to the public.
+
+ <p>It is requested, but not required, that you contact the authors of the
+Document well before redistributing any large number of copies, to give
+them a chance to provide you with an updated version of the Document.
+
+ <li>MODIFICATIONS
+
+ <p>You may copy and distribute a Modified Version of the Document under
+the conditions of sections 2 and 3 above, provided that you release
+the Modified Version under precisely this License, with the Modified
+Version filling the role of the Document, thus licensing distribution
+and modification of the Modified Version to whoever possesses a copy
+of it. In addition, you must do these things in the Modified Version:
+
+ <ol type=A start=1>
+<li>Use in the Title Page (and on the covers, if any) a title distinct
+from that of the Document, and from those of previous versions
+(which should, if there were any, be listed in the History section
+of the Document). You may use the same title as a previous version
+if the original publisher of that version gives permission.
+
+ <li>List on the Title Page, as authors, one or more persons or entities
+responsible for authorship of the modifications in the Modified
+Version, together with at least five of the principal authors of the
+Document (all of its principal authors, if it has fewer than five),
+unless they release you from this requirement.
+
+ <li>State on the Title page the name of the publisher of the
+Modified Version, as the publisher.
+
+ <li>Preserve all the copyright notices of the Document.
+
+ <li>Add an appropriate copyright notice for your modifications
+adjacent to the other copyright notices.
+
+ <li>Include, immediately after the copyright notices, a license notice
+giving the public permission to use the Modified Version under the
+terms of this License, in the form shown in the Addendum below.
+
+ <li>Preserve in that license notice the full lists of Invariant Sections
+and required Cover Texts given in the Document's license notice.
+
+ <li>Include an unaltered copy of this License.
+
+ <li>Preserve the section Entitled &ldquo;History&rdquo;, Preserve its Title, and add
+to it an item stating at least the title, year, new authors, and
+publisher of the Modified Version as given on the Title Page. If
+there is no section Entitled &ldquo;History&rdquo; in the Document, create one
+stating the title, year, authors, and publisher of the Document as
+given on its Title Page, then add an item describing the Modified
+Version as stated in the previous sentence.
+
+ <li>Preserve the network location, if any, given in the Document for
+public access to a Transparent copy of the Document, and likewise
+the network locations given in the Document for previous versions
+it was based on. These may be placed in the &ldquo;History&rdquo; section.
+You may omit a network location for a work that was published at
+least four years before the Document itself, or if the original
+publisher of the version it refers to gives permission.
+
+ <li>For any section Entitled &ldquo;Acknowledgements&rdquo; or &ldquo;Dedications&rdquo;, Preserve
+the Title of the section, and preserve in the section all the
+substance and tone of each of the contributor acknowledgements and/or
+dedications given therein.
+
+ <li>Preserve all the Invariant Sections of the Document,
+unaltered in their text and in their titles. Section numbers
+or the equivalent are not considered part of the section titles.
+
+ <li>Delete any section Entitled &ldquo;Endorsements&rdquo;. Such a section
+may not be included in the Modified Version.
+
+ <li>Do not retitle any existing section to be Entitled &ldquo;Endorsements&rdquo; or
+to conflict in title with any Invariant Section.
+
+ <li>Preserve any Warranty Disclaimers.
+ </ol>
+
+ <p>If the Modified Version includes new front-matter sections or
+appendices that qualify as Secondary Sections and contain no material
+copied from the Document, you may at your option designate some or all
+of these sections as invariant. To do this, add their titles to the
+list of Invariant Sections in the Modified Version's license notice.
+These titles must be distinct from any other section titles.
+
+ <p>You may add a section Entitled &ldquo;Endorsements&rdquo;, provided it contains
+nothing but endorsements of your Modified Version by various
+parties&mdash;for example, statements of peer review or that the text has
+been approved by an organization as the authoritative definition of a
+standard.
+
+ <p>You may add a passage of up to five words as a Front-Cover Text, and a
+passage of up to 25 words as a Back-Cover Text, to the end of the list
+of Cover Texts in the Modified Version. Only one passage of
+Front-Cover Text and one of Back-Cover Text may be added by (or
+through arrangements made by) any one entity. If the Document already
+includes a cover text for the same cover, previously added by you or
+by arrangement made by the same entity you are acting on behalf of,
+you may not add another; but you may replace the old one, on explicit
+permission from the previous publisher that added the old one.
+
+ <p>The author(s) and publisher(s) of the Document do not by this License
+give permission to use their names for publicity for or to assert or
+imply endorsement of any Modified Version.
+
+ <li>COMBINING DOCUMENTS
+
+ <p>You may combine the Document with other documents released under this
+License, under the terms defined in section 4 above for modified
+versions, provided that you include in the combination all of the
+Invariant Sections of all of the original documents, unmodified, and
+list them all as Invariant Sections of your combined work in its
+license notice, and that you preserve all their Warranty Disclaimers.
+
+ <p>The combined work need only contain one copy of this License, and
+multiple identical Invariant Sections may be replaced with a single
+copy. If there are multiple Invariant Sections with the same name but
+different contents, make the title of each such section unique by
+adding at the end of it, in parentheses, the name of the original
+author or publisher of that section if known, or else a unique number.
+Make the same adjustment to the section titles in the list of
+Invariant Sections in the license notice of the combined work.
+
+ <p>In the combination, you must combine any sections Entitled &ldquo;History&rdquo;
+in the various original documents, forming one section Entitled
+&ldquo;History&rdquo;; likewise combine any sections Entitled &ldquo;Acknowledgements&rdquo;,
+and any sections Entitled &ldquo;Dedications&rdquo;. You must delete all
+sections Entitled &ldquo;Endorsements.&rdquo;
+
+ <li>COLLECTIONS OF DOCUMENTS
+
+ <p>You may make a collection consisting of the Document and other documents
+released under this License, and replace the individual copies of this
+License in the various documents with a single copy that is included in
+the collection, provided that you follow the rules of this License for
+verbatim copying of each of the documents in all other respects.
+
+ <p>You may extract a single document from such a collection, and distribute
+it individually under this License, provided you insert a copy of this
+License into the extracted document, and follow this License in all
+other respects regarding verbatim copying of that document.
+
+ <li>AGGREGATION WITH INDEPENDENT WORKS
+
+ <p>A compilation of the Document or its derivatives with other separate
+and independent documents or works, in or on a volume of a storage or
+distribution medium, is called an &ldquo;aggregate&rdquo; if the copyright
+resulting from the compilation is not used to limit the legal rights
+of the compilation's users beyond what the individual works permit.
+When the Document is included in an aggregate, this License does not
+apply to the other works in the aggregate which are not themselves
+derivative works of the Document.
+
+ <p>If the Cover Text requirement of section 3 is applicable to these
+copies of the Document, then if the Document is less than one half of
+the entire aggregate, the Document's Cover Texts may be placed on
+covers that bracket the Document within the aggregate, or the
+electronic equivalent of covers if the Document is in electronic form.
+Otherwise they must appear on printed covers that bracket the whole
+aggregate.
+
+ <li>TRANSLATION
+
+ <p>Translation is considered a kind of modification, so you may
+distribute translations of the Document under the terms of section 4.
+Replacing Invariant Sections with translations requires special
+permission from their copyright holders, but you may include
+translations of some or all Invariant Sections in addition to the
+original versions of these Invariant Sections. You may include a
+translation of this License, and all the license notices in the
+Document, and any Warranty Disclaimers, provided that you also include
+the original English version of this License and the original versions
+of those notices and disclaimers. In case of a disagreement between
+the translation and the original version of this License or a notice
+or disclaimer, the original version will prevail.
+
+ <p>If a section in the Document is Entitled &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, or &ldquo;History&rdquo;, the requirement (section 4) to Preserve
+its Title (section 1) will typically require changing the actual
+title.
+
+ <li>TERMINATION
+
+ <p>You may not copy, modify, sublicense, or distribute the Document except
+as expressly provided for under this License. Any other attempt to
+copy, modify, sublicense or distribute the Document 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.
+
+ <li>FUTURE REVISIONS OF THIS LICENSE
+
+ <p>The Free Software Foundation may publish new, revised versions
+of the GNU Free Documentation 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. See
+<a href="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</a>.
+
+ <p>Each version of the License is given a distinguishing version number.
+If the Document specifies that a particular numbered version of this
+License &ldquo;or any later version&rdquo; applies to it, you have the option of
+following the terms and conditions either of that specified version or
+of any later version that has been published (not as a draft) by the
+Free Software Foundation. If the Document does not specify a version
+number of this License, you may choose any version ever published (not
+as a draft) by the Free Software Foundation.
+ </ol>
+
+<h4 class="appendixsubsec">A.1.1 ADDENDUM: How to use this License for your documents</h4>
+
+<p>To use this License in a document you have written, include a copy of
+the License in the document and put the following copyright and
+license notices just after the title page:
+
+<pre class="smallexample"> Copyright (C) <var>year</var> <var>your name</var>.
+ Permission is granted to copy, distribute and/or modify this document
+ 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, no Front-Cover Texts, and no Back-Cover
+ Texts. A copy of the license is included in the section entitled ``GNU
+ Free Documentation License''.
+</pre>
+ <p>If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
+replace the &ldquo;with...Texts.&rdquo; line with this:
+
+<pre class="smallexample"> with the Invariant Sections being <var>list their titles</var>, with
+ the Front-Cover Texts being <var>list</var>, and with the Back-Cover Texts
+ being <var>list</var>.
+</pre>
+ <p>If you have Invariant Sections without Cover Texts, or some other
+combination of the three, merge those two alternatives to suit the
+situation.
+
+ <p>If your document contains nontrivial examples of program code, we
+recommend releasing these examples in parallel under your choice of
+free software license, such as the GNU General Public License,
+to permit their use in free software.
+
+<!-- Local Variables: -->
+<!-- ispell-local-pdict: "ispell-dict" -->
+<!-- End: -->
+<div class="node">
+<p><hr>
+<a name="Index"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Copying-This-Manual">Copying This Manual</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="appendix">Appendix B Index</h2>
+
+<ul class="index-cp" compact>
+<li><a href="#index-_0027_002c-vi_002dlike-operation-137"><code>', vi-like operation</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-_002c-199"><code>,</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-_002d-341"><code>-</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-_0040code_007b_002d_002dsubnodes_007d_002c-command-line-option-30"><code>--subnodes</code>, command line option</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-_002einfo-379">.info</a>: <a href="#Custom-Key-Bindings">Custom Key Bindings</a></li>
+<li><a href="#index-_002einfokey-380">.infokey</a>: <a href="#Custom-Key-Bindings">Custom Key Bindings</a></li>
+<li><a href="#index-_002einfokey-source-format-386">.infokey source format</a>: <a href="#infokey-source-format">infokey source format</a></li>
+<li><a href="#index-_002f-175"><code>/</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-0-_0040dots_007b_007d-9_002c-vi_002dlike-operation-338"><code>0 ... 9, vi-like operation</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-0_002c-in-Info-windows-209"><code>0, in Info windows</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-1-_0040dots_007b_007d-9_002c-in-Info-windows-204">1 <small class="dots">...</small> 9, in Info windows</a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-_003c-145"><code>&lt;</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-_003e-148"><code>&gt;</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-_003f_002c-in-Info-windows-327"><code>?, in Info windows</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-_003f_002c-in-the-echo-area-311"><code>?, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-_003f_002c-vi_002dlike-operation-177"><code>?, vi-like operation</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-_005b-153"><code>[</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-_005d-151"><code>]</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-_005finfo-file-_0028MS_002dDOS_0029-381">_info file (MS-DOS)</a>: <a href="#Custom-Key-Bindings">Custom Key Bindings</a></li>
+<li><a href="#index-_005finfokey-file-_0028MS_002dDOS_0029-384">_infokey file (MS-DOS)</a>: <a href="#Invoking-infokey">Invoking infokey</a></li>
+<li><a href="#index-abort_002dkey-349"><code>abort-key</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-add_002ddigit_002dto_002dnumeric_002darg-339"><code>add-digit-to-numeric-arg</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-ANSI-escape-sequences-in-documents-25">ANSI escape sequences in documents</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-Apropos_0040r_007b_002c-in-Info-files_007d-8">Apropos<span class="roman">, in Info files</span></a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-arguments_002c-command-line-5">arguments, command line</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-arguments_002c-negative-343">arguments, negative</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-automatic_002dfootnotes-364"><code>automatic-footnotes</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-automatic_002dtiling-365"><code>automatic-tiling</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-b_002c-in-Info-windows-63"><code>b, in Info windows</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-b_002c-vi_002dlike-operation-90"><code>b, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-BackTab_002c-in-Info-windows-225"><code>BackTab, in Info windows</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-BackTab_002c-in-the-echo-area-290"><code>BackTab, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-backward_002dchar-56"><code>backward-char</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-backward_002dword-62"><code>backward-word</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-beginning_002dof_002dline-47"><code>beginning-of-line</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-beginning_002dof_002dnode-67"><code>beginning-of-node</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-BS-_0028backspace_0029-116"><code>BS (backspace)</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002da_002c-in-Info-windows-45"><code>C-a, in Info windows</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002da_002c-in-the-echo-area-258"><code>C-a, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002db_002c-in-Info-windows-54"><code>C-b, in Info windows</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002db_002c-in-the-echo-area-255"><code>C-b, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002db_002c-vi_002dlike-operation-91"><code>C-b, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dCENTER-136"><code>C-CENTER</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dd_002c-in-the-echo-area-271"><code>C-d, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002dd_002c-vi_002dlike-operation-109"><code>C-d, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002de_002c-in-Info-windows-48"><code>C-e, in Info windows</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002de_002c-in-the-echo-area-261"><code>C-e, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002de_002c-vi_002dlike-operation-96"><code>C-e, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dEnd-70"><code>C-End</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002df_002c-in-Info-windows-51"><code>C-f, in Info windows</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002df_002c-in-the-echo-area-250"><code>C-f, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002df_002c-vi_002dlike-operation-79"><code>C-f, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dg_002c-in-Info-windows-347"><code>C-g, in Info windows</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-C_002dg_002c-in-the-echo-area-276"><code>C-g, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002dh-326"><code>C-h</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-C_002dHome-65"><code>C-Home</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002dk_002c-in-the-echo-area-299"><code>C-k, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002dk_002c-vi_002dlike-operation-105"><code>C-k, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dl-117"><code>C-l</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dLEFT-61"><code>C-LEFT</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002dLEFT_002c-in-the-echo-area-270"><code>C-LEFT, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002dn-39"><code>C-n</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002dn_002c-vi_002dlike-operation-95"><code>C-n, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dNEXT-123"><code>C-NEXT</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dp-42"><code>C-p</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002dp_002c-vi_002dlike-operation-101"><code>C-p, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dPgDn-126"><code>C-PgDn</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dPgUp-130"><code>C-PgUp</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dPREVIOUS-128"><code>C-PREVIOUS</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dq_002c-in-the-echo-area-281"><code>C-q, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002dr-193"><code>C-r</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-C_002dRIGHT-58"><code>C-RIGHT</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-C_002dRIGHT_002c-in-the-echo-area-267"><code>C-RIGHT, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002ds-190"><code>C-s</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-C_002dt_002c-in-the-echo-area-291"><code>C-t, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002du-335"><code>C-u</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-C_002du-cancels-typeahead_002c-vi_002dlike-operation-348"><code>C-u cancels typeahead, vi-like operation</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-C_002du_002c-in-the-echo-area_002c-vi_002dlike-operation-277"><code>C-u, in the echo area, vi-like operation</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002du_002c-vi_002dlike-operation-112"><code>C-u, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dUP-132"><code>C-UP</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dv-78"><code>C-v</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dv_002c-in-the-echo-area_002c-vi_002dlike-operation-282"><code>C-v, in the echo area, vi-like operation</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002dw-119"><code>C-w</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-C_002dx-0-238"><code>C-x 0</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-C_002dx-1-240"><code>C-x 1</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-C_002dx-2-235"><code>C-x 2</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-C_002dx-_005e-244"><code>C-x ^</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-C_002dx-b-171"><code>C-x b</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dx-C_002db-169"><code>C-x C-b</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dx-C_002dc-352"><code>C-x C-c</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-C_002dx-C_002df-167"><code>C-x C-f</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dx-DEL_002c-in-the-echo-area-301"><code>C-x DEL, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002dx-g_002c-vi_002dlike-operation-156"><code>C-x g, vi-like operation</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dx-k-165"><code>C-x k</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dx-N-187"><code>C-x N</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-C_002dx-n-183"><code>C-x n</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-C_002dx-n_002c-vi_002dlike-operation-124"><code>C-x n, vi-like operation</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dx-o-231"><code>C-x o</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-C_002dx-r_002c-vi_002dlike-operation-218"><code>C-x r, vi-like operation</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-C_002dx-t-247"><code>C-x t</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-C_002dx-u_002c-vi_002dlike-operation-133"><code>C-x u, vi-like operation</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-C_002dy_002c-in-the-echo-area-303"><code>C-y, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-C_002dy_002c-vi_002dlike-operation-106"><code>C-y, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-cancelling-the-current-operation-346">cancelling the current operation</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-cancelling-typeahead-345">cancelling typeahead</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-case_002dsensitive-search-182">case-sensitive search</a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-case_002dsensitivity_002c-and-search-203">case-sensitivity, and search</a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-colors-in-documents-24">colors in documents</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-command-line-options-3">command line options</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-command_002dline-options_002c-how-to-find-27">command-line options, how to find</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-commands_002c-describing-321">commands, describing</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-completion-307">completion</a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-compressed-Info-files-16">compressed Info files</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-cursor_002c-moving-37">cursor, moving</a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-customizing-key-bindings-376">customizing key bindings</a>: <a href="#Custom-Key-Bindings">Custom Key Bindings</a></li>
+<li><a href="#index-d-142"><code>d</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-d_002c-vi_002dlike-operation-108"><code>d, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-default-key-bindings_002c-overriding-374">default key bindings, overriding</a>: <a href="#Custom-Key-Bindings">Custom Key Bindings</a></li>
+<li><a href="#index-DEL_002c-in-Info-windows-86"><code>DEL, in Info windows</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-DEL_002c-in-the-echo-area-274"><code>DEL, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-delete_002dwindow-239"><code>delete-window</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-describe_002dcommand-322"><code>describe-command</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-describe_002dkey-324"><code>describe-key</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-describe_002dvariable-363"><code>describe-variable</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-dir_002dnode-144"><code>dir-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-directory-path-9">directory path</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-DOWN-_0028an-arrow-key_0029-40"><code>DOWN (an arrow key)</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-DOWN_002c-vi_002dlike-operation-99"><code>DOWN, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-down_002dline-100"><code>down-line</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-e_002c-in-Info-windows-69"><code>e, in Info windows</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-echo-area-249">echo area</a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dabort-278"><code>echo-area-abort</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dbackward-257"><code>echo-area-backward</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dbackward_002dkill_002dline-302"><code>echo-area-backward-kill-line</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dbackward_002dkill_002dword-297"><code>echo-area-backward-kill-word</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dbackward_002dword-269"><code>echo-area-backward-word</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dbeg_002dof_002dline-260"><code>echo-area-beg-of-line</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dcomplete-310"><code>echo-area-complete</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002ddelete-273"><code>echo-area-delete</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dend_002dof_002dline-263"><code>echo-area-end-of-line</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dforward-253"><code>echo-area-forward</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dforward_002dword-266"><code>echo-area-forward-word</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dinsert-285"><code>echo-area-insert</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dkill_002dline-300"><code>echo-area-kill-line</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dkill_002dword-295"><code>echo-area-kill-word</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dnewline-280"><code>echo-area-newline</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dpossible_002dcompletions-312"><code>echo-area-possible-completions</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dquoted_002dinsert-283"><code>echo-area-quoted-insert</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002drubout-275"><code>echo-area-rubout</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dscroll_002dcompletions_002dwindow-314"><code>echo-area-scroll-completions-window</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dtab_002dinsert-288"><code>echo-area-tab-insert</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dtranspose_002dchars-292"><code>echo-area-transpose-chars</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dyank-304"><code>echo-area-yank</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-echo_002darea_002dyank_002dpop-306"><code>echo-area-yank-pop</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-End-49"><code>End</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-end_002dof_002dline-50"><code>end-of-line</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-end_002dof_002dnode-71"><code>end-of-node</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-errors_002dring_002dbell-366"><code>errors-ring-bell</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-ESC-C_002df-357"><code>ESC C-f</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-ESC-C_002dv_002c-in-Info-windows-242"><code>ESC C-v, in Info windows</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-ESC-C_002dv_002c-in-the-echo-area-313"><code>ESC C-v, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-f-215"><code>f</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-f_002c-vi_002dlike-operation-80"><code>f, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-F1-328"><code>F1</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-FDL_002c-GNU-Free-Documentation-License-388">FDL, GNU Free Documentation License</a>: <a href="#GNU-Free-Documentation-License">GNU Free Documentation License</a></li>
+<li><a href="#index-file-names_002c-relative-14">file names, relative</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-file_002c-outputting-to-22">file, outputting to</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-files_002c-compressed-17">files, compressed</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-find_002dmenu-214"><code>find-menu</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-finding-the-Invocation-node-161">finding the Invocation node</a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-first_002dnode-147"><code>first-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-footnotes_002c-displaying-359">footnotes, displaying</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-format-of-_002einfokey-source-387">format of .infokey source</a>: <a href="#infokey-source-format">infokey source format</a></li>
+<li><a href="#index-forward_002dchar-53"><code>forward-char</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-forward_002dword-59"><code>forward-word</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-functions_002c-describing-320">functions, describing</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-g-155"><code>g</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-G-162"><code>G</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-G_002c-vi_002dlike-operation-149"><code>G, vi-like operation</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-g_002c-vi_002dlike-operation-146"><code>g, vi-like operation</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-gc_002dcompressed_002dfiles-367"><code>gc-compressed-files</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-get_002dhelp_002dwindow-330"><code>get-help-window</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-get_002dinfo_002dhelp_002dnode-333"><code>get-info-help-node</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-global_002dnext_002dnode-152"><code>global-next-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-global_002dprev_002dnode-154"><code>global-prev-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-goto_002dinvocation-160"><code>goto-invocation</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-goto_002dnode-157"><code>goto-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-grow_002dwindow-245"><code>grow-window</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-h-331"><code>h</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-h_002c-vi_002dlike-operation-329"><code>h, vi-like operation</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-history_002dnode-138"><code>history-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-Home-46"><code>Home</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-i-195"><code>i</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-I-159"><code>I</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-incremental-search-192">incremental search</a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-index-search_002c-selecting-from-the-command-line-19">index search, selecting from the command line</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-index_002c-searching-197">index, searching</a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-index_002dapropos-201"><code>index-apropos</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-index_002dsearch-196"><code>index-search</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-Info-file_002c-selecting-12">Info file, selecting</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-Info-files_002c-compressed-18">Info files, compressed</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-Info-files_002c-relative-15">Info files, relative</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-Info-files_0040r_007b_002c-searching-all-indices_007d-7">Info files<span class="roman">, searching all indices</span></a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-Info-manual-location-34">Info manual location</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-Info_002c-invoking-1">Info, invoking</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-INFO_005fPRINT_005fCOMMAND_002c-environment-variable-317">INFO_PRINT_COMMAND, environment variable</a>: <a href="#Printing-Nodes">Printing Nodes</a></li>
+<li><a href="#index-infokey-378">infokey</a>: <a href="#Custom-Key-Bindings">Custom Key Bindings</a></li>
+<li><a href="#index-infokey-source-format-385">infokey source format</a>: <a href="#infokey-source-format">infokey source format</a></li>
+<li><a href="#index-infokey_002c-invoking-383">infokey, invoking</a>: <a href="#Invoking-infokey">Invoking infokey</a></li>
+<li><a href="#index-invocation-description_002c-how-to-find-28">invocation description, how to find</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-invoking-Info-2">invoking Info</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-invoking-infokey-382">invoking infokey</a>: <a href="#Invoking-infokey">Invoking infokey</a></li>
+<li><a href="#index-isearch_002dbackward-194"><code>isearch-backward</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-isearch_002dforward-191"><code>isearch-forward</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-ISO-Latin-characters-368">ISO Latin characters</a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-ISO_002dLatin-369"><code>ISO-Latin</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-k_002c-vi_002dlike-operation-104"><code>k, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-keep_002done_002dwindow-241"><code>keep-one-window</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-key-bindings_002c-customizing-377">key bindings, customizing</a>: <a href="#Custom-Key-Bindings">Custom Key Bindings</a></li>
+<li><a href="#index-keys_002c-describing-323">keys, describing</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-keystrokes_002c-recording-10">keystrokes, recording</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-kill_002dnode-166"><code>kill-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-l-135"><code>l</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-last_002dmenu_002ditem-211"><code>last-menu-item</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-last_002dnode-150"><code>last-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-LEFT-_0028an-arrow-key_0029-55"><code>LEFT (an arrow key)</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-LEFT_002c-in-the-echo-area-254"><code>LEFT, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-Less_002dlike-key-bindings-33">Less-like key bindings</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-LFD_002c-vi_002dlike-operation-98"><code>LFD, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-list_002dvisited_002dnodes-170"><code>list-visited-nodes</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-local-printer-device-319">local printer device</a>: <a href="#Printing-Nodes">Printing Nodes</a></li>
+<li><a href="#index-m-212"><code>m</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-M_002d_0024_002c-vi_002dlike-operation-262"><code>M-$, vi-like operation</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002d_002d-340"><code>M--</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-M_002d0-_0040dots_007b_007d-M_002d9-337"><code>M-0 ... M-9</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-M_002d0_002c-in-the-echo-area_002c-vi_002dlike-operation-259"><code>M-0, in the echo area, vi-like operation</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002d0_002c-vi_002dlike-operation-210"><code>M-0, vi-like operation</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-M_002d1-_0040dots_007b_007d-M_002d9_002c-vi_002dlike-operation-205">M-1 <small class="dots">...</small> M-9, vi-like operation</a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-M_002d_003c-64"><code>M-&lt;</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-M_002d_003e-68"><code>M-&gt;</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-M_002db_002c-in-Info-windows-60"><code>M-b, in Info windows</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-M_002db_002c-in-the-echo-area-268"><code>M-b, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002db_002c-vi_002dlike-operation-66"><code>M-b, vi-like operation</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-M_002dBS_002c-in-the-echo-area-298"><code>M-BS, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002dd_002c-in-the-echo-area-293"><code>M-d, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002dd_002c-vi_002dlike-operation-143"><code>M-d, vi-like operation</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-M_002dDEL_002c-in-the-echo-area-296"><code>M-DEL, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002df_002c-in-Info-windows-57"><code>M-f, in Info windows</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-M_002df_002c-in-the-echo-area-264"><code>M-f, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002df_002c-vi_002dlike-operation-217"><code>M-f, vi-like operation</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-M_002dg_002c-vi_002dlike-operation-227"><code>M-g, vi-like operation</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-M_002dh_002c-in-the-echo-area_002c-vi_002dlike-operation-252"><code>M-h, in the echo area, vi-like operation</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002dh_002c-vi_002dlike-operation-332"><code>M-h, vi-like operation</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-M_002dl_002c-in-the-echo-area_002c-vi_002dlike-operation-256"><code>M-l, in the echo area, vi-like operation</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002dr-72"><code>M-r</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-M_002dSPC_002c-vi_002dlike-operation-81"><code>M-SPC, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-M_002dt_002c-vi_002dlike-operation-140"><code>M-t, vi-like operation</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-M_002dTAB_002c-in-Info-windows-222"><code>M-TAB, in Info windows</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-M_002dTAB_002c-in-the-echo-area-286"><code>M-TAB, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002dv-89"><code>M-v</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-M_002dw_002c-in-the-echo-area_002c-vi_002dlike-operation-265"><code>M-w, in the echo area, vi-like operation</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002dx_002c-in-the-echo-area_002c-vi_002dlike-operation-272"><code>M-x, in the echo area, vi-like operation</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002dX_002c-in-the-echo-area_002c-vi_002dlike-operation-294"><code>M-X, in the echo area, vi-like operation</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-M_002dy_002c-in-the-echo-area-305"><code>M-y, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-menu_002c-following-36">menu, following</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-menu_002c-following_002c-from-inside-Info-164">menu, following, from inside Info</a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-menu_002ddigit-208"><code>menu-digit</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-menu_002ditem-213"><code>menu-item</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-menu_002dsequence-163"><code>menu-sequence</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-move_002dto_002dnext_002dxref-221"><code>move-to-next-xref</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-move_002dto_002dprev_002dxref-223"><code>move-to-prev-xref</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-move_002dto_002dwindow_002dline-73"><code>move-to-window-line</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-moving-the-cursor-38">moving the cursor</a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-n-122"><code>n</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-n_002c-vi_002dlike-operation-184"><code>n, vi-like operation</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-negative-arguments-342">negative arguments</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-NEXT-77"><code>NEXT</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-next_002dindex_002dmatch-200"><code>next-index-match</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-next_002dline-41"><code>next-line</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-next_002dnode-125"><code>next-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-next_002dwindow-232"><code>next-window</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-node_002c-selecting-from-the-command-line-21">node, selecting from the command line</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-nodes_002c-selection-of-121">nodes, selection of</a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-numeric-arguments-334">numeric arguments</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-numeric-arguments_002c-negative-344">numeric arguments, negative</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-O-158"><code>O</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-online-help_002c-using-Info-as-20">online help, using Info as</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-options_002c-command-line-4">options, command line</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-outputting-to-a-file-23">outputting to a file</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-overriding-default-key-bindings-375">overriding default key bindings</a>: <a href="#Custom-Key-Bindings">Custom Key Bindings</a></li>
+<li><a href="#index-p-127"><code>p</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-PageDown-83"><code>PageDown</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-PageUp-115"><code>PageUp</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-prev_002dline-44"><code>prev-line</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-prev_002dnode-129"><code>prev-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-prev_002dwindow-233"><code>prev-window</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-PREVIOUS-88"><code>PREVIOUS</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-print_002dnode-316"><code>print-node</code></a>: <a href="#Printing-Nodes">Printing Nodes</a></li>
+<li><a href="#index-printing-315">printing</a>: <a href="#Printing-Nodes">Printing Nodes</a></li>
+<li><a href="#index-printing-characters_002c-in-the-echo-area-284"><code>printing characters, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-printing-nodes-to-the-local-printer-318">printing nodes to the local printer</a>: <a href="#Printing-Nodes">Printing Nodes</a></li>
+<li><a href="#index-q-351"><code>q</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-quit-354"><code>quit</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-quitting-350">quitting</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-r-216"><code>r</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-redraw_002ddisplay-118"><code>redraw-display</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-relative-Info-file-names-13">relative Info file names</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-remembering-user-keystrokes-11">remembering user keystrokes</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-repeated-search-186">repeated search</a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-replaying-recorded-keystrokes-26">replaying recorded keystrokes</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-RET_002c-in-Info-windows-226"><code>RET, in Info windows</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-RET_002c-in-the-echo-area-279"><code>RET, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-RET_002c-vi_002dlike-operation-97"><code>RET, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-RIGHT-_0028an-arrow-key_0029-52"><code>RIGHT (an arrow key)</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-RIGHT_002c-in-the-echo-area-251"><code>RIGHT, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-S-179"><code>S</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-s-174"><code>s</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-screen_002c-changing-the-height-of-356">screen, changing the height of</a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-scroll_002dbackward-87"><code>scroll-backward</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-scroll_002dbackward_002dpage_002donly-92"><code>scroll-backward-page-only</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-scroll_002dbackward_002dpage_002donly_002dset_002dwindow-94"><code>scroll-backward-page-only-set-window</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-scroll_002dbehavior-370"><code>scroll-behavior</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-scroll_002dforward-76"><code>scroll-forward</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-scroll_002dforward_002dpage_002donly-82"><code>scroll-forward-page-only</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-scroll_002dforward_002dpage_002donly_002dset_002dwindow-85"><code>scroll-forward-page-only-set-window</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-scroll_002dhalf_002dscreen_002ddown-110"><code>scroll-half-screen-down</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-scroll_002dhalf_002dscreen_002dup-113"><code>scroll-half-screen-up</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-scroll_002dother_002dwindow-243"><code>scroll-other-window</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-scroll_002dstep-371"><code>scroll-step</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-scrolling-74">scrolling</a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-scrolling-through-node-structure-114">scrolling through node structure</a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-search-176"><code>search</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-search_002c-and-case_002dsensitivity-202">search, and case-sensitivity</a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-search_002c-case_002dsensitive-181">search, case-sensitive</a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-search_002dbackward-178"><code>search-backward</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-search_002dcase_002dsensitively-180"><code>search-case-sensitively</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-search_002dnext-185"><code>search-next</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-search_002dprevious-189"><code>search-previous</code></a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-searching-173">searching</a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-Searching-all-indices-6">Searching all indices</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-searching_002c-in-the-indices-198">searching, in the indices</a>: <a href="#Searching-Commands">Searching Commands</a></li>
+<li><a href="#index-select_002dreference_002dthis_002dline-228"><code>select-reference-this-line</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-select_002dvisited_002dnode-172"><code>select-visited-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-set_002dscreen_002dheight-355"><code>set-screen-height</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-set_002dvariable-361"><code>set-variable</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-Shift_002dTAB_002c-in-Info-windows-224"><code>Shift-TAB, in Info windows</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-Shift_002dTAB_002c-in-the-echo-area-287"><code>Shift-TAB, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-show_002dfootnotes-358"><code>show-footnotes</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-show_002dindex_002dmatch-372"><code>show-index-match</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-SPC_002c-in-Info-windows-75"><code>SPC, in Info windows</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-SPC_002c-in-the-echo-area-309"><code>SPC, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-speech-synthesizers-29">speech synthesizers</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-split_002dwindow-236"><code>split-window</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-t-139"><code>t</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-TAB_002c-in-Info-windows-220"><code>TAB, in Info windows</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-TAB_002c-in-the-echo-area-308"><code>TAB, in the echo area</code></a>: <a href="#The-Echo-Area">The Echo Area</a></li>
+<li><a href="#index-tile_002dwindows-248"><code>tile-windows</code></a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-tiling-246">tiling</a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-toggle_002dwrap-120"><code>toggle-wrap</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-top_002dnode-141"><code>top-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-u-131"><code>u</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-u_002c-vi_002dlike-operation-111"><code>u, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-universal_002dargument-336"><code>universal-argument</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-UP-_0028an-arrow-key_0029-43"><code>UP (an arrow key)</code></a>: <a href="#Cursor-Commands">Cursor Commands</a></li>
+<li><a href="#index-UP_002c-vi_002dlike-operation-102"><code>UP, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-up_002dline-107"><code>up-line</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-up_002dnode-134"><code>up-node</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-variables_002c-describing-362">variables, describing</a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-variables_002c-setting-360">variables, setting</a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-version-information-31">version information</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-vi_002dlike-key-bindings-32">vi-like key bindings</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-view_002dfile-168"><code>view-file</code></a>: <a href="#Node-Commands">Node Commands</a></li>
+<li><a href="#index-visible_002dbell-373"><code>visible-bell</code></a>: <a href="#Variables">Variables</a></li>
+<li><a href="#index-w_002c-vi_002dlike-operation-93"><code>w, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-Where-is-an-Info-manual_003f-35">Where is an Info manual?</a>: <a href="#Invoking-Info">Invoking Info</a></li>
+<li><a href="#index-where_002dis-325"><code>where-is</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+<li><a href="#index-windows_002c-creating-234">windows, creating</a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-windows_002c-deleting-237">windows, deleting</a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-windows_002c-manipulating-229">windows, manipulating</a>: <a href="#Window-Commands">Window Commands</a></li>
+<li><a href="#index-windows_002c-selecting-230">windows, selecting</a>: <a href="#Basic-Windows">Basic Windows</a></li>
+<li><a href="#index-xref_002ditem-219"><code>xref-item</code></a>: <a href="#Selecting-Xrefs">Selecting Xrefs</a></li>
+<li><a href="#index-y_002c-vi_002dlike-operation-103"><code>y, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-z_002c-vi_002dlike-operation-84"><code>z, vi-like operation</code></a>: <a href="#Scrolling-Commands">Scrolling Commands</a></li>
+<li><a href="#index-ZZ_002c-vi_002dlike-operation-353"><code>ZZ, vi-like operation</code></a>: <a href="#Miscellaneous-Commands">Miscellaneous Commands</a></li>
+ </ul><div class="footnote">
+<hr>
+<a name="texinfo-footnotes-in-document"></a><h4>Footnotes</h4><p class="footnote"><small>[<a name="fn-1" href="#fnd-1">1</a>]</small>
+<span class="file">.info</span>, <span class="file">-info</span>, <span class="file">/index</span>, and <span class="file">.inf</span>.</p>
+
+ <p class="footnote"><small>[<a name="fn-2" href="#fnd-2">2</a>]</small> The MS-DOS version allows for the Info
+extension, such as <code>.inf</code>, and the short compressed file
+extensions, such as <span class="file">.z</span> and <span class="file">.gz</span>, to be merged into a single
+extension, since DOS doesn't allow more than a single dot in the
+basename of a file. Thus, on MS-DOS, if Info looks for <span class="file">bison</span>,
+file names like <span class="file">bison.igz</span> and <span class="file">bison.inz</span> will be found and
+decompressed by <code>gunzip</code>.</p>
+
+ <p class="footnote"><small>[<a name="fn-3" href="#fnd-3">3</a>]</small> Of course, you can specify both the file and node
+in a <code>--node</code> command; but don't forget to escape the open and
+close parentheses and whitespace from the shell as in: <code>info --node
+"(emacs)Buffers"</code>.</p>
+
+ <p class="footnote"><small>[<a name="fn-4" href="#fnd-4">4</a>]</small> Here's a short summary. <kbd>C-</kbd><var>x</var> means
+press the <kbd>CTRL</kbd> key and the key <var>x</var>. <kbd>M-</kbd><var>x</var> means
+press the <kbd>META</kbd> key and the key <var>x</var>. On many terminals th
+<kbd>META</kbd> key is known as the <kbd>ALT</kbd> key. <kbd>SPC</kbd> is the space
+bar. The other keys are usually called by the names imprinted on
+them.</p>
+
+ <p class="footnote"><small>[<a name="fn-5" href="#fnd-5">5</a>]</small> <code>M-x</code> is also a command; it
+invokes <code>execute-extended-command</code>. See <a href="emacs.html#M_002dx">Executing an extended command (the GNU Emacs Manual)</a>, for more detailed
+information.</p>
+
+ <p class="footnote"><small>[<a name="fn-6" href="#fnd-6">6</a>]</small>
+Some people are used to calling these operations <dfn>cut</dfn> and
+<dfn>paste</dfn>, respectively.</p>
+
+ <p class="footnote"><small>[<a name="fn-7" href="#fnd-7">7</a>]</small> Due to the limitations of
+DOS filesystems, the MS-DOS version of Info looks for a file
+<span class="file">_info</span> instead. If the <span class="env">HOME</span> variable is not defined, Info
+additionally looks in the current directory.</p>
+
+ <p class="footnote"><small>[<a name="fn-8" href="#fnd-8">8</a>]</small> This file is named <span class="file">_infokey</span> in
+the MS-DOS version, and is looked for in the current directory if
+<span class="env">HOME</span> is undefined.</p>
+
+ <p><hr></div>
+
+</body></html>
+
diff --git a/Master/texmf/doc/texinfo/info-stnd.pdf b/Master/texmf/doc/texinfo/info-stnd.pdf
new file mode 100644
index 00000000000..b12ac9057e7
--- /dev/null
+++ b/Master/texmf/doc/texinfo/info-stnd.pdf
Binary files differ
diff --git a/Master/texmf/doc/texinfo/info.html b/Master/texmf/doc/texinfo/info.html
new file mode 100644
index 00000000000..c9c89eb97d9
--- /dev/null
+++ b/Master/texmf/doc/texinfo/info.html
@@ -0,0 +1,1534 @@
+<html lang="en">
+<head>
+<title>Info</title>
+<meta http-equiv="Content-Type" content="text/html">
+<meta name="description" content="Info">
+<meta name="generator" content="makeinfo 4.7">
+<link title="Top" rel="top" href="#Top">
+<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
+<!--
+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.
+
+ 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 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 license is included in the section entitled
+ "GNU Free Documentation License" in the Emacs manual.
+
+ (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."
+
+ This document is part of a collection distributed under the GNU
+ Free Documentation License. If you want to distribute this
+ document separately from the collection, you can do so by adding a
+ copy of the license to the document, as described in section 6 of
+ the license.
+ -->
+<meta http-equiv="Content-Style-Type" content="text/css">
+<style type="text/css"><!--
+ pre.display { font-family:inherit }
+ pre.format { font-family:inherit }
+ pre.smalldisplay { font-family:inherit; font-size:smaller }
+ pre.smallformat { font-family:inherit; font-size:smaller }
+ pre.smallexample { font-size:smaller }
+ pre.smalllisp { font-size:smaller }
+ span.sc { font-variant:small-caps }
+ span.roman { font-family: serif; font-weight: normal; }
+--></style>
+</head>
+<body>
+<h1 class="settitle">Info</h1>
+ <div class="contents">
+<h2>Table of Contents</h2>
+<ul>
+<li><a name="toc_Top" href="#Top">Info: An Introduction</a>
+<li><a name="toc_Getting-Started" href="#Getting-Started">1 Getting Started</a>
+<ul>
+<li><a href="#Help_002dSmall_002dScreen">1.1 Starting Info on a Small Screen</a>
+<li><a href="#Help">1.2 How to use Info</a>
+<li><a href="#Help_002dP">1.3 Returning to the Previous node</a>
+<li><a href="#Help_002d_005eL">1.4 The Space, DEL, B and ^L commands</a>
+<li><a href="#Help_002dInv">1.5 Invisible text in Emacs Info</a>
+<ul>
+<li><a href="#Help_002d_005d">1.5.1 The <kbd>]</kbd> and <kbd>[</kbd> commands</a>
+</li></ul>
+<li><a href="#Help_002dM">1.6 Menus and the <kbd>m</kbd> command</a>
+<ul>
+<li><a href="#Help_002dFOO">1.6.1 The <kbd>u</kbd> command</a>
+</li></ul>
+<li><a href="#Help_002dXref">1.7 Following Cross-References</a>
+<li><a href="#Help_002dInt">1.8 Some intermediate Info commands</a>
+</li></ul>
+<li><a name="toc_Expert-Info" href="#Expert-Info">2 Info for Experts</a>
+<ul>
+<li><a href="#Advanced">2.1 Advanced Info Commands</a>
+<li><a href="#Info-Search">2.2 How to search Info documents for specific subjects</a>
+<li><a href="#Add">2.3 Adding a new node to Info</a>
+<li><a href="#Menus">2.4 How to Create Menus</a>
+<li><a href="#Cross_002drefs">2.5 Creating Cross References</a>
+<ul>
+<li><a href="#Help_002dCross">2.5.1 The node reached by the cross reference in Info</a>
+</li></ul>
+<li><a href="#Help_002dQ">2.6 Quitting Info</a>
+<li><a href="#Tags">2.7 Tags Tables for Info Files</a>
+<li><a href="#Checking">2.8 Checking an Info File</a>
+<li><a href="#Emacs-Info-Variables">2.9 Emacs Info-mode Variables</a>
+</li></ul>
+<li><a name="toc_Creating-an-Info-File" href="#Creating-an-Info-File">3 Creating an Info File from a Texinfo File</a>
+<li><a name="toc_Index" href="#Index">Index</a>
+</li></ul>
+</div>
+
+
+
+<div class="node">
+<p><hr>
+<a name="Top"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Getting-Started">Getting Started</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#dir">(dir)</a>
+<br>
+</div>
+
+<h2 class="unnumbered">Info: An Introduction</h2>
+
+<p>The GNU Project distributes most of its on-line manuals in the
+<dfn>Info format</dfn>, which you read using an <dfn>Info reader</dfn>. You are
+probably using an Info reader to read this now.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Getting-Started">Getting Started</a>: Getting started using an Info reader.
+<li><a accesskey="2" href="#Expert-Info">Expert Info</a>: Info commands for experts.
+<li><a accesskey="3" href="#Creating-an-Info-File">Creating an Info File</a>: How to make your own Info file.
+<li><a accesskey="4" href="#Index">Index</a>: An index of topics, commands, and variables.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Getting-Started"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Expert-Info">Expert Info</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Top">Top</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h2 class="chapter">1 Getting Started</h2>
+
+<p>This first part of the 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.
+
+ <p>This manual is primarily designed for browsing with an Info reader
+program on a computer, so that you can try Info commands while reading
+about them. Reading it on paper or with an HTML browser is less
+effective, since you must take it on faith that the commands described
+really do what the manual says. By all means go through this manual
+now that you have it; but please try going through the on-line version
+as well.
+
+ <p><a name="index-Info-reader_002c-how-to-invoke-1"></a><a name="index-entering-Info-2"></a>There are two ways of looking at the online version of this manual:
+
+ <ol type=1 start=1>
+<li>Type <code>info</code> at your shell's command line. This approach uses a
+stand-alone program designed just to read Info files.
+
+ <li>Type <code>emacs</code> at the command line; then type <kbd>C-h i</kbd>
+(<kbd>Control-h</kbd>, followed by <kbd>i</kbd>). This approach uses the Info
+mode of the Emacs program, an editor with many other capabilities.
+ </ol>
+
+ <p>In either case, then type <kbd>mInfo</kbd> (just the letters), followed by
+&lt;RET&gt;&mdash;the &ldquo;Return&rdquo; or &ldquo;Enter&rdquo; key. At this point, you should
+be ready to follow the instructions in this manual as you read them on
+the screen.
+<!-- FIXME! (pesch@cygnus.com, 14 dec 1992) -->
+<!-- Is it worth worrying about what-if the beginner goes to somebody -->
+<!-- else's Emacs session, which already has an Info running in the middle -->
+<!-- of something-in which case these simple instructions won't work? -->
+
+<ul class="menu">
+<li><a accesskey="1" href="#Help_002dSmall_002dScreen">Help-Small-Screen</a>: Starting Info on a Small Screen
+<li><a accesskey="2" href="#Help">Help</a>: How to use Info
+<li><a accesskey="3" href="#Help_002dP">Help-P</a>: Returning to the Previous node
+<li><a accesskey="4" href="#Help_002d_005eL">Help-^L</a>: The Space, DEL, B and ^L commands.
+<li><a accesskey="5" href="#Help_002dInv">Help-Inv</a>: Invisible text in Emacs Info.
+<li><a accesskey="6" href="#Help_002dM">Help-M</a>: Menus
+<li><a accesskey="7" href="#Help_002dXref">Help-Xref</a>: Following cross-references
+<li><a accesskey="8" href="#Help_002dInt">Help-Int</a>: Some intermediate Info commands
+<li><a accesskey="9" href="#Help_002dQ">Help-Q</a>: Quitting Info
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Help_002dSmall_002dScreen"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Help">Help</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Getting-Started">Getting Started</a>
+<br>
+</div>
+
+<h3 class="section">1.1 Starting Info on a Small Screen</h3>
+
+<p>(In Info, you only see this section if your terminal has a small
+number of lines; most readers pass by it without seeing it.)
+
+<p><a name="index-small-screen_002c-moving-around-3"></a>Since your terminal has a relatively small number of lines on its
+screen, it is necessary to give you special advice at the beginning.
+
+ <p>If you see the text <span class="samp">--All----</span> near the bottom right corner
+of the screen, it means the entire text you are looking at fits on the
+screen. If you see <span class="samp">--Top----</span> instead, it means that there is
+more text below that does not fit. To move forward through the text
+and see another screen full, press &lt;SPC&gt;, the Space bar. To move
+back up, press the key labeled <span class="samp">Backspace</span> or <span class="samp">DEL</span> (on some
+keyboards, this key might be labeled <span class="samp">Delete</span>).
+
+<div class="node">
+<p><hr>
+<a name="Help"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Help_002dP">Help-P</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Help_002dSmall_002dScreen">Help-Small-Screen</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Getting-Started">Getting Started</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">1.2 How to use Info</h3>
+
+<p>You are talking to the program Info, for reading documentation.
+
+ <p>There are two ways to use Info: from within Emacs or as a
+stand-alone reader that you can invoke from a shell using the command
+<span class="command">info</span>.
+
+ <p><a name="index-node_002c-in-Info-documents-4"></a> Right now you are looking at one <dfn>Node</dfn> of Information.
+A node contains text describing a specific topic at a specific
+level of detail. This node's topic is &ldquo;how to use Info&rdquo;. The mode
+line says that this is node <span class="samp">Help</span> in the file <span class="file">info</span>.
+
+ <p><a name="index-header-of-Info-node-5"></a> The top line of a node is its <dfn>header</dfn>. This node's header
+(look at it now) says that the <span class="samp">Next</span> node after this one is the
+node called <span class="samp">Help-P</span>. 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
+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.
+
+ <p>Besides a <span class="samp">Next</span>, a node can have a <span class="samp">Previous</span> or an
+<span class="samp">Up</span> links, or both. As you can see, this node has all of these
+links.
+
+ <p><a name="index-n-_0040r_007b_0028Info-mode_0029_007d-6"></a> Now it is time to move on to the <span class="samp">Next</span> node, named <span class="samp">Help-P</span>.
+
+<pre class="format">&gt;&gt; Type <kbd>n</kbd> to move there. Type just one character;
+ do not type the quotes and do not type a &lt;RET&gt; afterward.
+</pre>
+ <p class="noindent"><span class="samp">&gt;&gt;</span> in the margin means it is really time to try a command.
+
+<pre class="format">&gt;&gt; If you are in Emacs and have a mouse, and if you already practiced
+ typing <kbd>n</kbd> to get to the next node, click now with the middle
+ mouse button on the <span class="samp">Next</span> link to do the same &ldquo;the mouse way&rdquo;.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Help_002dP"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Help_002d_005eL">Help-^L</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Help">Help</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Getting-Started">Getting Started</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">1.3 Returning to the Previous node</h3>
+
+<p><a name="index-p-_0040r_007b_0028Info-mode_0029_007d-7"></a>This node is called <span class="samp">Help-P</span>. The <span class="samp">Previous</span> node, as you see,
+is <span class="samp">Help</span>, which is the one you just came from using the <kbd>n</kbd>
+command. Another <kbd>n</kbd> command now would take you to the next
+node, <span class="samp">Help-^L</span>.
+
+<pre class="format">&gt;&gt; But do not type <kbd>n</kbd> yet. First, try the <kbd>p</kbd> command,
+ or click the middle mouse button on the <span class="samp">Prev</span> link. That
+ takes you to the <span class="samp">Previous</span> node. Then use <kbd>n</kbd> to return here.
+</pre>
+ <p>If you read this in Emacs, you will see an <span class="samp">Info</span> item in the
+menu bar, close to its right edge. Clicking the mouse on the
+<span class="samp">Info</span> menu-bar item opens a menu of commands which include
+<span class="samp">Next</span> and <span class="samp">Prev</span> (and also some others which you didn't yet
+learn about).
+
+ <p>This all probably seems insultingly simple so far, but <em>please
+don't</em> start skimming. Things will get complicated soon enough!
+Also, please do not try a new command until you are told it is time
+to. You could make Info skip past an important warning that was
+coming up.
+
+<pre class="format">&gt;&gt; Now do an <kbd>n</kbd>, or click the middle mouse button on the <span class="samp">Next</span>
+ link, to get to the node <span class="samp">Help-^L</span> and learn more.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Help_002d_005eL"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Help_002dInv">Help-Inv</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Help_002dP">Help-P</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Getting-Started">Getting Started</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">1.4 The Space, DEL, B and ^L commands</h3>
+
+<p>This node's mode line tells you that you are now at node
+<span class="samp">Help-^L</span>, and the header line tells you that <kbd>p</kbd> would get
+you back to <span class="samp">Help-P</span>. The node's title is highlighted and may be
+underlined as well; it says what the node is about.
+
+ <p>This is a big node and it does not all fit on your display screen.
+You can tell that there is more that is not visible because you
+can see the string <span class="samp">--Top-----</span> rather than <span class="samp">--All----</span> near
+the bottom right corner of the screen.
+
+ <p><a name="index-SPC-_0040r_007b_0028Info-mode_0029_007d-8"></a><a name="index-DEL-_0040r_007b_0028Info-mode_0029_007d-9"></a><a name="index-BACKSPACE-_0040r_007b_0028Info-mode_0029_007d-10"></a><a name="index-Info_002dscroll_002dup-11"></a><a name="index-Info_002dscroll_002ddown-12"></a> The &lt;SPC&gt;, &lt;BACKSPACE&gt; (or &lt;DEL&gt;)<a rel="footnote" href="#fn-1" name="fnd-1"><sup>1</sup></a> and <kbd>b</kbd> commands exist to
+allow you to &ldquo;move around&rdquo; in a node that does not all fit on the
+screen at once. &lt;SPC&gt; moves forward, to show what was below the
+bottom of the screen. &lt;DEL&gt; or &lt;BACKSPACE&gt; moves backward, to
+show what was above the top of the screen (there is not anything above
+the top until you have typed some spaces).
+
+<pre class="format">&gt;&gt; Now try typing a &lt;SPC&gt; (afterward, type a &lt;BACKSPACE&gt; to
+ return here).
+</pre>
+ <p>When you type the &lt;SPC&gt;, the two lines that were at the bottom of
+the screen appear at the top, followed by more lines. &lt;DEL&gt; or
+&lt;BACKSPACE&gt; takes the two lines from the top and moves them to the
+bottom, <em>usually</em>, but if there are not a full screen's worth of
+lines above them they may not make it all the way to the bottom.
+
+ <p>If you are reading this in Emacs, note that the header line is
+always visible, never scrolling off the display. That way, you can
+always see the <span class="samp">Next</span>, <span class="samp">Prev</span>, and <span class="samp">Up</span> links, and you
+can conveniently go to one of these links at any time by
+clicking the middle mouse button on the link.
+
+ <p><a name="index-reading-Info-documents-top-to-bottom-13"></a><a name="index-Info-documents-as-tutorials-14"></a> &lt;SPC&gt; and &lt;DEL&gt; not only move forward and backward through
+the current node. They also move between nodes. &lt;SPC&gt; at the end
+of a node moves to the next node; &lt;DEL&gt; (or &lt;BACKSPACE&gt;) at
+the beginning of a node moves to the previous node. In effect, these
+commands scroll through all the nodes in an Info file as a single
+logical sequence. You can read an entire manual top to bottom by just
+typing &lt;SPC&gt;, and move backward through the entire manual from
+bottom to top by typing &lt;DEL&gt; (or &lt;BACKSPACE&gt;).
+
+ <p>In this sequence, a node's subnodes appear following their parent.
+If a node has a menu, &lt;SPC&gt; takes you into the subnodes listed in
+the menu, one by one. Once you reach the end of a node, and have seen
+all of its subnodes, &lt;SPC&gt; takes you to the next node or to the
+parent's next node.
+
+ <p><a name="index-PAGEUP-_0040r_007b_0028Info-mode_0029_007d-15"></a><a name="index-PAGEDOWN-_0040r_007b_0028Info-mode_0029_007d-16"></a> Many keyboards nowadays have two scroll keys labeled <span class="samp">PageUp</span>
+and <span class="samp">PageDown</span> (or maybe <span class="samp">Prior</span> and <span class="samp">Next</span>). If your
+keyboard has these keys, you can use them to move forward and backward
+through the text of one node, like &lt;SPC&gt; and &lt;BACKSPACE&gt; (or
+&lt;DEL&gt;). However, &lt;PAGEUP&gt; and &lt;PAGEDOWN&gt; keys never
+scroll beyond the beginning or the end of the current node.
+
+ <p><a name="index-C_002dl-_0040r_007b_0028Info-mode_0029_007d-17"></a> If your screen is ever garbaged, you can tell Info to display it
+again by typing <kbd>C-l</kbd> (<kbd>Control-L</kbd>, that is&mdash;hold down
+&lt;CTRL&gt; and type <kbd>L</kbd> or <kbd>l</kbd>).
+
+<pre class="format">&gt;&gt; Type <kbd>C-l</kbd> now.
+</pre>
+ <p><a name="index-b-_0040r_007b_0028Info-mode_0029_007d-18"></a> To move back to the beginning of the node you are on, you can type
+the &lt;BACKSPACE&gt; key (or &lt;DEL&gt;) many times. You can also type
+<kbd>b</kbd> just once. <kbd>b</kbd> stands for &ldquo;beginning.&rdquo;
+
+<pre class="format">&gt;&gt; Try that now. (We have put in enough verbiage to push this past
+ the first screenful, but screens are so big nowadays that perhaps it
+ isn't enough. You may need to shrink your Emacs or Info window.)
+ Then come back, by typing &lt;SPC&gt; one or more times.
+</pre>
+ <p>If your screen is very tall, all of this node might fit at once. In
+that case, <kbd>b</kbd> won't do anything. But you could observe the
+effect of the <kbd>b</kbd> key if you use a smaller window.
+
+ <p><a name="index-_003f-_0040r_007b_0028Info-mode_0029_007d-19"></a><a name="index-Info_002dsummary-20"></a> You have just learned a considerable number of commands. If you
+want to use one but have trouble remembering which, you should type
+a <kbd>?</kbd> (in Emacs it runs the <code>Info-summary</code> command) which
+displays a brief list of commands. When you are finished looking at
+the list, make it go away by typing a &lt;SPC&gt; repeatedly.
+
+<pre class="format">&gt;&gt; Type a &lt;?&gt; now. Press &lt;SPC&gt; to see consecutive screenfuls of
+ the list until finished. Then type &lt;SPC&gt; several times. If
+ you are using Emacs, the help will then go away automatically.
+</pre>
+ <p>(If you are using the stand-alone Info reader, type <kbd>C-x 0</kbd> to
+return here, that is&mdash;press and hold &lt;CTRL&gt;, type an <kbd>x</kbd>,
+then release &lt;CTRL&gt; and <kbd>x</kbd>, and press <kbd>0</kbd>&mdash;a zero, not
+the letter &ldquo;o&rdquo;.)
+
+ <p>From now on, you will encounter large nodes without warning, and
+will be expected to know how to use &lt;SPC&gt; and &lt;BACKSPACE&gt; to
+move around in them without being told. Since not all terminals have
+the same size screen, it would be impossible to warn you anyway.
+
+<pre class="format">&gt;&gt; Now type <kbd>n</kbd>, or click the middle mouse button on the <span class="samp">Next</span> link,
+ to visit the next node.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Help_002dInv"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Help_002dM">Help-M</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Help_002d_005eL">Help-^L</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Getting-Started">Getting Started</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">1.5 Invisible text in Emacs Info</h3>
+
+<p>Before discussing menus, we need to make some remarks that are only
+relevant to users reading Info using Emacs. Users of the stand-alone
+version can skip this node by typing <kbd>]</kbd> now.
+
+ <p><a name="index-invisible-text-in-Emacs-21"></a> In Emacs, certain text that appears in the stand-alone version is
+normally hidden, technically because it has the <span class="samp">invisibility</span>
+property. Invisible text is really a part of the text. It becomes
+visible (by default) after killing and yanking, it appears in printed
+output, it gets saved to file just like any other text, and so on.
+Thus it is useful to know it is there.
+
+ <p><a name="index-visible_002dmode-22"></a>You can make invisible text visible by using the command <kbd>M-x
+visible-mode</kbd>. Visible mode is a minor mode, so using the command a
+second time will make the text invisible again. Watch the effects of
+the command on the &ldquo;menu&rdquo; below and the top line of this node.
+
+ <p>If you prefer to <em>always</em> see the invisible text, you can set
+<code>Info-hide-note-references</code> to <code>nil</code>. Enabling Visible mode
+permanently is not a real alternative, because Emacs Info also uses
+(although less extensively) another text property that can change the
+text being displayed, the <span class="samp">display</span> property. Only the
+invisibility property is affected by Visible mode. When, in this
+tutorial, we refer to the <span class="samp">Emacs</span> behavior, we mean the
+<em>default</em> Emacs behavior.
+
+ <p>Now type <kbd>]</kbd>, to learn about the <kbd>]</kbd> and <kbd>[</kbd> commands.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Help_002d_005d">]</a>: Node telling about ].
+<li><a accesskey="2" href="#Help_002d_005d">stuff</a>: Same node.
+<li><a accesskey="3" href="#Help_002d_005d">Help-]</a>: Yet again, same node.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Help_002d_005d"></a>Up:&nbsp;<a rel="up" accesskey="u" href="#Help_002dInv">Help-Inv</a>
+<br>
+</div>
+
+<h4 class="subsection">1.5.1 The <kbd>]</kbd> and <kbd>[</kbd> commands</h4>
+
+<p>If you type <kbd>n</kbd> now, you get an error message saying that this
+node has no next node. Similarly, if you type <kbd>p</kbd>, the error
+message tells you that there is no previous node. (The exact message
+depends on the Info reader you use.) This is because <kbd>n</kbd> and
+<kbd>p</kbd> carry you to the next and previous node <em>at the same
+level</em>. The present node is contained in a menu (see next) of the
+node you came from, and hence is considered to be at a lower level.
+It is the only node in the previous node's menu (even though it was
+listed three times). Hence it has no next or previous node that
+<kbd>n</kbd> or <kbd>p</kbd> could move to.
+
+ <p>If you systematically move through a manual by typing <kbd>n</kbd>, you run
+the risk of skipping many nodes. You do not run this risk if you
+systematically use <kbd>&lt;SPC&gt;</kbd>, because, when you scroll to the
+bottom of a node and type another <kbd>&lt;SPC&gt;</kbd>, then this carries
+you to the following node in the manual <em>regardless of level</em>.
+If you immediately want to go to that node, without having to scroll
+to the bottom of the screen first, you can type <kbd>]</kbd>.
+
+ <p>Similarly, <kbd>&lt;BACKSPACE&gt;</kbd> carries you to the preceding node
+regardless of level, after you scrolled to the beginning of the
+present node. If you want to go to the preceding node immediately,
+you can type <kbd>[</kbd>.
+
+ <p>For instance, typing this sequence will come back here in three steps:
+<kbd>[ n [</kbd>. To do the same backward, type <kbd>] p ]</kbd>.
+
+ <p>Now type <kbd>]</kbd> to go to the next node and learn about menus.
+
+<div class="node">
+<p><hr>
+<a name="Help_002dM"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Help_002dXref">Help-Xref</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Help_002dInv">Help-Inv</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Getting-Started">Getting Started</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">1.6 Menus and the <kbd>m</kbd> command</h3>
+
+<p><a name="index-menus-in-an-Info-document-23"></a><a name="index-Info-menus-24"></a> With only the <kbd>n</kbd> (next), <kbd>p</kbd> (previous), <kbd>&lt;SPC&gt;</kbd>,
+<kbd>&lt;BACKSPACE&gt;</kbd>, <kbd>]</kbd> and <kbd>[</kbd> commands for moving between
+nodes, nodes are restricted to a linear sequence. Menus allow a
+branching structure. A menu is a list of other nodes you can move to.
+It is actually just part of the text of the node formatted specially
+so that Info can interpret it. The beginning of a menu is always
+identified by a line which starts with <span class="samp">*&nbsp;Menu:</span><!-- /@w -->. A node
+contains a menu if and only if it has a line in it which starts that
+way. The only menu you can use at any moment is the one in the node
+you are in. To use a menu in any other node, you must move to that
+node first.
+
+ <p>After the start of the menu, each line that starts with a <span class="samp">*</span>
+identifies one subtopic. The line usually contains a brief name for
+the subtopic (followed by a <span class="samp">:</span>, normally hidden in Emacs), the
+name of the node that talks about that subtopic (again, normally
+hidden in Emacs), and optionally some further description of the
+subtopic. Lines in the menu that do not start with a <span class="samp">*</span> have no
+special meaning&mdash;they are only for the human reader's benefit and do
+not define additional subtopics. Here is an example:
+
+<pre class="example"> * Foo: Node about FOO. This tells about FOO.
+</pre>
+ <p>The subtopic name is Foo, and the node describing it is <span class="samp">Node
+about FOO</span>. The rest of the line is just for the reader's
+Information. [[ But this line is not a real menu item, simply because
+there is no line above it which starts with <span class="samp">*&nbsp;Menu:</span><!-- /@w -->. Also,
+in a real menu item, the <span class="samp">*</span> would appear at the very start of
+the line. This is why the &ldquo;normally hidden&rdquo; text in Emacs, namely
+<span class="samp">: Node about FOO.</span>, is actually visible in this example, even
+when Visible mode is off.]]
+
+ <p>When you use a menu to go to another node (in a way that will be
+described soon), what you specify is the subtopic name, the first
+thing in the menu line. Info uses it to find the menu line, extracts
+the node name from it, and goes to that node. The reason that there
+is both a subtopic name and a node name is that the node name must be
+meaningful to the computer and may therefore have to be ugly looking.
+The subtopic name can be chosen just to be convenient for the user to
+specify. Often the node name is convenient for the user to specify
+and so both it and the subtopic name are the same. There is an
+abbreviation for this:
+
+<pre class="example"> * Foo:: This tells about FOO.
+</pre>
+ <p class="noindent">This means that the subtopic name and node name are the same; they are
+both <span class="samp">Foo</span>. (The <span class="samp">::</span> is normally hidden in Emacs.)
+
+<pre class="format">&gt;&gt; Now use &lt;SPC&gt; to find the menu in this node, then come back to
+ the front with a <kbd>b</kbd> and some &lt;SPC&gt;s. As you see, a menu is
+ actually visible in its node. If you cannot find a menu in a node
+ by looking at it, then the node does not have a menu and the
+ <kbd>m</kbd> command is not available.
+</pre>
+ <p>If you keep typing &lt;SPC&gt; once the menu appears on the screen, it
+will move to another node (the first one in the menu). If that
+happens, type &lt;BACKSPACE&gt; to come back.
+
+ <p><a name="index-m-_0040r_007b_0028Info-mode_0029_007d-25"></a> The command to go to one of the subnodes is <kbd>m</kbd>. This is very
+different from the commands you have used: it is a command that
+prompts you for more input.
+
+ <p>The Info commands you know do not need additional input; when you
+type one of them, Info processes it instantly and then is ready for
+another command. The <kbd>m</kbd> command is different: it needs to know
+the <dfn>name of the subtopic</dfn>. Once you have typed <kbd>m</kbd>, Info
+tries to read the subtopic name.
+
+ <p>Now, in the stand-alone Info, look for the line containing many
+dashes near the bottom of the screen. (This is the stand-alone
+equivalent for the mode line in Emacs.) There is one more line
+beneath that one, but usually it is blank. (In Emacs, this is the
+echo area.) When it is blank, Info is ready for a command, such as
+<kbd>n</kbd> or <kbd>b</kbd> or &lt;SPC&gt; or <kbd>m</kbd>. If that line contains
+text ending in a colon, it means Info is reading more input for the
+last command. You can't type an Info command then, because Info is
+trying to read input, not commands. You must either give the input
+and finish the command you started, or type <kbd>Control-g</kbd> to cancel
+the command. When you have done one of those things, the input entry
+line becomes blank again. Then you can type Info commands again.
+
+ <p><a name="index-Info_002dmenu-26"></a> The command to go to a subnode via a menu is <kbd>m</kbd>. After you type
+the <kbd>m</kbd>, the line at the bottom of the screen says <span class="samp">Menu item: </span>.
+You must then type the name of the subtopic you want, and end it with
+a &lt;RET&gt;. In Emacs, <kbd>m</kbd> runs the command <code>Info-menu</code>.
+
+ <p><a name="index-abbreviating-Info-subnodes-27"></a> You can abbreviate the subtopic name. If the abbreviation is not
+unique, the first matching subtopic is chosen. Some menus put
+the shortest possible abbreviation for each subtopic name in capital
+letters, so you can see how much you need to type. It does not
+matter whether you use upper case or lower case when you type the
+subtopic. You should not put any spaces at the end, or inside of the
+item name, except for one space where a space appears in the item in
+the menu.
+
+ <p><a name="index-completion-of-Info-node-names-28"></a> You can also use the <dfn>completion</dfn> feature to help enter the
+subtopic name. If you type the &lt;TAB&gt; key after entering part of a
+name, it will fill in more of the name&mdash;as much as Info can deduce
+from the part you have entered.
+
+ <p>If you move the cursor to one of the menu subtopic lines, then you do
+not need to type the argument: you just type a &lt;RET&gt;, and it
+stands for the subtopic of the line you are on. You can also click
+the middle mouse button directly on the subtopic line to go there.
+
+ <p>Here is a menu to give you a chance to practice. This menu gives you
+three ways of going to one place, Help-FOO:
+
+<ul class="menu">
+<li><a accesskey="1" href="#Help_002dFOO">Foo</a>: A node you can visit for fun.
+<li><a accesskey="2" href="#Help_002dFOO">Bar</a>: We have made two ways to get to the same place.
+<li><a accesskey="3" href="#Help_002dFOO">Help-FOO</a>: And yet another!
+</ul>
+
+ <p>(Turn Visible mode on if you are using Emacs.)
+
+<pre class="format">&gt;&gt; Now type just an <kbd>m</kbd> and see what happens:
+</pre>
+ <p>Now you are &ldquo;inside&rdquo; an <kbd>m</kbd> command. Commands cannot be used
+now; the next thing you will type must be the name of a subtopic.
+
+ <p>You can change your mind about doing the <kbd>m</kbd> by typing
+<kbd>Control-g</kbd>.
+
+<pre class="format">&gt;&gt; Try that now; notice the bottom line clear.
+</pre>
+ <pre class="format">&gt;&gt; Then type another <kbd>m</kbd>.
+</pre>
+ <pre class="format">&gt;&gt; Now type <kbd>BAR</kbd>, the item name. Do not type &lt;RET&gt; yet.
+</pre>
+ <p>While you are typing the item name, you can use the &lt;DEL&gt; (or
+&lt;BACKSPACE&gt;) key to cancel one character at a time if you make a
+mistake.
+
+<pre class="format">&gt;&gt; Press &lt;DEL&gt; to cancel the <span class="samp">R</span>. You could type another <kbd>R</kbd>
+ to replace it. But you do not have to, since <span class="samp">BA</span> is a valid
+ abbreviation.
+</pre>
+ <pre class="format">&gt;&gt; Now you are ready to go. Type a &lt;RET&gt;.
+</pre>
+ <p>After visiting <span class="samp">Help-FOO</span>, you should return here.
+
+ <p>Another way to move to the menu subtopic lines and between them is
+to type &lt;TAB&gt;. Each time you type a &lt;TAB&gt;, you move to the
+next subtopic line. To move to a previous subtopic line, type
+<kbd>M-&lt;TAB&gt;</kbd>&mdash;that is, press and hold the &lt;META&gt; key and then
+press &lt;TAB&gt;. (On some keyboards, the &lt;META&gt; key might be labeled
+<span class="samp">Alt</span>.)
+
+ <p>Once you move cursor to a subtopic line, press &lt;RET&gt; to go to
+that subtopic's node.
+
+ <p><a name="index-mouse-support-in-Info-mode-29"></a><a name="index-Mouse_002d2-_0040r_007b_0028Info-mode_0029_007d-30"></a> If your terminal supports a mouse, you have yet another way of going
+to a subtopic. Move your mouse pointer to the subtopic line,
+somewhere between the beginning <span class="samp">*</span> and the colon <span class="samp">:</span> which
+ends the subtopic's brief name. You will see the subtopic's name
+change its appearance (usually, its background color will change), and
+the shape of the mouse pointer will change if your platform supports
+that. After a while, if you leave the mouse on that spot, a small
+window will pop up, saying &ldquo;Mouse-2: go to that node&rdquo;, or the same
+message may appear at the bottom of the screen.
+
+ <p><kbd>Mouse-2</kbd> is the second button of your mouse counting from the
+left&mdash;the middle button on a 3-button mouse. (On a 2-button mouse,
+you may have to press both buttons together to &ldquo;press the middle
+button&rdquo;.) The message tells you pressing <kbd>Mouse-2</kbd> with the
+current position of the mouse pointer (on subtopic in the menu) will
+go to that subtopic.
+
+ <p><a name="index-Info_002dmouse_002dfollow_002dnearest_002dnode-31"></a> More generally, <kbd>Mouse-2</kbd> in an Info buffer finds the nearest
+link to another node and goes there. For example, near a cross
+reference it acts like <kbd>f</kbd>, in a menu it acts like <kbd>m</kbd>, on the
+node's header line it acts like <kbd>n</kbd>, <kbd>p</kbd>, or <kbd>u</kbd>, etc. At
+end of the node's text <kbd>Mouse-2</kbd> moves to the next node, or up if
+there's no next node.
+
+<pre class="format">&gt;&gt; Type <kbd>n</kbd> to see more commands.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Help_002dFOO"></a>Up:&nbsp;<a rel="up" accesskey="u" href="#Help_002dM">Help-M</a>
+<br>
+</div>
+
+<h4 class="subsection">1.6.1 The <kbd>u</kbd> command</h4>
+
+<p>Congratulations! This is the node <span class="samp">Help-FOO</span>. It has an <span class="samp">Up</span>
+pointer <span class="samp">Help-M</span>, the node you just came from via the <kbd>m</kbd>
+command. This is the usual convention&mdash;the nodes you reach from a menu
+have <span class="samp">Up</span> nodes that lead back to the menu. Menus move Down in the
+tree, and <span class="samp">Up</span> moves Up. <span class="samp">Previous</span>, on the other hand, is
+usually used to &ldquo;stay on the same level but go backwards&rdquo;.
+
+ <p><a name="index-u-_0040r_007b_0028Info-mode_0029_007d-32"></a><a name="index-Info_002dup-33"></a> You can go back to the node <span class="samp">Help-M</span> by typing the command
+<kbd>u</kbd> for &ldquo;Up&rdquo; (the Emacs command run by <kbd>u</kbd> is
+<code>Info-up</code>). That puts you at the <em>front</em> of the node&mdash;to
+get back to where you were reading you have to type some &lt;SPC&gt;s.
+(Some Info readers, such as the one built into Emacs, put you at the
+same place where you were reading in <span class="samp">Help-M</span>.)
+
+ <p>Another way to go Up is to click <kbd>Mouse-2</kbd> on the <span class="samp">Up</span>
+pointer shown in the header line (provided that you have a mouse).
+
+<pre class="format">&gt;&gt; Now type <kbd>u</kbd> to move back up to <span class="samp">Help-M</span>.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Help_002dXref"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Help_002dInt">Help-Int</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Help_002dM">Help-M</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Getting-Started">Getting Started</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">1.7 Following Cross-References</h3>
+
+<p><a name="index-cross-references-in-Info-documents-34"></a> In Info documentation, you will see many <dfn>cross references</dfn>.
+Cross references look like this: See <a href="#Help_002dCross">Cross</a>. That text
+is a real, live cross reference, whose name is <span class="samp">Cross</span> and which
+points to the node named <span class="samp">Help-Cross</span>. (The node name is hidden
+in Emacs. Do <kbd>M-x visible-mode</kbd> to show or hide it.)
+
+ <p><a name="index-f-_0040r_007b_0028Info-mode_0029_007d-35"></a><a name="index-Info_002dfollow_002dreference-36"></a> There are two ways to follow a cross reference. You can move the
+cursor to it and press &lt;RET&gt;, just as in a menu. &lt;RET&gt;
+follows the cross reference that the cursor is on. Or you can type
+<kbd>f</kbd> and then specify the name of the cross reference (in this
+case, <span class="samp">Cross</span>) as an argument. In Emacs Info, <kbd>f</kbd> runs
+<code>Info-follow-reference</code>,
+
+ <p>In the <kbd>f</kbd> command, you select the cross reference with its
+name, so it does not matter where the cursor was. If the cursor is on
+or near a cross reference, <kbd>f</kbd> suggests that reference name in
+parentheses as the default; typing &lt;RET&gt; will follow that
+reference. However, if you type a different reference name, <kbd>f</kbd>
+will follow the other reference which has that name.
+
+<pre class="format">&gt;&gt; Type <kbd>f</kbd>, followed by <kbd>Cross</kbd>, and then &lt;RET&gt;.
+</pre>
+ <p>As you enter the reference name, you can use the &lt;DEL&gt; (or
+&lt;BACKSPACE&gt;) key to edit your input. If you change your mind
+about following any reference, you can use <kbd>Control-g</kbd> to cancel
+the command. Completion is available in the <kbd>f</kbd> command; you can
+complete among all the cross reference names in the current node by
+typing a &lt;TAB&gt;.
+
+ <p>To get a list of all the cross references in the current node, you
+can type <kbd>?</kbd> after an <kbd>f</kbd>. The <kbd>f</kbd> continues to await a
+cross reference name even after displaying the list, so if you don't
+actually want to follow a reference, you should type a <kbd>Control-g</kbd>
+to cancel the <kbd>f</kbd>.
+
+<pre class="format">&gt;&gt; Type <kbd>f?</kbd> to get a list of the cross references in this node. Then
+ type a <kbd>Control-g</kbd> and see how the <span class="samp">f</span> gives up.
+</pre>
+ <p>The &lt;TAB&gt; and <kbd>M-&lt;TAB&gt;</kbd> key, which move between menu
+items in a menu, also move between cross references outside of menus.
+
+ <p>Sometimes a cross reference (or a node) can lead to another file (in
+other words another &ldquo;manual&rdquo;), or, on occasion, even a file on a
+remote machine (although Info files distributed with Emacs or the
+stand-alone Info avoid using remote links). Such a cross reference
+looks like this: See <a href="texinfo.html#Top">Overview of Texinfo (Texinfo: The GNU Documentation Format)</a>. (After following this link, type
+<kbd>l</kbd> to get back to this node.) Here the name <span class="samp">texinfo</span>
+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</kbd> to show
+or hide it.)
+
+ <p>The remainder of this node applies only to the Emacs version. If
+you use the stand-alone version, you can type <kbd>n</kbd> immediately.
+
+ <p>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</kbd> (see the next node) can have confusing results.
+
+ <p>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 <span class="samp">Overview</span> cross reference above and watch what
+happens.
+
+ <p>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</code> to a value other than t (see <a href="#Emacs-Info-Variables">Emacs Info Variables</a>). 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.
+
+<pre class="format">&gt;&gt; Now type <kbd>n</kbd> to learn more commands.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Help_002dInt"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Help_002dQ">Help-Q</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Help_002dXref">Help-Xref</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Getting-Started">Getting Started</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">1.8 Some intermediate Info commands</h3>
+
+<p>The introductory course is almost over; please continue
+a little longer to learn some intermediate-level commands.
+
+ <p>Most Info files have an index, which is actually a large node
+containing little but a menu. The menu has one menu item for each
+topic listed in the index. (As a special feature, menus for indices
+may also include the line number within the node of the index entry.
+This allows Info readers to go to the exact line of an entry, not just
+the start of the containing node.)
+
+ <p>You can get to the index from the main menu of the file with the
+<kbd>m</kbd> command; then you can use the <kbd>m</kbd> command again in the
+index node to go to the node that describes the topic you want.
+
+ <p>There is also a short-cut Info command, <kbd>i</kbd>, 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.
+See <a href="#Info-Search">Info Search</a>, for a full explanation.
+
+ <p><a name="index-l-_0040r_007b_0028Info-mode_0029_007d-37"></a><a name="index-Info_002dlast-38"></a><a name="index-going-back-in-Info-mode-39"></a> If you have been moving around to different nodes and wish to
+retrace your steps, the <kbd>l</kbd> command (<kbd>l</kbd> for <dfn>last</dfn>) will
+do that, one node-step at a time. As you move from node to node, Info
+records the nodes where you have been in a special history list. The
+<kbd>l</kbd> command revisits nodes in the history list; each successive
+<kbd>l</kbd> command moves one step back through the history.
+
+ <p>In Emacs, <kbd>l</kbd> runs the command <code>Info-last</code>.
+
+<pre class="format">&gt;&gt; Try typing <kbd>p p n</kbd> and then three <kbd>l</kbd>'s, pausing in between
+to see what each <kbd>l</kbd> does. You should wind up right back here.
+</pre>
+ <p>Note the difference between <kbd>l</kbd> and <kbd>p</kbd>: <kbd>l</kbd> moves to
+where <em>you</em> last were, whereas <kbd>p</kbd> always moves to the node
+which the header says is the <span class="samp">Previous</span> node (from this node, the
+<span class="samp">Prev</span> link leads to <span class="samp">Help-Xref</span>).
+
+ <p><a name="index-d-_0040r_007b_0028Info-mode_0029_007d-40"></a><a name="index-Info_002ddirectory-41"></a><a name="index-go-to-Directory-node-42"></a> The <kbd>d</kbd> command (<code>Info-directory</code> in Emacs) gets you
+instantly to the Directory node. This node, which is the first one
+you saw when you entered Info, has a menu which leads (directly or
+indirectly, through other menus), to all the nodes that exist. The
+Directory node lists all the manuals and other Info documents that
+are, or could be, installed on your system.
+
+<pre class="format">&gt;&gt; Try doing a <kbd>d</kbd>, then do an <kbd>l</kbd> to return here (yes,
+ <em>do</em> return).
+</pre>
+ <p><a name="index-t-_0040r_007b_0028Info-mode_0029_007d-43"></a><a name="index-Info_002dtop_002dnode-44"></a><a name="index-go-to-Top-node-45"></a> The <kbd>t</kbd> command moves to the <span class="samp">Top</span> node of the manual.
+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</kbd>
+is <code>Info-top-node</code>.
+
+ <p>Clicking <kbd>Mouse-2</kbd> 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.
+
+<pre class="format">&gt;&gt; Now type <kbd>n</kbd> to see the last node of the course.
+</pre>
+ <p>See <a href="#Expert-Info">Expert Info</a>, for more advanced Info features.
+
+<!-- If a menu appears at the end of this node, remove it. -->
+<!-- It is an accident of the menu updating command. -->
+<div class="node">
+<p><hr>
+<a name="Expert-Info"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Creating-an-Info-File">Creating an Info File</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Getting-Started">Getting Started</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">2 Info for Experts</h2>
+
+<p>This chapter describes various Info commands for experts. (If you
+are using a stand-alone Info reader, there are additional commands
+specific to it, which are documented in several chapters of <a href="info-stnd.html#Top">GNU Info (GNU Info)</a>.)
+
+ <p>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.) See <a href="texinfo.html#Top">Overview of Texinfo (Texinfo: The GNU Documentation Format)</a>.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Advanced">Advanced</a>: Advanced Info commands: g, e, and 1 - 9.
+<li><a accesskey="2" href="#Info-Search">Info Search</a>: How to search Info documents for specific subjects.
+<li><a accesskey="3" href="#Add">Add</a>: Describes how to add new nodes to the hierarchy.
+ Also tells what nodes look like.
+<li><a accesskey="4" href="#Menus">Menus</a>: How to add to or create menus in Info nodes.
+<li><a accesskey="5" href="#Cross_002drefs">Cross-refs</a>: How to add cross-references to Info nodes.
+<li><a accesskey="6" href="#Tags">Tags</a>: How to make tags tables for Info files.
+<li><a accesskey="7" href="#Checking">Checking</a>: Checking an Info File
+<li><a accesskey="8" href="#Emacs-Info-Variables">Emacs Info Variables</a>: Variables modifying the behavior of Emacs Info.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Advanced"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Info-Search">Info Search</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Expert-Info">Expert Info</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.1 Advanced Info Commands</h3>
+
+<p>Here are some more Info commands that make it easier to move around.
+
+<h4 class="subheading"><kbd>g</kbd> goes to a node by name</h4>
+
+<p><a name="index-g-_0040r_007b_0028Info-mode_0029_007d-46"></a><a name="index-Info_002dgoto_002dnode-47"></a><a name="index-go-to-a-node-by-name-48"></a> If you know a node's name, you can go there by typing <kbd>g</kbd>, the
+name, and &lt;RET&gt;. Thus, <kbd>gTop&lt;RET&gt;</kbd> would go to the node
+called <span class="samp">Top</span> in this file. (This is equivalent to <kbd>t</kbd>, see
+<a href="#Help_002dInt">Help-Int</a>.) <kbd>gAdvanced&lt;RET&gt;</kbd> would come back here.
+<kbd>g</kbd> in Emacs runs the command <code>Info-goto-node</code>.
+
+ <p>Unlike <kbd>m</kbd>, <kbd>g</kbd> does not allow the use of abbreviations.
+But it does allow completion, so you can type &lt;TAB&gt; to complete a
+partial node name.
+
+ <p><a name="index-go-to-another-Info-file-49"></a> To go to a node in another file, you can include the file name in the
+node name by putting it at the front, in parentheses. Thus,
+<kbd>g(dir)Top&lt;RET&gt;</kbd> would go to the Info Directory node, which is
+the node <span class="samp">Top</span> in the Info file <span class="file">dir</span>. Likewise,
+<kbd>g(emacs)Top&lt;RET&gt;</kbd> goes to the top node of the Emacs manual.
+
+ <p>The node name <span class="samp">*</span> specifies the whole file. So you can look at
+all of the current file by typing <kbd>g*&lt;RET&gt;</kbd> or all of any
+other file with <kbd>g(</kbd><var>filename</var><kbd>)&lt;RET&gt;</kbd>.
+
+<h4 class="subheading"><kbd>1</kbd> &ndash; <kbd>9</kbd> choose a menu subtopic by its number</h4>
+
+<p><a name="index-1-_0040r_007bthrough_007d-9-_0040r_007b_0028Info-mode_0029_007d-50"></a><a name="index-Info_002dnth_002dmenu_002ditem-51"></a><a name="index-select-_0040var_007bn_007d_0027th-menu-item-52"></a> If you begrudge each character of type-in which your system requires,
+you might like to use the commands <kbd>1</kbd>, <kbd>2</kbd>, <kbd>3</kbd>, <kbd>4</kbd>,
+<small class="dots">...</small>, <kbd>9</kbd>. They are short for the <kbd>m</kbd> command together
+with a name of a menu subtopic. <kbd>1</kbd> goes through the first item
+in the current node's menu; <kbd>2</kbd> goes through the second item, etc.
+In the stand-alone reader, <kbd>0</kbd> goes through the last menu item;
+this is so you need not count how many entries are there. In Emacs,
+the digit keys run the command <code>Info-nth-menu-item</code>.
+
+ <p>If your display supports multiple fonts, colors or underlining, and
+you are using Emacs' Info mode to read Info files, the third, sixth
+and ninth menu items have a <span class="samp">*</span> that stands out, either in color
+or in some other attribute, such as underline; this makes it easy to
+see at a glance which number to use for an item.
+
+ <p>Some terminals don't support either multiple fonts, colors or
+underlining. If you need to actually count items, it is better to use
+<kbd>m</kbd> instead, and specify the name, or use &lt;TAB&gt; to quickly
+move between menu items.
+
+<h4 class="subheading"><kbd>e</kbd> makes Info document editable</h4>
+
+<p><a name="index-e-_0040r_007b_0028Info-mode_0029_007d-53"></a><a name="index-Info_002dedit-54"></a><a name="index-edit-Info-document-55"></a> The Info command <kbd>e</kbd> 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</kbd> to switch back to Info. The <kbd>e</kbd> command is allowed
+only if the variable <code>Info-enable-edit</code> is non-<code>nil</code>.
+
+ <p>The <kbd>e</kbd> command only works in Emacs, where it runs the command
+<code>Info-edit</code>. The stand-alone Info reader doesn't allow you to
+edit the Info file, so typing <kbd>e</kbd> there goes to the end of the
+current node.
+
+<h4 class="subheading"><kbd>M-n</kbd> creates a new independent Info buffer in Emacs</h4>
+
+<p><a name="index-M_002dn-_0040r_007b_0028Info-mode_0029_007d-56"></a><a name="index-clone_002dbuffer-57"></a><a name="index-multiple-Info-buffers-58"></a> If you are reading Info in Emacs, you can select a new independent
+Info buffer in another window by typing <kbd>M-n</kbd>. 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</kbd> runs the Emacs command <code>clone-buffer</code>.)
+
+ <p>In Emacs Info, you can also produce new Info buffers by giving a
+numeric prefix argument to the <kbd>m</kbd> and <kbd>g</kbd> commands. <kbd>C-u
+m</kbd> and <kbd>C-u g</kbd> go to a new node in exactly the same way that
+<kbd>m</kbd> and <kbd>g</kbd> do, but they do so in a new Info buffer which they
+select in another window.
+
+<div class="node">
+<p><hr>
+<a name="Info-Search"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Add">Add</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Advanced">Advanced</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Expert-Info">Expert Info</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.2 How to search Info documents for specific subjects</h3>
+
+<p><a name="index-searching-Info-documents-59"></a><a name="index-Info-document-as-a-reference-60"></a> 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</dfn>, or when it is impractical to
+read the entire manual before you start using the programs it
+describes.
+
+ <p>Info has powerful searching facilities that let you find things
+quickly. You can search either the manual indices or its text.
+
+ <p><a name="index-i-_0040r_007b_0028Info-mode_0029_007d-61"></a><a name="index-Info_002dindex-62"></a> Since most subjects related to what the manual describes should be
+indexed, you should try the index search first. The <kbd>i</kbd> 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>,</kbd> one or more times to go
+through additional index entries which match your subject.
+
+ <p>The <kbd>i</kbd> command finds all index entries which include the string
+you typed <em>as a substring</em>. 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 Emacs shows in the echo area before looking at the node it
+displays.
+
+ <p>Since <kbd>i</kbd> 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 &lt;TAB&gt;). If you want
+to catch index entries that refer to &ldquo;complete&rdquo;, &ldquo;completion&rdquo;, and
+&ldquo;completing&rdquo;, you could type <kbd>icomplet&lt;RET&gt;</kbd>.
+
+ <p>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</kbd> prompts you for a topic. For example, if you
+want to read the description of what the <kbd>C-f</kbd> key does, type
+<kbd>i C - f &lt;RET&gt;</kbd>. Here <kbd>C-f</kbd> are 3 literal characters
+<span class="samp">C</span>, <span class="samp">-</span>, and <span class="samp">f</span>, not the &ldquo;Control-f&rdquo; command key
+you type inside Emacs to run the command bound to <kbd>C-f</kbd>.
+
+ <p>In Emacs, <kbd>i</kbd> runs the command <code>Info-index</code>.
+
+ <p><a name="index-info_002dapropos-63"></a>If you don't know what manual documents something, try the <kbd>M-x
+info-apropos</kbd> 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.
+
+ <p><a name="index-s-_0040r_007b_0028Info-mode_0029_007d-64"></a><a name="index-Info_002dsearch-65"></a> The <kbd>s</kbd> 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</kbd> followed by the string to search for, terminated by
+&lt;RET&gt;. To search for the same string again, just <kbd>s</kbd> followed
+by &lt;RET&gt; 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 <span class="samp">next</span>
+pointers. But normally the two orders are not very different. In any
+case, you can always do a <kbd>b</kbd> to find out what node you have
+reached, if the header is not visible (this can happen, because <kbd>s</kbd>
+puts your cursor at the occurrence of the string, not at the beginning
+of the node).
+
+ <p><a name="index-M_002ds-_0040r_007b_0028Info-mode_0029_007d-66"></a> In Emacs, <kbd>Meta-s</kbd> is equivalent to <kbd>s</kbd>. That is for
+compatibility with other GNU packages that use <kbd>M-s</kbd> for a similar
+kind of search command. Both <kbd>s</kbd> and <kbd>M-s</kbd> run in Emacs the
+command <code>Info-search</code>.
+
+<div class="node">
+<p><hr>
+<a name="Add"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Menus">Menus</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Info-Search">Info Search</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Expert-Info">Expert Info</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.3 Adding a new node to Info</h3>
+
+<p>To add a new topic to the list in the Info directory, you must:
+
+ <ol type=1 start=1>
+<li>Create some nodes, in some file, to document that topic.
+<li>Put that topic in the menu in the directory. See <a href="#Menus">Menu</a>.
+ </ol>
+
+ <p>Usually, the way to create the nodes is with Texinfo (see <a href="texinfo.html#Top">Overview of Texinfo (Texinfo: The GNU Documentation Format)</a>);
+this has the advantage that you can also make a printed manual or HTML
+from them. You would use the <span class="samp">@dircategory</span> and
+<span class="samp">@direntry</span> 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.
+
+ <p><a name="index-node-delimiters-67"></a> The new node can live in an existing documentation file, or in a new
+one. It must have a <span class="samp">^_</span> character before it (invisible to the
+user; this node has one but you cannot see it), and it ends with either
+a <span class="samp">^_</span>, a <span class="samp">^L</span> (&ldquo;formfeed&rdquo;), or the end of file.<a rel="footnote" href="#fn-2" name="fnd-2"><sup>2</sup></a>
+
+ <p>The <span class="samp">^_</span> starting a node must be followed by a newline or a
+<span class="samp">^L</span> newline, after which comes the node's header line. The
+header line must give the node's name (by which Info finds it), and
+state the names of the <span class="samp">Next</span>, <span class="samp">Previous</span>, and <span class="samp">Up</span>
+nodes (if there are any). As you can see, this node's <span class="samp">Up</span> node
+is the node <span class="samp">Expert Info</span>. The <span class="samp">Next</span> node is <span class="samp">Menus</span>.
+
+ <p><a name="index-node-header-line-format-68"></a><a name="index-format-of-node-headers-69"></a> The keywords <dfn>Node</dfn>, <dfn>Next</dfn>, <dfn>Previous</dfn>, and <dfn>Up</dfn>
+may appear in any order, anywhere in the header line, but the
+recommended order is the one in this sentence. Each keyword must be
+followed by a colon, spaces and tabs, and then the appropriate name.
+The name may be terminated with a tab, a comma, or a newline. A space
+does not end it; node names may contain spaces. The case of letters
+in the names is insignificant.
+
+ <p><a name="index-node-name-format-70"></a><a name="index-Directory-node-71"></a> A node name has two forms. A node in the current file is named by
+what appears after the <span class="samp">Node: </span> in that node's first line. For
+example, this node's name is <span class="samp">Add</span>. A node in another file is
+named by <span class="samp">(</span><var>filename</var><span class="samp">)</span><var>node-within-file</var>, as in
+<span class="samp">(info)Add</span> for this node. If the file name starts with &ldquo;./&rdquo;,
+then it is relative to the current directory; otherwise, it is
+relative starting from the standard directory for Info files of your
+site. The name <span class="samp">(</span><var>filename</var><span class="samp">)Top</span> can be abbreviated to just
+<span class="samp">(</span><var>filename</var><span class="samp">)</span>. By convention, the name <span class="samp">Top</span> is used
+for the &ldquo;highest&rdquo; node in any single file&mdash;the node whose <span class="samp">Up</span>
+points out of the file. The <span class="samp">Directory</span> node is <span class="file">(dir)</span>, it
+points to a file <span class="file">dir</span> which holds a large menu listing all the
+Info documents installed on your site. The <span class="samp">Top</span> node of a
+document file listed in the <span class="samp">Directory</span> should have an <span class="samp">Up:
+(dir)</span> in it.
+
+ <p><a name="index-unstructured-documents-72"></a> The node name <kbd>*</kbd> is special: it refers to the entire file.
+Thus, <kbd>g*</kbd> shows you the whole current file. The use of the
+node <kbd>*</kbd> is to make it possible to make old-fashioned,
+unstructured files into nodes of the tree.
+
+ <p>The <span class="samp">Node:</span> name, in which a node states its own name, must not
+contain a file name, since when Info searches for a node, it does not
+expect a file name to be there. The <span class="samp">Next</span>, <span class="samp">Previous</span> and
+<span class="samp">Up</span> names may contain them. In this node, since the <span class="samp">Up</span>
+node is in the same file, it was not necessary to use one.
+
+ <p>Note that the nodes in this file have a file name in the header
+line. The file names are ignored by Info, but they serve as comments
+to help identify the node for the user.
+
+<div class="node">
+<p><hr>
+<a name="Menus"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Cross_002drefs">Cross-refs</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Add">Add</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Expert-Info">Expert Info</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.4 How to Create Menus</h3>
+
+<p>Any node in the Info hierarchy may have a <dfn>menu</dfn>&mdash;a list of subnodes.
+The <kbd>m</kbd> command searches the current node's menu for the topic which it
+reads from the terminal.
+
+ <p><a name="index-menu-and-menu-entry-format-73"></a> A menu begins with a line starting with <span class="samp">*&nbsp;Menu:</span><!-- /@w -->. The
+rest of the line is a comment. After the starting line, every line
+that begins with a <span class="samp">* </span> lists a single topic. The name of the
+topic&ndash;what the user must type at the <kbd>m</kbd>'s command prompt to
+select this topic&mdash;comes right after the star and space, and is
+followed by a colon, spaces and tabs, and the name of the node which
+discusses that topic. The node name, like node names following
+<span class="samp">Next</span>, <span class="samp">Previous</span> and <span class="samp">Up</span>, may be terminated with a
+tab, comma, or newline; it may also be terminated with a period.
+
+ <p>If the node name and topic name are the same, then rather than
+giving the name twice, the abbreviation <span class="samp">* </span><var>name</var><span class="samp">::</span> may be
+used (and should be used, whenever possible, as it reduces the visual
+clutter in the menu).
+
+ <p>It is considerate to choose the topic names so that they differ
+from each other very near the beginning&mdash;this allows the user to type
+short abbreviations. In a long menu, it is a good idea to capitalize
+the beginning of each item name which is the minimum acceptable
+abbreviation for it (a long menu is more than 5 or so entries).
+
+ <p>The nodes listed in a node's menu are called its &ldquo;subnodes&rdquo;, and it
+is their &ldquo;superior&rdquo;. They should each have an <span class="samp">Up:</span> pointing at
+the superior. It is often useful to arrange all or most of the subnodes
+in a sequence of <span class="samp">Next</span> and <span class="samp">Previous</span> pointers so that
+someone who wants to see them all need not keep revisiting the Menu.
+
+ <p>The Info Directory is simply the menu of the node <span class="samp">(dir)Top</span>&mdash;that
+is, node <span class="samp">Top</span> in file <span class="file">.../info/dir</span>. You can put new entries
+in that menu just like any other menu. The Info Directory is <em>not</em> the
+same as the file directory called <span class="file">info</span>. It happens that many of
+Info's files live in that file directory, but they do not have to; and
+files in that directory are not automatically listed in the Info
+Directory node.
+
+ <p>Also, although the Info node graph is claimed to be a &ldquo;hierarchy&rdquo;,
+in fact it can be <em>any</em> directed graph. Shared structures and
+pointer cycles are perfectly possible, and can be used if they are
+appropriate to the meaning to be expressed. There is no need for all
+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 <span class="samp">Top</span>; the other contains the node <span class="samp">Help</span> which the
+<kbd>h</kbd> 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.
+
+<div class="node">
+<p><hr>
+<a name="Cross_002drefs"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Tags">Tags</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Menus">Menus</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Expert-Info">Expert Info</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.5 Creating Cross References</h3>
+
+<p><a name="index-cross-reference-format-74"></a> A cross reference can be placed anywhere in the text, unlike a menu
+item which must go at the front of a line. A cross reference looks
+like a menu item except that it has <span class="samp">*note</span> instead of <span class="samp">*</span>.
+It <em>cannot</em> be terminated by a <span class="samp">)</span>, because <span class="samp">)</span>'s are
+so often part of node names. If you wish to enclose a cross reference
+in parentheses, terminate it with a period first. Here are two
+examples of cross references pointers:
+
+<pre class="example"> *Note details: commands. (See *note 3: Full Proof.)
+</pre>
+ <p class="noindent"><em>These are just examples.</em> The places they &ldquo;lead to&rdquo; do not
+really exist!
+
+<ul class="menu">
+<li><a accesskey="1" href="#Help_002dCross">Help-Cross</a>: Target of a cross-reference.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Help_002dCross"></a>Up:&nbsp;<a rel="up" accesskey="u" href="#Cross_002drefs">Cross-refs</a>
+<br>
+</div>
+
+<h4 class="subsection">2.5.1 The node reached by the cross reference in Info</h4>
+
+<p>This is the node reached by the cross reference named <span class="samp">Cross</span>.
+
+ <p>While this node is specifically intended to be reached by a cross
+reference, most cross references lead to nodes that &ldquo;belong&rdquo;
+someplace else far away in the structure of an Info document. So you
+cannot expect this node to have a <span class="samp">Next</span>, <span class="samp">Previous</span> or
+<span class="samp">Up</span> links pointing back to where you came from. In general, the
+<kbd>l</kbd> (el) command is the only way to get back there.
+
+<pre class="format">&gt;&gt; Type <kbd>l</kbd> to return to the node where the cross reference was.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Help_002dQ"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Help_002dInt">Help-Int</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Getting-Started">Getting Started</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.6 Quitting Info</h3>
+
+<p><a name="index-q-_0040r_007b_0028Info-mode_0029_007d-75"></a><a name="index-Info_002dexit-76"></a><a name="index-quitting-Info-mode-77"></a> To get out of Info, back to what you were doing before, type <kbd>q</kbd>
+for <dfn>Quit</dfn>. This runs <code>Info-exit</code> in Emacs.
+
+ <p>This is the end of the basic course on using Info. You have learned
+how to move in an Info document, and how to follow menus and cross
+references. This makes you ready for reading manuals top to bottom,
+as new users should do when they learn a new package.
+
+ <p>Another set of Info commands is useful when you need to find
+something quickly in a manual&mdash;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 <a href="#Info-Search">Info Search</a>.
+
+ <p>Yet another set of commands are meant for experienced users; you can
+find them by looking in the Directory node for documentation on Info.
+Finding them will be a good exercise in using Info in the usual
+manner.
+
+<pre class="format">&gt;&gt; Type <kbd>d</kbd> to go to the Info directory node; then type
+ <kbd>mInfo</kbd> and Return, to get to the node about Info and
+ see what other help is available.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Tags"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Checking">Checking</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Cross_002drefs">Cross-refs</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Expert-Info">Expert Info</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.7 Tags Tables for Info Files</h3>
+
+<p><a name="index-tags-tables-in-info-files-78"></a> 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
+automatically whenever Info reads in the file.
+
+ <p><a name="index-Info_002dtagify-79"></a> To make a tags table, go to a node in the file using Emacs Info mode and type
+<kbd>M-x Info-tagify</kbd>. Then you must use <kbd>C-x C-s</kbd> to save the
+file. Info files produced by the <code>makeinfo</code> command that is part
+of the Texinfo package always have tags tables to begin with.
+
+ <p><a name="index-stale-tags-tables-80"></a><a name="index-update-Info-tags-table-81"></a> Once the Info file has a tags table, you must make certain it is up
+to date. If you edit an Info file directly (as opposed to editing its
+Texinfo source), and, as a result of deletion of text, any node moves back
+more than a thousand characters in the file from the position
+recorded in the tags table, Info will no longer be able to find that
+node. To update the tags table, use the <code>Info-tagify</code> command
+again.
+
+ <p>An Info file tags table appears at the end of the file and looks like
+this:
+
+<pre class="example"> ^_^L
+ Tag Table:
+ File: info, Node: Cross-refs^?21419
+ File: info, Node: Tags^?22145
+ ^_
+ End Tag Table
+</pre>
+ <p class="noindent">Note that it contains one line per node, and this line contains
+the beginning of the node's header (ending just after the node name),
+a <span class="samp">DEL</span> character, and the character position in the file of the
+beginning of the node.
+
+<div class="node">
+<p><hr>
+<a name="Checking"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Emacs-Info-Variables">Emacs Info Variables</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Tags">Tags</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Expert-Info">Expert Info</a>
+<br>
+</div>
+
+<h3 class="section">2.8 Checking an Info File</h3>
+
+<p>When creating an Info file, it is easy to forget the name of a node when
+you are making a pointer to it from another node. If you put in the
+wrong name for a node, this is not detected until someone tries to go
+through the pointer using Info. Verification of the Info file is an
+automatic process which checks all pointers to nodes and reports any
+pointers which are invalid. Every <span class="samp">Next</span>, <span class="samp">Previous</span>, and
+<span class="samp">Up</span> is checked, as is every menu item and every cross reference. In
+addition, any <span class="samp">Next</span> which does not have a <span class="samp">Previous</span> pointing
+back is reported. Only pointers within the file are checked, because
+checking pointers to other files would be terribly slow. But those are
+usually few.
+
+ <p><a name="index-Info_002dvalidate-82"></a>To check an Info file, do <kbd>M-x Info-validate</kbd> while looking at any
+node of the file with Emacs Info mode.
+
+<div class="node">
+<p><hr>
+<a name="Emacs-Info-Variables"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Checking">Checking</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Expert-Info">Expert Info</a>
+<br>
+</div>
+
+<h3 class="section">2.9 Emacs Info-mode Variables</h3>
+
+<p>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 <span class="file">~/.emacs</span> init file. See <a href="emacs.html#Examining">Examining and Setting Variables (The GNU Emacs Manual)</a>. The stand-alone Info reader program has its own set of
+variables, described in <a href="info-stnd.html#Variables">Manipulating Variables (GNU Info)</a>.
+
+ <dl>
+<dt><code>Info-directory-list</code><a name="index-Info_002ddirectory_002dlist-83"></a><dd>The list of directories to search for Info files. Each element is a
+string (directory name) or <code>nil</code> (try default directory). If not
+initialized Info uses the environment variable <span class="env">INFOPATH</span> to
+initialize it, or <code>Info-default-directory-list</code> if there is no
+<span class="env">INFOPATH</span> variable in the environment.
+
+ <p>If you wish to customize the Info directory search list for both Emacs
+info and stand-alone Info, it is best to set the <span class="env">INFOPATH</span>
+environment variable, since that applies to both programs.
+
+ <br><dt><code>Info-additional-directory-list</code><a name="index-Info_002dadditional_002ddirectory_002dlist-84"></a><dd>A list of additional directories to search for Info documentation files.
+These directories are not searched for merging the <span class="file">dir</span> file.
+
+ <br><dt><code>Info-fontify</code><a name="index-Info_002dfontify-85"></a><dd>When set to a non-<code>nil</code> value, enables highlighting of Info
+files. The default is <code>t</code>. You can change how the highlighting
+looks by customizing the faces <code>info-node</code>, <code>info-xref</code>,
+<code>info-header-xref</code>, <code>info-header-node</code>, <code>info-menu-5</code>,
+<code>info-menu-header</code>, and <code>info-title-</code><var>n</var><code>-face</code> (where
+<var>n</var> is the level of the section, a number between 1 and 4). To
+customize a face, type <kbd>M-x customize-face &lt;RET&gt; </kbd><var>face</var><kbd>
+&lt;RET&gt;</kbd>, where <var>face</var> is one of the face names listed here.
+
+ <br><dt><code>Info-use-header-line</code><a name="index-Info_002duse_002dheader_002dline-86"></a><dd>If non-<code>nil</code>, Emacs puts in the Info buffer a header line showing
+the <span class="samp">Next</span>, <span class="samp">Prev</span>, and <span class="samp">Up</span> links. A header line does
+not scroll with the rest of the buffer, making these links always
+visible.
+
+ <br><dt><code>Info-hide-note-references</code><a name="index-Info_002dhide_002dnote_002dreferences-87"></a><dd>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</code>. Setting
+it to a value that is neither <code>nil</code> nor <code>t</code> produces an
+intermediate behavior, hiding a limited amount of text, but showing
+all text that could potentially be useful.
+
+ <br><dt><code>Info-scroll-prefer-subnodes</code><a name="index-Info_002dscroll_002dprefer_002dsubnodes-88"></a><dd>If set to a non-<code>nil</code> value, &lt;SPC&gt; and &lt;BACKSPACE&gt; (or
+&lt;DEL&gt;) 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 &lt;SPC&gt; moves to a
+subnode indicated by the following menu item. Setting this option to
+<code>nil</code> 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</code>.
+
+ <br><dt><code>Info-enable-active-nodes</code><a name="index-Info_002denable_002dactive_002dnodes-89"></a><dd>When set to a non-<code>nil</code> 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 <span class="samp">DEL</span> character) and an <span class="samp">execute: </span> tag, like
+this:
+
+ <pre class="example"> ^_execute: (message "This is an active node!")
+ </pre>
+ <br><dt><code>Info-enable-edit</code><a name="index-Info_002denable_002dedit-90"></a><dd>Set to <code>nil</code>, disables the <span class="samp">e</span> (<code>Info-edit</code>) command. A
+non-<code>nil</code> value enables it. See <a href="#Add">Edit</a>.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Creating-an-Info-File"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Index">Index</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Expert-Info">Expert Info</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">3 Creating an Info File from a Texinfo File</h2>
+
+<p><code>makeinfo</code> is a utility that converts a Texinfo file into an Info
+file; <code>texinfo-format-region</code> and <code>texinfo-format-buffer</code> are
+GNU Emacs functions that do the same.
+
+ <p>See <a href="texinfo.html#Top">Overview of Texinfo (Texinfo: The GNU Documentation Format)</a>, to learn how to write a Texinfo file.
+
+ <p>See <a href="texinfo.html#Creating-an-Info-File">Creating an Info File (Texinfo: The GNU Documentation Format)</a>, to learn how to create an Info file from a Texinfo file.
+
+ <p>See <a href="texinfo.html#Installing-an-Info-File">Installing an Info File (Texinfo: The GNU Documentation Format)</a>, to learn how to install an Info file after you
+have created one.
+
+<div class="node">
+<p><hr>
+<a name="Index"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Creating-an-Info-File">Creating an Info File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="unnumbered">Index</h2>
+
+<p>This is an alphabetical listing of all the commands, variables, and
+topics discussed in this document.
+
+<ul class="index-cp" compact>
+<li><a href="#index-1-_0040r_007bthrough_007d-9-_0040r_007b_0028Info-mode_0029_007d-50"><code>1 </code><span class="roman">through</span><code> 9 </code><span class="roman">(Info mode)</span></a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-_003f-_0040r_007b_0028Info-mode_0029_007d-19"><code>? </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-abbreviating-Info-subnodes-27">abbreviating Info subnodes</a>: <a href="#Help_002dM">Help-M</a></li>
+<li><a href="#index-b-_0040r_007b_0028Info-mode_0029_007d-18"><code>b </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-BACKSPACE-_0040r_007b_0028Info-mode_0029_007d-10"><code>BACKSPACE </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-C_002dl-_0040r_007b_0028Info-mode_0029_007d-17"><code>C-l </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-clone_002dbuffer-57"><code>clone-buffer</code></a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-completion-of-Info-node-names-28">completion of Info node names</a>: <a href="#Help_002dM">Help-M</a></li>
+<li><a href="#index-cross-reference-format-74">cross reference format</a>: <a href="#Cross_002drefs">Cross-refs</a></li>
+<li><a href="#index-cross-references-in-Info-documents-34">cross references in Info documents</a>: <a href="#Help_002dXref">Help-Xref</a></li>
+<li><a href="#index-d-_0040r_007b_0028Info-mode_0029_007d-40"><code>d </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002dInt">Help-Int</a></li>
+<li><a href="#index-DEL-_0040r_007b_0028Info-mode_0029_007d-9"><code>DEL </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-Directory-node-71">Directory node</a>: <a href="#Add">Add</a></li>
+<li><a href="#index-e-_0040r_007b_0028Info-mode_0029_007d-53"><code>e </code><span class="roman">(Info mode)</span></a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-edit-Info-document-55">edit Info document</a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-entering-Info-2">entering Info</a>: <a href="#Getting-Started">Getting Started</a></li>
+<li><a href="#index-f-_0040r_007b_0028Info-mode_0029_007d-35"><code>f </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002dXref">Help-Xref</a></li>
+<li><a href="#index-format-of-node-headers-69">format of node headers</a>: <a href="#Add">Add</a></li>
+<li><a href="#index-g-_0040r_007b_0028Info-mode_0029_007d-46"><code>g </code><span class="roman">(Info mode)</span></a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-go-to-a-node-by-name-48">go to a node by name</a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-go-to-another-Info-file-49">go to another Info file</a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-go-to-Directory-node-42">go to Directory node</a>: <a href="#Help_002dInt">Help-Int</a></li>
+<li><a href="#index-go-to-Top-node-45">go to Top node</a>: <a href="#Help_002dInt">Help-Int</a></li>
+<li><a href="#index-going-back-in-Info-mode-39">going back in Info mode</a>: <a href="#Help_002dInt">Help-Int</a></li>
+<li><a href="#index-header-of-Info-node-5">header of Info node</a>: <a href="#Help">Help</a></li>
+<li><a href="#index-i-_0040r_007b_0028Info-mode_0029_007d-61"><code>i </code><span class="roman">(Info mode)</span></a>: <a href="#Info-Search">Info Search</a></li>
+<li><a href="#index-Info-document-as-a-reference-60">Info document as a reference</a>: <a href="#Info-Search">Info Search</a></li>
+<li><a href="#index-Info-documents-as-tutorials-14">Info documents as tutorials</a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-Info-menus-24">Info menus</a>: <a href="#Help_002dM">Help-M</a></li>
+<li><a href="#index-Info-reader_002c-how-to-invoke-1">Info reader, how to invoke</a>: <a href="#Getting-Started">Getting Started</a></li>
+<li><a href="#index-Info_002dadditional_002ddirectory_002dlist-84"><code>Info-additional-directory-list</code></a>: <a href="#Emacs-Info-Variables">Emacs Info Variables</a></li>
+<li><a href="#index-info_002dapropos-63"><code>info-apropos</code></a>: <a href="#Info-Search">Info Search</a></li>
+<li><a href="#index-Info_002ddirectory-41"><code>Info-directory</code></a>: <a href="#Help_002dInt">Help-Int</a></li>
+<li><a href="#index-Info_002ddirectory_002dlist-83"><code>Info-directory-list</code></a>: <a href="#Emacs-Info-Variables">Emacs Info Variables</a></li>
+<li><a href="#index-Info_002dedit-54"><code>Info-edit</code></a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-Info_002denable_002dactive_002dnodes-89"><code>Info-enable-active-nodes</code></a>: <a href="#Emacs-Info-Variables">Emacs Info Variables</a></li>
+<li><a href="#index-Info_002denable_002dedit-90"><code>Info-enable-edit</code></a>: <a href="#Emacs-Info-Variables">Emacs Info Variables</a></li>
+<li><a href="#index-Info_002dexit-76"><code>Info-exit</code></a>: <a href="#Help_002dQ">Help-Q</a></li>
+<li><a href="#index-Info_002dfollow_002dreference-36"><code>Info-follow-reference</code></a>: <a href="#Help_002dXref">Help-Xref</a></li>
+<li><a href="#index-Info_002dfontify-85"><code>Info-fontify</code></a>: <a href="#Emacs-Info-Variables">Emacs Info Variables</a></li>
+<li><a href="#index-Info_002dgoto_002dnode-47"><code>Info-goto-node</code></a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-Info_002dhide_002dnote_002dreferences-87"><code>Info-hide-note-references</code></a>: <a href="#Emacs-Info-Variables">Emacs Info Variables</a></li>
+<li><a href="#index-Info_002dindex-62"><code>Info-index</code></a>: <a href="#Info-Search">Info Search</a></li>
+<li><a href="#index-Info_002dlast-38"><code>Info-last</code></a>: <a href="#Help_002dInt">Help-Int</a></li>
+<li><a href="#index-Info_002dmenu-26"><code>Info-menu</code></a>: <a href="#Help_002dM">Help-M</a></li>
+<li><a href="#index-Info_002dmouse_002dfollow_002dnearest_002dnode-31"><code>Info-mouse-follow-nearest-node</code></a>: <a href="#Help_002dM">Help-M</a></li>
+<li><a href="#index-Info_002dnth_002dmenu_002ditem-51"><code>Info-nth-menu-item</code></a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-Info_002dscroll_002ddown-12"><code>Info-scroll-down</code></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-Info_002dscroll_002dprefer_002dsubnodes-88"><code>Info-scroll-prefer-subnodes</code></a>: <a href="#Emacs-Info-Variables">Emacs Info Variables</a></li>
+<li><a href="#index-Info_002dscroll_002dup-11"><code>Info-scroll-up</code></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-Info_002dsearch-65"><code>Info-search</code></a>: <a href="#Info-Search">Info Search</a></li>
+<li><a href="#index-Info_002dsummary-20"><code>Info-summary</code></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-Info_002dtagify-79"><code>Info-tagify</code></a>: <a href="#Tags">Tags</a></li>
+<li><a href="#index-Info_002dtop_002dnode-44"><code>Info-top-node</code></a>: <a href="#Help_002dInt">Help-Int</a></li>
+<li><a href="#index-Info_002dup-33"><code>Info-up</code></a>: <a href="#Help_002dFOO">Help-FOO</a></li>
+<li><a href="#index-Info_002duse_002dheader_002dline-86"><code>Info-use-header-line</code></a>: <a href="#Emacs-Info-Variables">Emacs Info Variables</a></li>
+<li><a href="#index-Info_002dvalidate-82"><code>Info-validate</code></a>: <a href="#Checking">Checking</a></li>
+<li><a href="#index-invisible-text-in-Emacs-21">invisible text in Emacs</a>: <a href="#Help_002dInv">Help-Inv</a></li>
+<li><a href="#index-l-_0040r_007b_0028Info-mode_0029_007d-37"><code>l </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002dInt">Help-Int</a></li>
+<li><a href="#index-m-_0040r_007b_0028Info-mode_0029_007d-25"><code>m </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002dM">Help-M</a></li>
+<li><a href="#index-M_002dn-_0040r_007b_0028Info-mode_0029_007d-56"><code>M-n </code><span class="roman">(Info mode)</span></a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-M_002ds-_0040r_007b_0028Info-mode_0029_007d-66"><code>M-s </code><span class="roman">(Info mode)</span></a>: <a href="#Info-Search">Info Search</a></li>
+<li><a href="#index-menu-and-menu-entry-format-73">menu and menu entry format</a>: <a href="#Menus">Menus</a></li>
+<li><a href="#index-menus-in-an-Info-document-23">menus in an Info document</a>: <a href="#Help_002dM">Help-M</a></li>
+<li><a href="#index-mouse-support-in-Info-mode-29">mouse support in Info mode</a>: <a href="#Help_002dM">Help-M</a></li>
+<li><a href="#index-Mouse_002d2-_0040r_007b_0028Info-mode_0029_007d-30"><code>Mouse-2 </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002dM">Help-M</a></li>
+<li><a href="#index-multiple-Info-buffers-58">multiple Info buffers</a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-n-_0040r_007b_0028Info-mode_0029_007d-6"><code>n </code><span class="roman">(Info mode)</span></a>: <a href="#Help">Help</a></li>
+<li><a href="#index-node-delimiters-67">node delimiters</a>: <a href="#Add">Add</a></li>
+<li><a href="#index-node-header-line-format-68">node header line format</a>: <a href="#Add">Add</a></li>
+<li><a href="#index-node-name-format-70">node name format</a>: <a href="#Add">Add</a></li>
+<li><a href="#index-node_002c-in-Info-documents-4">node, in Info documents</a>: <a href="#Help">Help</a></li>
+<li><a href="#index-p-_0040r_007b_0028Info-mode_0029_007d-7"><code>p </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002dP">Help-P</a></li>
+<li><a href="#index-PAGEDOWN-_0040r_007b_0028Info-mode_0029_007d-16"><code>PAGEDOWN </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-PAGEUP-_0040r_007b_0028Info-mode_0029_007d-15"><code>PAGEUP </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-q-_0040r_007b_0028Info-mode_0029_007d-75"><code>q </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002dQ">Help-Q</a></li>
+<li><a href="#index-quitting-Info-mode-77">quitting Info mode</a>: <a href="#Help_002dQ">Help-Q</a></li>
+<li><a href="#index-reading-Info-documents-top-to-bottom-13">reading Info documents top to bottom</a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-s-_0040r_007b_0028Info-mode_0029_007d-64"><code>s </code><span class="roman">(Info mode)</span></a>: <a href="#Info-Search">Info Search</a></li>
+<li><a href="#index-searching-Info-documents-59">searching Info documents</a>: <a href="#Info-Search">Info Search</a></li>
+<li><a href="#index-select-_0040var_007bn_007d_0027th-menu-item-52">select <var>n</var>'th menu item</a>: <a href="#Advanced">Advanced</a></li>
+<li><a href="#index-small-screen_002c-moving-around-3">small screen, moving around</a>: <a href="#Help_002dSmall_002dScreen">Help-Small-Screen</a></li>
+<li><a href="#index-SPC-_0040r_007b_0028Info-mode_0029_007d-8"><code>SPC </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002d_005eL">Help-^L</a></li>
+<li><a href="#index-stale-tags-tables-80">stale tags tables</a>: <a href="#Tags">Tags</a></li>
+<li><a href="#index-t-_0040r_007b_0028Info-mode_0029_007d-43"><code>t </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002dInt">Help-Int</a></li>
+<li><a href="#index-tags-tables-in-info-files-78">tags tables in info files</a>: <a href="#Tags">Tags</a></li>
+<li><a href="#index-u-_0040r_007b_0028Info-mode_0029_007d-32"><code>u </code><span class="roman">(Info mode)</span></a>: <a href="#Help_002dFOO">Help-FOO</a></li>
+<li><a href="#index-unstructured-documents-72">unstructured documents</a>: <a href="#Add">Add</a></li>
+<li><a href="#index-update-Info-tags-table-81">update Info tags table</a>: <a href="#Tags">Tags</a></li>
+<li><a href="#index-visible_002dmode-22"><code>visible-mode</code></a>: <a href="#Help_002dInv">Help-Inv</a></li>
+ </ul> <div class="footnote">
+<hr>
+<a name="texinfo-footnotes-in-document"></a><h4>Footnotes</h4><p class="footnote"><small>[<a name="fn-1" href="#fnd-1">1</a>]</small> The key which
+we call &ldquo;Backspace or DEL&rdquo; in this manual is labeled differently on
+different keyboards. Look for a key which is a little ways above the
+&lt;ENTER&gt; or &lt;RET&gt; key and which you normally use outside Emacs
+to erase the character before the cursor, i.e. the character you
+typed last. It might be labeled <span class="samp">Backspace</span> or <span class="samp">&lt;-</span> or
+<span class="samp">DEL</span>, or sometimes <span class="samp">Delete</span>.</p>
+
+ <p class="footnote"><small>[<a name="fn-2" href="#fnd-2">2</a>]</small> If
+you put in a <span class="samp">^L</span> to end a new node, be sure that there is a
+<span class="samp">^_</span> after it to start the next one, since <span class="samp">^L</span> cannot
+<em>start</em> a node. Also, a nicer way to make a node boundary be a
+page boundary as well is to put a <span class="samp">^L</span> <em>right after</em> the
+<span class="samp">^_</span>.</p>
+
+ <p><hr></div>
+
+</body></html>
+
diff --git a/Master/texmf/doc/texinfo/info.pdf b/Master/texmf/doc/texinfo/info.pdf
new file mode 100644
index 00000000000..0676759673c
--- /dev/null
+++ b/Master/texmf/doc/texinfo/info.pdf
Binary files differ
diff --git a/Master/texmf/doc/texinfo/texinfo.html b/Master/texmf/doc/texinfo/texinfo.html
new file mode 100644
index 00000000000..bd02990f831
--- /dev/null
+++ b/Master/texmf/doc/texinfo/texinfo.html
@@ -0,0 +1,19883 @@
+<html lang="en">
+<head>
+<title>GNU Texinfo 4.7</title>
+<meta http-equiv="Content-Type" content="text/html">
+<meta name="description" content="GNU Texinfo 4.7">
+<meta name="generator" content="makeinfo 4.7">
+<link title="Top" rel="top" href="#Top">
+<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
+<!--
+This manual is for GNU Texinfo (version 4.7, 9 April 2004),
+a documentation system that can produce both online information and a
+printed manual from a single source.
+
+Copyright (C) 1988, 1990, 1991, 1992, 1993, 1995, 1996, 1997, 1998,
+1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+
+ 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 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 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."
+ -->
+<meta http-equiv="Content-Style-Type" content="text/css">
+<style type="text/css"><!--
+ pre.display { font-family:inherit }
+ pre.format { font-family:inherit }
+ pre.smalldisplay { font-family:inherit; font-size:smaller }
+ pre.smallformat { font-family:inherit; font-size:smaller }
+ pre.smallexample { font-size:smaller }
+ pre.smalllisp { font-size:smaller }
+ span.sc { font-variant:small-caps }
+ span.roman { font-family: serif; font-weight: normal; }
+--></style>
+</head>
+<body>
+<h1 class="settitle">GNU Texinfo 4.7</h1>
+ <div class="shortcontents">
+<h2>Short Contents</h2>
+<ul>
+<li><a href="#toc_Top">Texinfo</a></li>
+<li><a href="#toc_Copying-Conditions">Texinfo Copying Conditions</a></li>
+<li><a href="#toc_Overview">1 Overview of Texinfo</a></li>
+<li><a href="#toc_Texinfo-Mode">2 Using Texinfo Mode</a></li>
+<li><a href="#toc_Beginning-a-File">3 Beginning a Texinfo File</a></li>
+<li><a href="#toc_Ending-a-File">4 Ending a Texinfo File</a></li>
+<li><a href="#toc_Structuring">5 Chapter Structuring</a></li>
+<li><a href="#toc_Nodes">6 Nodes</a></li>
+<li><a href="#toc_Menus">7 Menus</a></li>
+<li><a href="#toc_Cross-References">8 Cross References</a></li>
+<li><a href="#toc_Marking-Text">9 Marking Words and Phrases</a></li>
+<li><a href="#toc_Quotations-and-Examples">10 Quotations and Examples</a></li>
+<li><a href="#toc_Lists-and-Tables">11 Lists and Tables</a></li>
+<li><a href="#toc_Special-Displays">12 Special Displays</a></li>
+<li><a href="#toc_Indices">13 Indices</a></li>
+<li><a href="#toc_Insertions">14 Special Insertions</a></li>
+<li><a href="#toc_Breaks">15 Forcing and Preventing Breaks</a></li>
+<li><a href="#toc_Definition-Commands">16 Definition Commands</a></li>
+<li><a href="#toc_Conditionals">17 Conditionally Visible Text</a></li>
+<li><a href="#toc_Internationalization">18 Internationalization</a></li>
+<li><a href="#toc_Defining-New-Texinfo-Commands">19 Defining New Texinfo Commands</a></li>
+<li><a href="#toc_Hardcopy">20 Formatting and Printing Hardcopy</a></li>
+<li><a href="#toc_Creating-and-Installing-Info-Files">21 Creating and Installing Info Files</a></li>
+<li><a href="#toc_Generating-HTML">22 Generating HTML</a></li>
+<li><a href="#toc_Command-List">Appendix A @-Command List</a></li>
+<li><a href="#toc_Tips">Appendix B Tips and Hints</a></li>
+<li><a href="#toc_Sample-Texinfo-Files">Appendix C Sample Texinfo Files</a></li>
+<li><a href="#toc_Include-Files">Appendix D Include Files</a></li>
+<li><a href="#toc_Headings">Appendix E Page Headings</a></li>
+<li><a href="#toc_Catching-Mistakes">Appendix F Formatting Mistakes</a></li>
+<li><a href="#toc_Copying-This-Manual">Appendix G Copying This Manual</a></li>
+<li><a href="#toc_Command-and-Variable-Index">Command and Variable Index</a></li>
+<li><a href="#toc_Concept-Index">Concept Index</a></li>
+</ul>
+</div>
+
+
+
+ <div class="contents">
+<h2>Table of Contents</h2>
+<ul>
+<li><a name="toc_Top" href="#Top">Texinfo</a>
+<li><a name="toc_Copying-Conditions" href="#Copying-Conditions">Texinfo Copying Conditions</a>
+<li><a name="toc_Overview" href="#Overview">1 Overview of Texinfo</a>
+<ul>
+<li><a href="#Reporting-Bugs">1.1 Reporting Bugs</a>
+<li><a href="#Using-Texinfo">1.2 Using Texinfo</a>
+<li><a href="#Output-Formats">1.3 Output Formats</a>
+<li><a href="#Info-Files">1.4 Info Files</a>
+<li><a href="#Printed-Books">1.5 Printed Books</a>
+<li><a href="#Formatting-Commands">1.6 @-commands</a>
+<li><a href="#Conventions">1.7 General Syntactic Conventions</a>
+<li><a href="#Comments">1.8 Comments</a>
+<li><a href="#Minimum">1.9 What a Texinfo File Must Have</a>
+<li><a href="#Six-Parts">1.10 Six Parts of a Texinfo File</a>
+<li><a href="#Short-Sample">1.11 A Short Sample Texinfo File</a>
+<li><a href="#History">1.12 History</a>
+</li></ul>
+<li><a name="toc_Texinfo-Mode" href="#Texinfo-Mode">2 Using Texinfo Mode</a>
+<ul>
+<li><a href="#Texinfo-Mode-Overview">2.1 Texinfo Mode Overview</a>
+<li><a href="#Emacs-Editing">2.2 The Usual GNU Emacs Editing Commands</a>
+<li><a href="#Inserting">2.3 Inserting Frequently Used Commands</a>
+<li><a href="#Showing-the-Structure">2.4 Showing the Section Structure of a File</a>
+<li><a href="#Updating-Nodes-and-Menus">2.5 Updating Nodes and Menus</a>
+<ul>
+<li><a href="#Updating-Commands">2.5.1 The Updating Commands</a>
+<li><a href="#Updating-Requirements">2.5.2 Updating Requirements</a>
+<li><a href="#Other-Updating-Commands">2.5.3 Other Updating Commands</a>
+</li></ul>
+<li><a href="#Info-Formatting">2.6 Formatting for Info</a>
+<li><a href="#Printing">2.7 Printing</a>
+<li><a href="#Texinfo-Mode-Summary">2.8 Texinfo Mode Summary</a>
+</li></ul>
+<li><a name="toc_Beginning-a-File" href="#Beginning-a-File">3 Beginning a Texinfo File</a>
+<ul>
+<li><a href="#Sample-Beginning">3.1 Sample Texinfo File Beginning</a>
+<li><a href="#Texinfo-File-Header">3.2 Texinfo File Header</a>
+<ul>
+<li><a href="#First-Line">3.2.1 The First Line of a Texinfo File</a>
+<li><a href="#Start-of-Header">3.2.2 Start of Header</a>
+<li><a href="#setfilename">3.2.3 <code>@setfilename</code>: Set the output file name</a>
+<li><a href="#settitle">3.2.4 <code>@settitle</code>: Set the document title</a>
+<li><a href="#End-of-Header">3.2.5 End of Header</a>
+</li></ul>
+<li><a href="#Document-Permissions">3.3 Document Permissions</a>
+<ul>
+<li><a href="#copying">3.3.1 <code>@copying</code>: Declare Copying Permissions</a>
+<li><a href="#insertcopying">3.3.2 <code>@insertcopying</code>: Include Permissions Text</a>
+</li></ul>
+<li><a href="#Titlepage-_0026-Copyright-Page">3.4 Title and Copyright Pages</a>
+<ul>
+<li><a href="#titlepage">3.4.1 <code>@titlepage</code></a>
+<li><a href="#titlefont-center-sp">3.4.2 <code>@titlefont</code>, <code>@center</code>, and <code>@sp</code></a>
+<li><a href="#title-subtitle-author">3.4.3 <code>@title</code>, <code>@subtitle</code>, and <code>@author</code></a>
+<li><a href="#Copyright">3.4.4 Copyright Page</a>
+<li><a href="#end-titlepage">3.4.5 Heading Generation</a>
+<li><a href="#headings-on-off">3.4.6 The <code>@headings</code> Command</a>
+</li></ul>
+<li><a href="#Contents">3.5 Generating a Table of Contents</a>
+<li><a href="#The-Top-Node">3.6 The `Top' Node and Master Menu</a>
+<ul>
+<li><a href="#Top-Node-Example">3.6.1 Top Node Example</a>
+<li><a href="#Master-Menu-Parts">3.6.2 Parts of a Master Menu</a>
+</li></ul>
+<li><a href="#Global-Document-Commands">3.7 Global Document Commands</a>
+<ul>
+<li><a href="#documentdescription">3.7.1 <code>@documentdescription</code>: Summary Text</a>
+<li><a href="#setchapternewpage">3.7.2 <code>@setchapternewpage</code>:</a>
+<li><a href="#paragraphindent">3.7.3 <code>@paragraphindent</code>: Paragraph Indenting</a>
+<li><a href="#firstparagraphindent">3.7.4 <code>@firstparagraphindent</code>: Indenting After Headings</a>
+<li><a href="#exampleindent">3.7.5 <code>@exampleindent</code>: Environment Indenting</a>
+</li></ul>
+<li><a href="#Software-Copying-Permissions">3.8 Software Copying Permissions</a>
+</li></ul>
+<li><a name="toc_Ending-a-File" href="#Ending-a-File">4 Ending a Texinfo File</a>
+<ul>
+<li><a href="#Printing-Indices-_0026-Menus">4.1 Printing Indices and Menus</a>
+<li><a href="#File-End">4.2 <code>@bye</code> File Ending</a>
+</li></ul>
+<li><a name="toc_Structuring" href="#Structuring">5 Chapter Structuring</a>
+<ul>
+<li><a href="#Tree-Structuring">5.1 Tree Structure of Sections</a>
+<li><a href="#Structuring-Command-Types">5.2 Structuring Command Types</a>
+<li><a href="#makeinfo-top">5.3 <code>@top</code></a>
+<li><a href="#chapter">5.4 <code>@chapter</code></a>
+<li><a href="#unnumbered-_0026-appendix">5.5 <code>@unnumbered</code> and <code>@appendix</code></a>
+<li><a href="#majorheading-_0026-chapheading">5.6 <code>@majorheading</code>, <code>@chapheading</code></a>
+<li><a href="#section">5.7 <code>@section</code></a>
+<li><a href="#unnumberedsec-appendixsec-heading">5.8 <code>@unnumberedsec</code>, <code>@appendixsec</code>, <code>@heading</code></a>
+<li><a href="#subsection">5.9 The <code>@subsection</code> Command</a>
+<li><a href="#unnumberedsubsec-appendixsubsec-subheading">5.10 The <code>@subsection</code>-like Commands</a>
+<li><a href="#subsubsection">5.11 The `subsub' Commands</a>
+<li><a href="#Raise_002flower-sections">5.12 <code>@raisesections</code> and <code>@lowersections</code></a>
+</li></ul>
+<li><a name="toc_Nodes" href="#Nodes">6 Nodes</a>
+<ul>
+<li><a href="#Two-Paths">6.1 Two Paths</a>
+<li><a href="#Node-Menu-Illustration">6.2 Node and Menu Illustration</a>
+<li><a href="#node">6.3 The <code>@node</code> Command</a>
+<ul>
+<li><a href="#Node-Names">6.3.1 Choosing Node and Pointer Names</a>
+<li><a href="#Writing-a-Node">6.3.2 How to Write an <code>@node</code> Line</a>
+<li><a href="#Node-Line-Tips">6.3.3 <code>@node</code> Line Tips</a>
+<li><a href="#Node-Line-Requirements">6.3.4 <code>@node</code> Line Requirements</a>
+<li><a href="#First-Node">6.3.5 The First Node</a>
+<li><a href="#makeinfo-top-command">6.3.6 The <code>@top</code> Sectioning Command</a>
+</li></ul>
+<li><a href="#makeinfo-Pointer-Creation">6.4 Creating Pointers with <code>makeinfo</code></a>
+<li><a href="#anchor">6.5 <code>@anchor</code>: Defining Arbitrary Cross-reference Targets</a>
+</li></ul>
+<li><a name="toc_Menus" href="#Menus">7 Menus</a>
+<ul>
+<li><a href="#Menu-Location">7.1 Menu Location</a>
+<li><a href="#Writing-a-Menu">7.2 Writing a Menu</a>
+<li><a href="#Menu-Parts">7.3 The Parts of a Menu</a>
+<li><a href="#Less-Cluttered-Menu-Entry">7.4 Less Cluttered Menu Entry</a>
+<li><a href="#Menu-Example">7.5 A Menu Example</a>
+<li><a href="#Other-Info-Files">7.6 Referring to Other Info Files</a>
+</li></ul>
+<li><a name="toc_Cross-References" href="#Cross-References">8 Cross References</a>
+<ul>
+<li><a href="#References">8.1 What References Are For</a>
+<li><a href="#Cross-Reference-Commands">8.2 Different Cross Reference Commands</a>
+<li><a href="#Cross-Reference-Parts">8.3 Parts of a Cross Reference</a>
+<li><a href="#xref">8.4 <code>@xref</code></a>
+<ul>
+<li><a href="#Reference-Syntax">8.4.1 What a Reference Looks Like and Requires</a>
+<li><a href="#One-Argument">8.4.2 <code>@xref</code> with One Argument</a>
+<li><a href="#Two-Arguments">8.4.3 <code>@xref</code> with Two Arguments</a>
+<li><a href="#Three-Arguments">8.4.4 <code>@xref</code> with Three Arguments</a>
+<li><a href="#Four-and-Five-Arguments">8.4.5 <code>@xref</code> with Four and Five Arguments</a>
+</li></ul>
+<li><a href="#Top-Node-Naming">8.5 Naming a `Top' Node</a>
+<li><a href="#ref">8.6 <code>@ref</code></a>
+<li><a href="#pxref">8.7 <code>@pxref</code></a>
+<li><a href="#inforef">8.8 <code>@inforef</code></a>
+<li><a href="#uref">8.9 <code>@url</code>, <code>@uref{</code><var>url</var><code>[, </code><var>text</var><code>][, </code><var>replacement</var><code>]}</code></a>
+</li></ul>
+<li><a name="toc_Marking-Text" href="#Marking-Text">9 Marking Words and Phrases</a>
+<ul>
+<li><a href="#Indicating">9.1 Indicating Definitions, Commands, etc.</a>
+<ul>
+<li><a href="#Useful-Highlighting">9.1.1 Highlighting Commands are Useful</a>
+<li><a href="#code">9.1.2 <code>@code</code>{<var>sample-code</var>}</a>
+<li><a href="#kbd">9.1.3 <code>@kbd</code>{<var>keyboard-characters</var>}</a>
+<li><a href="#key">9.1.4 <code>@key</code>{<var>key-name</var>}</a>
+<li><a href="#samp">9.1.5 <code>@samp</code>{<var>text</var>}</a>
+<li><a href="#verb">9.1.6 <code>@verb</code>{&lt;char&gt;<var>text</var>&lt;char&gt;}</a>
+<li><a href="#var">9.1.7 <code>@var</code>{<var>metasyntactic-variable</var>}</a>
+<li><a href="#env">9.1.8 <code>@env</code>{<var>environment-variable</var>}</a>
+<li><a href="#file">9.1.9 <code>@file</code>{<var>file-name</var>}</a>
+<li><a href="#command">9.1.10 <code>@command</code>{<var>command-name</var>}</a>
+<li><a href="#option">9.1.11 <code>@option</code>{<var>option-name</var>}</a>
+<li><a href="#dfn">9.1.12 <code>@dfn</code>{<var>term</var>}</a>
+<li><a href="#cite">9.1.13 <code>@cite</code>{<var>reference</var>}</a>
+<li><a href="#acronym">9.1.14 <code>@acronym</code>{<var>acronym</var>[, <var>meaning</var>]}</a>
+<li><a href="#indicateurl">9.1.15 <code>@indicateurl</code>{<var>uniform-resource-locator</var>}</a>
+<li><a href="#email">9.1.16 <code>@email</code>{<var>email-address</var>[, <var>displayed-text</var>]}</a>
+</li></ul>
+<li><a href="#Emphasis">9.2 Emphasizing Text</a>
+<ul>
+<li><a href="#emph-_0026-strong">9.2.1 <code>@emph</code>{<var>text</var>} and <code>@strong</code>{<var>text</var>}</a>
+<li><a href="#Smallcaps">9.2.2 <code>@sc</code>{<var>text</var>}: The Small Caps Font</a>
+<li><a href="#Fonts">9.2.3 Fonts for Printing, Not Info</a>
+</li></ul>
+</li></ul>
+<li><a name="toc_Quotations-and-Examples" href="#Quotations-and-Examples">10 Quotations and Examples</a>
+<ul>
+<li><a href="#Block-Enclosing-Commands">10.1 Block Enclosing Commands</a>
+<li><a href="#quotation">10.2 <code>@quotation</code>: Block quotations</a>
+<li><a href="#example">10.3 <code>@example</code>: Example Text</a>
+<li><a href="#verbatim">10.4 <code>@verbatim</code>: Literal Text</a>
+<li><a href="#verbatiminclude">10.5 <code>@verbatiminclude</code> <var>file</var>: Include a File Verbatim</a>
+<li><a href="#lisp">10.6 <code>@lisp</code>: Marking a Lisp Example</a>
+<li><a href="#small">10.7 <code>@small...</code> Block Commands</a>
+<li><a href="#display">10.8 <code>@display</code> and <code>@smalldisplay</code></a>
+<li><a href="#format">10.9 <code>@format</code> and <code>@smallformat</code></a>
+<li><a href="#exdent">10.10 <code>@exdent</code>: Undoing a Line's Indentation</a>
+<li><a href="#flushleft-_0026-flushright">10.11 <code>@flushleft</code> and <code>@flushright</code></a>
+<li><a href="#noindent">10.12 <code>@noindent</code>: Omitting Indentation</a>
+<li><a href="#indent">10.13 <code>@indent</code>: Forcing Indentation</a>
+<li><a href="#cartouche">10.14 <code>@cartouche</code>: Rounded Rectangles Around Examples</a>
+</li></ul>
+<li><a name="toc_Lists-and-Tables" href="#Lists-and-Tables">11 Lists and Tables</a>
+<ul>
+<li><a href="#Introducing-Lists">11.1 Introducing Lists</a>
+<li><a href="#itemize">11.2 <code>@itemize</code>: Making an Itemized List</a>
+<li><a href="#enumerate">11.3 <code>@enumerate</code>: Making a Numbered or Lettered List</a>
+<li><a href="#Two_002dcolumn-Tables">11.4 Making a Two-column Table</a>
+<ul>
+<li><a href="#table">11.4.1 Using the <code>@table</code> Command</a>
+<li><a href="#ftable-vtable">11.4.2 <code>@ftable</code> and <code>@vtable</code></a>
+<li><a href="#itemx">11.4.3 <code>@itemx</code></a>
+</li></ul>
+<li><a href="#Multi_002dcolumn-Tables">11.5 <code>@multitable</code>: Multi-column Tables</a>
+<ul>
+<li><a href="#Multitable-Column-Widths">11.5.1 Multitable Column Widths</a>
+<li><a href="#Multitable-Rows">11.5.2 Multitable Rows</a>
+</li></ul>
+</li></ul>
+<li><a name="toc_Special-Displays" href="#Special-Displays">12 Special Displays</a>
+<ul>
+<li><a href="#Floats">12.1 Floats</a>
+<ul>
+<li><a href="#float">12.1.1 <code>@float</code> [<var>type</var>][,<var>label</var>]: Floating material</a>
+<li><a href="#caption-shortcaption">12.1.2 <code>@caption</code> &amp; <code>@shortcaption</code></a>
+<li><a href="#listoffloats">12.1.3 <code>@listoffloats</code>: Tables of contents for floats</a>
+</li></ul>
+<li><a href="#Images">12.2 Inserting Images</a>
+<ul>
+<li><a href="#Image-Syntax">12.2.1 Image Syntax</a>
+<li><a href="#Image-Scaling">12.2.2 Image Scaling</a>
+</li></ul>
+<li><a href="#Footnotes">12.3 Footnotes</a>
+<ul>
+<li><a href="#Footnote-Commands">12.3.1 Footnote Commands</a>
+<li><a href="#Footnote-Styles">12.3.2 Footnote Styles</a>
+</li></ul>
+</li></ul>
+<li><a name="toc_Indices" href="#Indices">13 Indices</a>
+<ul>
+<li><a href="#Index-Entries">13.1 Making Index Entries</a>
+<li><a href="#Predefined-Indices">13.2 Predefined Indices</a>
+<li><a href="#Indexing-Commands">13.3 Defining the Entries of an Index</a>
+<li><a href="#Combining-Indices">13.4 Combining Indices</a>
+<ul>
+<li><a href="#syncodeindex">13.4.1 <code>@syncodeindex</code></a>
+<li><a href="#synindex">13.4.2 <code>@synindex</code></a>
+</li></ul>
+<li><a href="#New-Indices">13.5 Defining New Indices</a>
+</li></ul>
+<li><a name="toc_Insertions" href="#Insertions">14 Special Insertions</a>
+<ul>
+<li><a href="#Atsign-Braces-Comma">14.1 Inserting @ and {} and ,</a>
+<ul>
+<li><a href="#Inserting-an-Atsign">14.1.1 Inserting `@' with <code>@@</code></a>
+<li><a href="#Inserting-Braces">14.1.2 Inserting `{' and `}' with <code>@{</code> and <code>@}</code></a>
+<li><a href="#Inserting-a-Comma">14.1.3 Inserting `,' with <code>@comma{}</code></a>
+</li></ul>
+<li><a href="#Inserting-Space">14.2 Inserting Space</a>
+<ul>
+<li><a href="#Not-Ending-a-Sentence">14.2.1 Not Ending a Sentence</a>
+<li><a href="#Ending-a-Sentence">14.2.2 Ending a Sentence</a>
+<li><a href="#Multiple-Spaces">14.2.3 Multiple Spaces</a>
+<li><a href="#dmn">14.2.4 <code>@dmn</code>{<var>dimension</var>}: Format a Dimension</a>
+</li></ul>
+<li><a href="#Inserting-Accents">14.3 Inserting Accents</a>
+<li><a href="#Dots-Bullets">14.4 Inserting Ellipsis and Bullets</a>
+<ul>
+<li><a href="#dots">14.4.1 <code>@dots</code>{} (<small class="dots">...</small>) and <code>@enddots</code>{} (<small class="enddots">....</small>)</a>
+<li><a href="#bullet">14.4.2 <code>@bullet</code>{} (&bull;)</a>
+</li></ul>
+<li><a href="#TeX-and-copyright">14.5 Inserting TeX and Legal Symbols: &copy;, &reg;</a>
+<ul>
+<li><a href="#tex">14.5.1 <code>@TeX</code>{} (TeX) and <code>@LaTeX</code>{} (LaTeX)</a>
+<li><a href="#copyright-symbol">14.5.2 <code>@copyright{}</code> (&copy;)</a>
+<li><a href="#registered-symbol">14.5.3 <code>@registeredsymbol{}</code> (&reg;)</a>
+</li></ul>
+<li><a href="#pounds">14.6 <code>@pounds</code>{} (&pound;): Pounds Sterling</a>
+<li><a href="#minus">14.7 <code>@minus</code>{} (&minus;): Inserting a Minus Sign</a>
+<li><a href="#math">14.8 <code>@math</code>: Inserting Mathematical Expressions</a>
+<li><a href="#Glyphs">14.9 Glyphs for Examples</a>
+<ul>
+<li><a href="#Glyphs-Summary">14.9.1 Glyphs Summary</a>
+<li><a href="#result">14.9.2 <code>@result{}</code> (=&gt;): Indicating Evaluation</a>
+<li><a href="#expansion">14.9.3 <code>@expansion{}</code> (==&gt;): Indicating an Expansion</a>
+<li><a href="#Print-Glyph">14.9.4 <code>@print{}</code> (-|): Indicating Printed Output</a>
+<li><a href="#Error-Glyph">14.9.5 <code>@error{}</code> (error--&gt;): Indicating an Error Message</a>
+<li><a href="#Equivalence">14.9.6 <code>@equiv{}</code> (==): Indicating Equivalence</a>
+<li><a href="#Point-Glyph">14.9.7 <code>@point{}</code> (-!-): Indicating Point in a Buffer</a>
+</li></ul>
+</li></ul>
+<li><a name="toc_Breaks" href="#Breaks">15 Forcing and Preventing Breaks</a>
+<ul>
+<li><a href="#Break-Commands">15.1 Break Commands</a>
+<li><a href="#Line-Breaks">15.2 <code>@*</code> and <code>@/</code>: Generate and Allow Line Breaks</a>
+<li><a href="#_002d-and-hyphenation">15.3 <code>@-</code> and <code>@hyphenation</code>: Helping TeX Hyphenate</a>
+<li><a href="#w">15.4 <code>@w</code>{<var>text</var>}: Prevent Line Breaks</a>
+<li><a href="#tie">15.5 <code>@tie{}</code>: Inserting an Unbreakable Space</a>
+<li><a href="#sp">15.6 <code>@sp</code> <var>n</var>: Insert Blank Lines</a>
+<li><a href="#page">15.7 <code>@page</code>: Start a New Page</a>
+<li><a href="#group">15.8 <code>@group</code>: Prevent Page Breaks</a>
+<li><a href="#need">15.9 <code>@need </code><var>mils</var>: Prevent Page Breaks</a>
+</li></ul>
+<li><a name="toc_Definition-Commands" href="#Definition-Commands">16 Definition Commands</a>
+<ul>
+<li><a href="#Def-Cmd-Template">16.1 The Template for a Definition</a>
+<li><a href="#Def-Cmd-Continuation-Lines">16.2 Definition Command Continuation Lines</a>
+<li><a href="#Optional-Arguments">16.3 Optional and Repeated Arguments</a>
+<li><a href="#deffnx">16.4 Two or More `First' Lines</a>
+<li><a href="#Def-Cmds-in-Detail">16.5 The Definition Commands</a>
+<ul>
+<li><a href="#Functions-Commands">16.5.1 Functions and Similar Entities</a>
+<li><a href="#Variables-Commands">16.5.2 Variables and Similar Entities</a>
+<li><a href="#Typed-Functions">16.5.3 Functions in Typed Languages</a>
+<li><a href="#Typed-Variables">16.5.4 Variables in Typed Languages</a>
+<li><a href="#Data-Types">16.5.5 Data Types</a>
+<li><a href="#Abstract-Objects">16.5.6 Object-Oriented Programming</a>
+<ul>
+<li><a href="#Object_002dOriented-Variables">16.5.6.1 Object-Oriented Variables</a>
+<li><a href="#Object_002dOriented-Methods">16.5.6.2 Object-Oriented Methods</a>
+</li></ul>
+</li></ul>
+<li><a href="#Def-Cmd-Conventions">16.6 Conventions for Writing Definitions</a>
+<li><a href="#Sample-Function-Definition">16.7 A Sample Function Definition</a>
+</li></ul>
+<li><a name="toc_Conditionals" href="#Conditionals">17 Conditionally Visible Text</a>
+<ul>
+<li><a href="#Conditional-Commands">17.1 Conditional Commands</a>
+<li><a href="#Conditional-Not-Commands">17.2 Conditional Not Commands</a>
+<li><a href="#Raw-Formatter-Commands">17.3 Raw Formatter Commands</a>
+<li><a href="#set-clear-value">17.4 <code>@set</code>, <code>@clear</code>, and <code>@value</code></a>
+<ul>
+<li><a href="#set-value">17.4.1 <code>@set</code> and <code>@value</code></a>
+<li><a href="#ifset-ifclear">17.4.2 <code>@ifset</code> and <code>@ifclear</code></a>
+<li><a href="#value-Example">17.4.3 <code>@value</code> Example</a>
+</li></ul>
+<li><a href="#Conditional-Nesting">17.5 Conditional Nesting</a>
+</li></ul>
+<li><a name="toc_Internationalization" href="#Internationalization">18 Internationalization</a>
+<ul>
+<li><a href="#documentlanguage">18.1 <code>@documentlanguage </code><var>cc</var>: Set the Document Language</a>
+<li><a href="#documentencoding">18.2 <code>@documentencoding </code><var>enc</var>: Set Input Encoding</a>
+</li></ul>
+<li><a name="toc_Defining-New-Texinfo-Commands" href="#Defining-New-Texinfo-Commands">19 Defining New Texinfo Commands</a>
+<ul>
+<li><a href="#Defining-Macros">19.1 Defining Macros</a>
+<li><a href="#Invoking-Macros">19.2 Invoking Macros</a>
+<li><a href="#Macro-Details">19.3 Macro Details</a>
+<li><a href="#alias">19.4 <span class="samp">@alias </span><var>new</var><span class="samp">=</span><var>existing</var></a>
+<li><a href="#definfoenclose">19.5 <span class="samp">definfoenclose</span>: Customized Highlighting</a>
+</li></ul>
+<li><a name="toc_Hardcopy" href="#Hardcopy">20 Formatting and Printing Hardcopy</a>
+<ul>
+<li><a href="#Use-TeX">20.1 Use TeX</a>
+<li><a href="#Format-with-tex_002ftexindex">20.2 Format with <code>tex</code> and <code>texindex</code></a>
+<li><a href="#Format-with-texi2dvi">20.3 Format with <code>texi2dvi</code></a>
+<li><a href="#Print-with-lpr">20.4 Shell Print Using <code>lpr -d</code></a>
+<li><a href="#Within-Emacs">20.5 From an Emacs Shell</a>
+<li><a href="#Texinfo-Mode-Printing">20.6 Formatting and Printing in Texinfo Mode</a>
+<li><a href="#Compile_002dCommand">20.7 Using the Local Variables List</a>
+<li><a href="#Requirements-Summary">20.8 TeX Formatting Requirements Summary</a>
+<li><a href="#Preparing-for-TeX">20.9 Preparing for TeX</a>
+<li><a href="#Overfull-hboxes">20.10 Overfull &ldquo;hboxes&rdquo;</a>
+<li><a href="#smallbook">20.11 Printing &ldquo;Small&rdquo; Books</a>
+<li><a href="#A4-Paper">20.12 Printing on A4 Paper</a>
+<li><a href="#pagesizes">20.13 <code>@pagesizes</code> [<var>width</var>][, <var>height</var>]: Custom Page Sizes</a>
+<li><a href="#Cropmarks-and-Magnification">20.14 Cropmarks and Magnification</a>
+<li><a href="#PDF-Output">20.15 PDF Output</a>
+<li><a href="#Obtaining-TeX">20.16 How to Obtain TeX</a>
+</li></ul>
+<li><a name="toc_Creating-and-Installing-Info-Files" href="#Creating-and-Installing-Info-Files">21 Creating and Installing Info Files</a>
+<ul>
+<li><a href="#Creating-an-Info-File">21.1 Creating an Info File</a>
+<ul>
+<li><a href="#makeinfo-advantages">21.1.1 <code>makeinfo</code> Preferred</a>
+<li><a href="#Invoking-makeinfo">21.1.2 Running <code>makeinfo</code> from a Shell</a>
+<li><a href="#makeinfo-options">21.1.3 Options for <code>makeinfo</code></a>
+<li><a href="#Pointer-Validation">21.1.4 Pointer Validation</a>
+<li><a href="#makeinfo-in-Emacs">21.1.5 Running <code>makeinfo</code> Within Emacs</a>
+<li><a href="#texinfo_002dformat-commands">21.1.6 The <code>texinfo-format...</code> Commands</a>
+<li><a href="#Batch-Formatting">21.1.7 Batch Formatting</a>
+<li><a href="#Tag-and-Split-Files">21.1.8 Tag Files and Split Files</a>
+</li></ul>
+<li><a href="#Installing-an-Info-File">21.2 Installing an Info File</a>
+<ul>
+<li><a href="#Directory-File">21.2.1 The Directory File <span class="file">dir</span></a>
+<li><a href="#New-Info-File">21.2.2 Listing a New Info File</a>
+<li><a href="#Other-Info-Directories">21.2.3 Info Files in Other Directories</a>
+<li><a href="#Installing-Dir-Entries">21.2.4 Installing Info Directory Files</a>
+<li><a href="#Invoking-install_002dinfo">21.2.5 Invoking <span class="command">install-info</span></a>
+</li></ul>
+</li></ul>
+<li><a name="toc_Generating-HTML" href="#Generating-HTML">22 Generating HTML</a>
+<ul>
+<li><a href="#HTML-Translation">22.1 HTML Translation</a>
+<li><a href="#HTML-Splitting">22.2 HTML Splitting</a>
+<li><a href="#HTML-CSS">22.3 HTML CSS</a>
+<li><a href="#HTML-Xref">22.4 HTML Cross-references</a>
+<ul>
+<li><a href="#HTML-Xref-Link-Basics">22.4.1 HTML Cross-reference Link Basics</a>
+<li><a href="#HTML-Xref-Node-Name-Expansion">22.4.2 HTML Cross-reference Node Name Expansion</a>
+<li><a href="#HTML-Xref-Command-Expansion">22.4.3 HTML Cross-reference Command Expansion</a>
+<li><a href="#HTML-Xref-8_002dbit-Character-Expansion">22.4.4 HTML Cross-reference 8-bit Character Expansion</a>
+<li><a href="#HTML-Xref-Mismatch">22.4.5 HTML Cross-reference Mismatch</a>
+</li></ul>
+</li></ul>
+<li><a name="toc_Command-List" href="#Command-List">Appendix A @-Command List</a>
+<ul>
+<li><a href="#Command-Syntax">A.1 @-Command Syntax</a>
+</li></ul>
+<li><a name="toc_Tips" href="#Tips">Appendix B Tips and Hints</a>
+<li><a name="toc_Sample-Texinfo-Files" href="#Sample-Texinfo-Files">Appendix C Sample Texinfo Files</a>
+<ul>
+<li><a href="#Short-Sample-Texinfo-File">C.1 Short Sample</a>
+<li><a href="#GNU-Sample-Texts">C.2 GNU Sample Texts</a>
+<li><a href="#Verbatim-Copying-License">C.3 Verbatim Copying License</a>
+<li><a href="#All_002dpermissive-Copying-License">C.4 All-permissive Copying License</a>
+</li></ul>
+<li><a name="toc_Include-Files" href="#Include-Files">Appendix D Include Files</a>
+<ul>
+<li><a href="#Using-Include-Files">D.1 How to Use Include Files</a>
+<li><a href="#texinfo_002dmultiple_002dfiles_002dupdate">D.2 <code>texinfo-multiple-files-update</code></a>
+<li><a href="#Include-Files-Requirements">D.3 Include Files Requirements</a>
+<li><a href="#Sample-Include-File">D.4 Sample File with <code>@include</code></a>
+<li><a href="#Include-Files-Evolution">D.5 Evolution of Include Files</a>
+</li></ul>
+<li><a name="toc_Headings" href="#Headings">Appendix E Page Headings</a>
+<ul>
+<li><a href="#Headings-Introduced">E.1 Headings Introduced</a>
+<li><a href="#Heading-Format">E.2 Standard Heading Formats</a>
+<li><a href="#Heading-Choice">E.3 Specifying the Type of Heading</a>
+<li><a href="#Custom-Headings">E.4 How to Make Your Own Headings</a>
+</li></ul>
+<li><a name="toc_Catching-Mistakes" href="#Catching-Mistakes">Appendix F Formatting Mistakes</a>
+<ul>
+<li><a href="#makeinfo-Preferred">F.1 <code>makeinfo</code> Find Errors</a>
+<li><a href="#Debugging-with-Info">F.2 Catching Errors with Info Formatting</a>
+<li><a href="#Debugging-with-TeX">F.3 Catching Errors with TeX Formatting</a>
+<li><a href="#Using-texinfo_002dshow_002dstructure">F.4 Using <code>texinfo-show-structure</code></a>
+<li><a href="#Using-occur">F.5 Using <code>occur</code></a>
+<li><a href="#Running-Info_002dValidate">F.6 Finding Badly Referenced Nodes</a>
+<ul>
+<li><a href="#Using-Info_002dvalidate">F.6.1 Running <code>Info-validate</code></a>
+<li><a href="#Unsplit">F.6.2 Creating an Unsplit File</a>
+<li><a href="#Tagifying">F.6.3 Tagifying a File</a>
+<li><a href="#Splitting">F.6.4 Splitting a File Manually</a>
+</li></ul>
+</li></ul>
+<li><a name="toc_Copying-This-Manual" href="#Copying-This-Manual">Appendix G Copying This Manual</a>
+<ul>
+<li><a href="#GNU-Free-Documentation-License">G.1 GNU Free Documentation License</a>
+<ul>
+<li><a href="#GNU-Free-Documentation-License">G.1.1 ADDENDUM: How to use this License for your documents</a>
+</li></ul>
+</li></ul>
+<li><a name="toc_Command-and-Variable-Index" href="#Command-and-Variable-Index">Command and Variable Index</a>
+<li><a name="toc_Concept-Index" href="#Concept-Index">Concept Index</a>
+</li></ul>
+</div>
+
+<div class="node">
+<p><hr>
+<a name="Top"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Copying-Conditions">Copying Conditions</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#dir">(dir)</a>
+<br>
+</div>
+
+<h2 class="unnumbered">Texinfo</h2>
+
+<p>This manual is for GNU Texinfo (version 4.7, 9 April 2004),
+a documentation system that can produce both online information and a
+printed manual from a single source.
+
+ <p>Copyright (C) 1988, 1990, 1991, 1992, 1993, 1995, 1996, 1997, 1998,
+1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+
+ <blockquote>
+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 no
+Invariant Sections, with the Front-Cover texts being &ldquo;A GNU Manual,&rdquo;
+and with the Back-Cover Texts as in (a) below. A copy of the license is
+included in the section entitled &ldquo;GNU Free Documentation License.&rdquo;
+
+ <p>(a) The FSF's Back-Cover Text is: &ldquo;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.&rdquo;
+</blockquote>
+
+ <p>The first part of this master menu lists the major nodes in this Info
+document, including the @-command and concept indices. The rest of
+the menu lists all the lower level nodes in the document.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Copying-Conditions">Copying Conditions</a>: Your rights.
+<li><a accesskey="2" href="#Overview">Overview</a>: Texinfo in brief.
+<li><a accesskey="3" href="#Texinfo-Mode">Texinfo Mode</a>: Using the GNU Emacs Texinfo mode.
+<li><a accesskey="4" href="#Beginning-a-File">Beginning a File</a>: What is at the beginning of a Texinfo file?
+<li><a accesskey="5" href="#Ending-a-File">Ending a File</a>: What is at the end of a Texinfo file?
+<li><a accesskey="6" href="#Structuring">Structuring</a>: Creating chapters, sections, appendices, etc.
+<li><a accesskey="7" href="#Nodes">Nodes</a>: Writing nodes, the basic unit of Texinfo.
+<li><a accesskey="8" href="#Menus">Menus</a>: Writing menus.
+<li><a accesskey="9" href="#Cross-References">Cross References</a>: Writing cross references.
+<li><a href="#Marking-Text">Marking Text</a>: Marking words and phrases as code,
+ keyboard input, meta-syntactic
+ variables, and the like.
+<li><a href="#Quotations-and-Examples">Quotations and Examples</a>: Block quotations, examples, etc.
+<li><a href="#Lists-and-Tables">Lists and Tables</a>: Itemized or numbered lists, and tables.
+<li><a href="#Special-Displays">Special Displays</a>: Floating figures and footnotes.
+<li><a href="#Indices">Indices</a>: Creating indices.
+<li><a href="#Insertions">Insertions</a>: Inserting @-signs, braces, etc.
+<li><a href="#Breaks">Breaks</a>: Forcing or preventing line and page breaks.
+<li><a href="#Definition-Commands">Definition Commands</a>: Describing functions and the like uniformly.
+<li><a href="#Conditionals">Conditionals</a>: Specifying text for only some output cases.
+<li><a href="#Internationalization">Internationalization</a>: Supporting languages other than English.
+<li><a href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a>: User-defined macros and aliases.
+<li><a href="#Hardcopy">Hardcopy</a>: Output for paper, with TeX.
+<li><a href="#Creating-and-Installing-Info-Files">Creating and Installing Info Files</a>: Details on Info output.
+<li><a href="#Generating-HTML">Generating HTML</a>: Details on HTML output.
+
+<li><a href="#Command-List">Command List</a>: All the Texinfo @-commands.
+<li><a href="#Tips">Tips</a>: Hints on how to write a Texinfo document.
+<li><a href="#Sample-Texinfo-Files">Sample Texinfo Files</a>: Complete examples, including full texts.
+<li><a href="#Include-Files">Include Files</a>: How to incorporate other Texinfo files.
+<li><a href="#Headings">Headings</a>: How to write page headings and footings.
+<li><a href="#Catching-Mistakes">Catching Mistakes</a>: How to find formatting mistakes.
+<li><a href="#Copying-This-Manual">Copying This Manual</a>: The GNU Free Documentation License.
+<li><a href="#Command-and-Variable-Index">Command and Variable Index</a>: A menu containing commands and variables.
+<li><a href="#Concept-Index">Concept Index</a>: A menu covering many topics.
+
+</li></ul>
+<p>--- The Detailed Node Listing ---
+
+<p>Overview of Texinfo
+
+</p>
+<ul class="menu">
+<li><a href="#Reporting-Bugs">Reporting Bugs</a>: Submitting effective bug reports.
+<li><a href="#Using-Texinfo">Using Texinfo</a>: Create printed or online output.
+<li><a href="#Output-Formats">Output Formats</a>: Overview of the supported output formats.
+<li><a href="#Info-Files">Info Files</a>: What is an Info file?
+<li><a href="#Printed-Books">Printed Books</a>: Characteristics of a printed book or manual.
+<li><a href="#Formatting-Commands">Formatting Commands</a>: @-commands are used for formatting.
+<li><a href="#Conventions">Conventions</a>: General rules for writing a Texinfo file.
+<li><a href="#Comments">Comments</a>: Writing comments and ignored text in general.
+<li><a href="#Minimum">Minimum</a>: What a Texinfo file must have.
+<li><a href="#Six-Parts">Six Parts</a>: Usually, a Texinfo file has six parts.
+<li><a href="#Short-Sample">Short Sample</a>: A short sample Texinfo file.
+<li><a href="#History">History</a>: Acknowledgements, contributors and genesis.
+
+</li></ul>
+<p>Using Texinfo Mode
+
+</p>
+<ul class="menu">
+<li><a href="#Texinfo-Mode-Overview">Texinfo Mode Overview</a>: How Texinfo mode can help you.
+<li><a href="#Emacs-Editing">Emacs Editing</a>: Texinfo mode adds to GNU Emacs' general
+ purpose editing features.
+<li><a href="#Inserting">Inserting</a>: How to insert frequently used @-commands.
+<li><a href="#Showing-the-Structure">Showing the Structure</a>: How to show the structure of a file.
+<li><a href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a>: How to update or create new nodes and menus.
+<li><a href="#Info-Formatting">Info Formatting</a>: How to format for Info.
+<li><a href="#Printing">Printing</a>: How to format and print part or all of a file.
+<li><a href="#Texinfo-Mode-Summary">Texinfo Mode Summary</a>: Summary of all the Texinfo mode commands.
+
+</li></ul>
+<p>Updating Nodes and Menus
+
+</p>
+<ul class="menu">
+<li><a href="#Updating-Commands">Updating Commands</a>: Five major updating commands.
+<li><a href="#Updating-Requirements">Updating Requirements</a>: How to structure a Texinfo file for
+ using the updating command.
+<li><a href="#Other-Updating-Commands">Other Updating Commands</a>: How to indent descriptions, insert
+ missing nodes lines, and update
+ nodes in sequence.
+
+</li></ul>
+<p>Beginning a Texinfo File
+
+</p>
+<ul class="menu">
+<li><a href="#Sample-Beginning">Sample Beginning</a>: A sample beginning for a Texinfo file.
+<li><a href="#Texinfo-File-Header">Texinfo File Header</a>: The first lines.
+<li><a href="#Document-Permissions">Document Permissions</a>: Ensuring your manual is free.
+<li><a href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>: Creating the title and copyright pages.
+<li><a href="#Contents">Contents</a>: How to create a table of contents.
+<li><a href="#The-Top-Node">The Top Node</a>: Creating the `Top' node and master menu.
+<li><a href="#Global-Document-Commands">Global Document Commands</a>: Affecting formatting throughout.
+<li><a href="#Software-Copying-Permissions">Software Copying Permissions</a>: Ensure that you and others continue to
+ have the right to use and share software.
+
+</li></ul>
+<p>Texinfo File Header
+
+</p>
+<ul class="menu">
+<li><a href="#First-Line">First Line</a>: The first line of a Texinfo file.
+<li><a href="#Start-of-Header">Start of Header</a>: Formatting a region requires this.
+<li><a href="#setfilename">setfilename</a>: Tell Info the name of the Info file.
+<li><a href="#settitle">settitle</a>: Create a title for the printed work.
+<li><a href="#End-of-Header">End of Header</a>: Formatting a region requires this.
+
+</li></ul>
+<p>Document Permissions
+
+</p>
+<ul class="menu">
+<li><a href="#copying">copying</a>: Declare the document's copying permissions.
+<li><a href="#insertcopying">insertcopying</a>: Where to insert the permissions.
+
+</li></ul>
+<p>Title and Copyright Pages
+
+</p>
+<ul class="menu">
+<li><a href="#titlepage">titlepage</a>: Create a title for the printed document.
+<li><a href="#titlefont-center-sp">titlefont center sp</a>: The <code>@titlefont</code>, <code>@center</code>,
+ and <code>@sp</code> commands.
+<li><a href="#title-subtitle-author">title subtitle author</a>: The <code>@title</code>, <code>@subtitle</code>,
+ and <code>@author</code> commands.
+<li><a href="#Copyright">Copyright</a>: How to write the copyright notice and
+ include copying permissions.
+<li><a href="#end-titlepage">end titlepage</a>: Turn on page headings after the title and
+ copyright pages.
+<li><a href="#headings-on-off">headings on off</a>: An option for turning headings on and off
+ and double or single sided printing.
+
+</li></ul>
+<p>The `Top' Node and Master Menu
+
+</p>
+<ul class="menu">
+<li><a href="#Top-Node-Example">Top Node Example</a>
+<li><a href="#Master-Menu-Parts">Master Menu Parts</a>
+
+</li></ul>
+<p>Global Document Commands
+
+</p>
+<ul class="menu">
+<li><a href="#documentdescription">documentdescription</a>: Document summary for the HTML output.
+<li><a href="#setchapternewpage">setchapternewpage</a>: Start chapters on right-hand pages.
+<li><a href="#paragraphindent">paragraphindent</a>: Specify paragraph indentation.
+<li><a href="#firstparagraphindent">firstparagraphindent</a>: Suppress indentation of the first paragraph.
+<li><a href="#exampleindent">exampleindent</a>: Specify environment indentation.
+
+</li></ul>
+<p>Ending a Texinfo File
+
+</p>
+<ul class="menu">
+<li><a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>: How to print an index in hardcopy and
+ generate index menus in Info.
+<li><a href="#File-End">File End</a>: How to mark the end of a file.
+
+</li></ul>
+<p>Chapter Structuring
+
+</p>
+<ul class="menu">
+<li><a href="#Tree-Structuring">Tree Structuring</a>: A manual is like an upside down tree ...
+<li><a href="#Structuring-Command-Types">Structuring Command Types</a>: How to divide a manual into parts.
+<li><a href="#makeinfo-top">makeinfo top</a>: The <code>@top</code> command, part of the `Top' node.
+<li><a href="#chapter">chapter</a>
+<li><a href="#unnumbered-_0026-appendix">unnumbered &amp; appendix</a>
+<li><a href="#majorheading-_0026-chapheading">majorheading &amp; chapheading</a>
+<li><a href="#section">section</a>
+<li><a href="#unnumberedsec-appendixsec-heading">unnumberedsec appendixsec heading</a>
+<li><a href="#subsection">subsection</a>
+<li><a href="#unnumberedsubsec-appendixsubsec-subheading">unnumberedsubsec appendixsubsec subheading</a>
+<li><a href="#subsubsection">subsubsection</a>: Commands for the lowest level sections.
+<li><a href="#Raise_002flower-sections">Raise/lower sections</a>: How to change commands' hierarchical level.
+
+</li></ul>
+<p>Nodes
+
+</p>
+<ul class="menu">
+<li><a href="#Two-Paths">Two Paths</a>: Different commands to structure
+ Info output and printed output.
+<li><a href="#Node-Menu-Illustration">Node Menu Illustration</a>: A diagram, and sample nodes and menus.
+<li><a href="#node">node</a>: Creating nodes, in detail.
+<li><a href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a>: Letting makeinfo determine node pointers.
+<li><a href="#anchor">anchor</a>: Defining arbitrary cross-reference targets.
+
+</li></ul>
+<p>The <code>@node</code> Command
+
+</p>
+<ul class="menu">
+<li><a href="#Node-Names">Node Names</a>: How to choose node and pointer names.
+<li><a href="#Writing-a-Node">Writing a Node</a>: How to write an <code>@node</code> line.
+<li><a href="#Node-Line-Tips">Node Line Tips</a>: Keep names short.
+<li><a href="#Node-Line-Requirements">Node Line Requirements</a>: Keep names unique, without @-commands.
+<li><a href="#First-Node">First Node</a>: How to write a `Top' node.
+<li><a href="#makeinfo-top-command">makeinfo top command</a>: How to use the <code>@top</code> command.
+
+</li></ul>
+<p>Menus
+
+</p>
+<ul class="menu">
+<li><a href="#Menu-Location">Menu Location</a>: Menus go at the ends of short nodes.
+<li><a href="#Writing-a-Menu">Writing a Menu</a>: What is a menu?
+<li><a href="#Menu-Parts">Menu Parts</a>: A menu entry has three parts.
+<li><a href="#Less-Cluttered-Menu-Entry">Less Cluttered Menu Entry</a>: Two part menu entry.
+<li><a href="#Menu-Example">Menu Example</a>: Two and three part menu entries.
+<li><a href="#Other-Info-Files">Other Info Files</a>: How to refer to a different Info file.
+
+</li></ul>
+<p>Cross References
+
+</p>
+<ul class="menu">
+<li><a href="#References">References</a>: What cross references are for.
+<li><a href="#Cross-Reference-Commands">Cross Reference Commands</a>: A summary of the different commands.
+<li><a href="#Cross-Reference-Parts">Cross Reference Parts</a>: A cross reference has several parts.
+<li><a href="#xref">xref</a>: Begin a reference with `See' ...
+<li><a href="#Top-Node-Naming">Top Node Naming</a>: How to refer to the beginning of another file.
+<li><a href="#ref">ref</a>: A reference for the last part of a sentence.
+<li><a href="#pxref">pxref</a>: How to write a parenthetical cross reference.
+<li><a href="#inforef">inforef</a>: How to refer to an Info-only file.
+<li><a href="#uref">uref</a>: How to refer to a uniform resource locator.
+
+</li></ul>
+<p><code>@xref</code>
+
+</p>
+<ul class="menu">
+<li><a href="#Reference-Syntax">Reference Syntax</a>: What a reference looks like and requires.
+<li><a href="#One-Argument">One Argument</a>: <code>@xref</code> with one argument.
+<li><a href="#Two-Arguments">Two Arguments</a>: <code>@xref</code> with two arguments.
+<li><a href="#Three-Arguments">Three Arguments</a>: <code>@xref</code> with three arguments.
+<li><a href="#Four-and-Five-Arguments">Four and Five Arguments</a>: <code>@xref</code> with four and five arguments.
+
+</li></ul>
+<p>Marking Words and Phrases
+
+</p>
+<ul class="menu">
+<li><a href="#Indicating">Indicating</a>: How to indicate definitions, files, etc.
+<li><a href="#Emphasis">Emphasis</a>: How to emphasize text.
+
+</li></ul>
+<p>Indicating Definitions, Commands, etc.
+
+</p>
+<ul class="menu">
+<li><a href="#Useful-Highlighting">Useful Highlighting</a>: Highlighting provides useful information.
+<li><a href="#code">code</a>: Indicating program code.
+<li><a href="#kbd">kbd</a>: Showing keyboard input.
+<li><a href="#key">key</a>: Specifying keys.
+<li><a href="#samp">samp</a>: A literal sequence of characters.
+<li><a href="#verb">verb</a>: A verbatim sequence of characters.
+<li><a href="#var">var</a>: Indicating metasyntactic variables.
+<li><a href="#env">env</a>: Indicating environment variables.
+<li><a href="#file">file</a>: Indicating file names.
+<li><a href="#command">command</a>: Indicating command names.
+<li><a href="#option">option</a>: Indicating option names.
+<li><a href="#dfn">dfn</a>: Specifying definitions.
+<li><a href="#cite">cite</a>: Referring to books not in the Info system.
+<li><a href="#acronym">acronym</a>: Indicating acronyms.
+<li><a href="#indicateurl">indicateurl</a>: Indicating a World Wide Web reference.
+<li><a href="#email">email</a>: Indicating an electronic mail address.
+
+</li></ul>
+<p>Emphasizing Text
+
+</p>
+<ul class="menu">
+<li><a href="#emph-_0026-strong">emph &amp; strong</a>: How to emphasize text in Texinfo.
+<li><a href="#Smallcaps">Smallcaps</a>: How to use the small caps font.
+<li><a href="#Fonts">Fonts</a>: Various font commands for printed output.
+
+</li></ul>
+<p>Quotations and Examples
+
+</p>
+<ul class="menu">
+<li><a href="#Block-Enclosing-Commands">Block Enclosing Commands</a>: Different constructs for different purposes.
+<li><a href="#quotation">quotation</a>: Writing a quotation.
+<li><a href="#example">example</a>: Writing an example in a fixed-width font.
+<li><a href="#verbatim">verbatim</a>: Writing a verbatim example.
+<li><a href="#verbatiminclude">verbatiminclude</a>: Including a file verbatim.
+<li><a href="#lisp">lisp</a>: Illustrating Lisp code.
+<li><a href="#small">small</a>: Examples in a smaller font.
+<li><a href="#display">display</a>: Writing an example in the current font.
+<li><a href="#format">format</a>: Writing an example without narrowed margins.
+<li><a href="#exdent">exdent</a>: Undo indentation on a line.
+<li><a href="#flushleft-_0026-flushright">flushleft &amp; flushright</a>: Pushing text flush left or flush right.
+<li><a href="#noindent">noindent</a>: Preventing paragraph indentation.
+<li><a href="#indent">indent</a>: Forcing paragraph indentation.
+<li><a href="#cartouche">cartouche</a>: Drawing rounded rectangles around examples.
+
+</li></ul>
+<p>Lists and Tables
+
+</p>
+<ul class="menu">
+<li><a href="#Introducing-Lists">Introducing Lists</a>: Texinfo formats lists for you.
+<li><a href="#itemize">itemize</a>: How to construct a simple list.
+<li><a href="#enumerate">enumerate</a>: How to construct a numbered list.
+<li><a href="#Two_002dcolumn-Tables">Two-column Tables</a>: How to construct a two-column table.
+<li><a href="#Multi_002dcolumn-Tables">Multi-column Tables</a>: How to construct generalized tables.
+
+</li></ul>
+<p>Making a Two-column Table
+
+</p>
+<ul class="menu">
+<li><a href="#table">table</a>: How to construct a two-column table.
+<li><a href="#ftable-vtable">ftable vtable</a>: Automatic indexing for two-column tables.
+<li><a href="#itemx">itemx</a>: How to put more entries in the first column.
+
+</li></ul>
+<p><code>@multitable</code>: Multi-column Tables
+
+</p>
+<ul class="menu">
+<li><a href="#Multitable-Column-Widths">Multitable Column Widths</a>: Defining multitable column widths.
+<li><a href="#Multitable-Rows">Multitable Rows</a>: Defining multitable rows, with examples.
+
+</li></ul>
+<p>Special Displays
+
+</p>
+<ul class="menu">
+<li><a href="#Floats">Floats</a>: Figures, tables, and the like.
+<li><a href="#Images">Images</a>: Including graphics and images.
+<li><a href="#Footnotes">Footnotes</a>: Writing footnotes.
+
+</li></ul>
+<p>Floats
+
+</p>
+<ul class="menu">
+<li><a href="#float">float</a>: Producing floating material.
+<li><a href="#caption-shortcaption">caption shortcaption</a>: Specifying descriptions for floats.
+<li><a href="#listoffloats">listoffloats</a>: A table of contents for floats.
+
+</li></ul>
+<p>Inserting Images
+
+</p>
+<ul class="menu">
+<li><a href="#Image-Syntax">Image Syntax</a>
+<li><a href="#Image-Scaling">Image Scaling</a>
+
+</li></ul>
+<p>Footnotes
+
+</p>
+<ul class="menu">
+<li><a href="#Footnote-Commands">Footnote Commands</a>: How to write a footnote in Texinfo.
+<li><a href="#Footnote-Styles">Footnote Styles</a>: Controlling how footnotes appear in Info.
+
+</li></ul>
+<p>Indices
+
+</p>
+<ul class="menu">
+<li><a href="#Index-Entries">Index Entries</a>: Choose different words for index entries.
+<li><a href="#Predefined-Indices">Predefined Indices</a>: Use different indices for different kinds
+ of entries.
+<li><a href="#Indexing-Commands">Indexing Commands</a>: How to make an index entry.
+<li><a href="#Combining-Indices">Combining Indices</a>: How to combine indices.
+<li><a href="#New-Indices">New Indices</a>: How to define your own indices.
+
+</li></ul>
+<p>Combining Indices
+
+</p>
+<ul class="menu">
+<li><a href="#syncodeindex">syncodeindex</a>: How to merge two indices, using <code>@code</code>
+ font for the merged-from index.
+<li><a href="#synindex">synindex</a>: How to merge two indices, using the
+ default font of the merged-to index.
+
+</li></ul>
+<p>Special Insertions
+
+</p>
+<ul class="menu">
+<li><a href="#Atsign-Braces-Comma">Atsign Braces Comma</a>: Inserting @ and {} and ,.
+<li><a href="#Inserting-Space">Inserting Space</a>: How to insert the right amount of space
+ within a sentence.
+<li><a href="#Inserting-Accents">Inserting Accents</a>: How to insert accents and special characters.
+<li><a href="#Dots-Bullets">Dots Bullets</a>: How to insert dots and bullets.
+<li><a href="#TeX-and-copyright">TeX and copyright</a>: How to insert the TeX logo
+ and the copyright symbol.
+<li><a href="#pounds">pounds</a>: How to insert the pounds currency symbol.
+<li><a href="#minus">minus</a>: How to insert a minus sign.
+<li><a href="#math">math</a>: How to format a mathematical expression.
+<li><a href="#Glyphs">Glyphs</a>: How to indicate results of evaluation,
+ expansion of macros, errors, etc.
+
+</li></ul>
+<p>Inserting @ and {} and ,
+
+</p>
+<ul class="menu">
+<li><a href="#Inserting-an-Atsign">Inserting an Atsign</a>
+<li><a href="#Inserting-Braces">Inserting Braces</a>
+<li><a href="#Inserting-a-Comma">Inserting a Comma</a>
+
+</li></ul>
+<p>Inserting Space
+
+</p>
+<ul class="menu">
+<li><a href="#Not-Ending-a-Sentence">Not Ending a Sentence</a>: Sometimes a . doesn't end a sentence.
+<li><a href="#Ending-a-Sentence">Ending a Sentence</a>: Sometimes it does.
+<li><a href="#Multiple-Spaces">Multiple Spaces</a>: Inserting multiple spaces.
+<li><a href="#dmn">dmn</a>: How to format a dimension.
+
+</li></ul>
+<p>Inserting Ellipsis and Bullets
+
+</p>
+<ul class="menu">
+<li><a href="#dots">dots</a>: How to insert dots ...
+<li><a href="#bullet">bullet</a>: How to insert a bullet.
+
+</li></ul>
+<p>Inserting TeX and Legal Symbols: &copy;, &reg;
+
+</p>
+<ul class="menu">
+<li><a href="#tex">tex</a>: The TeX logos.
+<li><a href="#copyright-symbol">copyright symbol</a>: The copyright symbol (c in a circle).
+<li><a href="#registered-symbol">registered symbol</a>: The registered symbol (R in a circle).
+
+</li></ul>
+<p>Glyphs for Examples
+
+</p>
+<ul class="menu">
+<li><a href="#Glyphs-Summary">Glyphs Summary</a>
+<li><a href="#result">result</a>: How to show the result of expression.
+<li><a href="#expansion">expansion</a>: How to indicate an expansion.
+<li><a href="#Print-Glyph">Print Glyph</a>: How to indicate printed output.
+<li><a href="#Error-Glyph">Error Glyph</a>: How to indicate an error message.
+<li><a href="#Equivalence">Equivalence</a>: How to indicate equivalence.
+<li><a href="#Point-Glyph">Point Glyph</a>: How to indicate the location of point.
+
+</li></ul>
+<p>Glyphs Summary
+
+</p>
+<ul class="menu">
+<li><a href="#result">result</a>
+<li><a href="#expansion">expansion</a>
+<li><a href="#Print-Glyph">Print Glyph</a>
+<li><a href="#Error-Glyph">Error Glyph</a>
+<li><a href="#Equivalence">Equivalence</a>
+<li><a href="#Point-Glyph">Point Glyph</a>
+
+</li></ul>
+<p>Forcing and Preventing Breaks
+
+</p>
+<ul class="menu">
+<li><a href="#Break-Commands">Break Commands</a>: Summary of break-related commands.
+<li><a href="#Line-Breaks">Line Breaks</a>: Forcing line breaks.
+<li><a href="#_002d-and-hyphenation">- and hyphenation</a>: Helping TeX with hyphenation points.
+<li><a href="#w">w</a>: Preventing unwanted line breaks in text.
+<li><a href="#tie">tie</a>: Inserting an unbreakable but varying space.
+<li><a href="#sp">sp</a>: Inserting blank lines.
+<li><a href="#page">page</a>: Forcing the start of a new page.
+<li><a href="#group">group</a>: Preventing unwanted page breaks.
+<li><a href="#need">need</a>: Another way to prevent unwanted page breaks.
+
+</li></ul>
+<p>Definition Commands
+
+</p>
+<ul class="menu">
+<li><a href="#Def-Cmd-Template">Def Cmd Template</a>: Writing descriptions using definition commands.
+<li><a href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a>: Continuing the heading over source lines.
+<li><a href="#Optional-Arguments">Optional Arguments</a>: Handling optional and repeated arguments.
+<li><a href="#deffnx">deffnx</a>: Group two or more `first' lines.
+<li><a href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>: Reference for all the definition commands.
+<li><a href="#Def-Cmd-Conventions">Def Cmd Conventions</a>: Conventions for writing definitions.
+<li><a href="#Sample-Function-Definition">Sample Function Definition</a>: An example.
+
+</li></ul>
+<p>The Definition Commands
+
+</p>
+<ul class="menu">
+<li><a href="#Functions-Commands">Functions Commands</a>: Commands for functions and similar entities.
+<li><a href="#Variables-Commands">Variables Commands</a>: Commands for variables and similar entities.
+<li><a href="#Typed-Functions">Typed Functions</a>: Commands for functions in typed languages.
+<li><a href="#Typed-Variables">Typed Variables</a>: Commands for variables in typed languages.
+<li><a href="#Data-Types">Data Types</a>: The definition command for data types.
+<li><a href="#Abstract-Objects">Abstract Objects</a>: Commands for object-oriented programming.
+
+</li></ul>
+<p>Object-Oriented Programming
+
+</p>
+<ul class="menu">
+<li><a href="#Object_002dOriented-Variables">Variables</a>
+<li><a href="#Object_002dOriented-Methods">Methods</a>
+
+</li></ul>
+<p>Conditionally Visible Text
+
+</p>
+<ul class="menu">
+<li><a href="#Conditional-Commands">Conditional Commands</a>: Text for a given format.
+<li><a href="#Conditional-Not-Commands">Conditional Not Commands</a>: Text for any format other than a given one.
+<li><a href="#Raw-Formatter-Commands">Raw Formatter Commands</a>: Using raw formatter commands.
+<li><a href="#set-clear-value">set clear value</a>: Variable tests and substitutions.
+<li><a href="#Conditional-Nesting">Conditional Nesting</a>: Using conditionals inside conditionals.
+
+</li></ul>
+<p><code>@set</code>, <code>@clear</code>, and <code>@value</code>
+
+</p>
+<ul class="menu">
+<li><a href="#set-value">set value</a>: Expand a flag variable to a string.
+<li><a href="#ifset-ifclear">ifset ifclear</a>: Format a region if a flag is set.
+<li><a href="#value-Example">value Example</a>: An easy way to update edition information.
+
+</li></ul>
+<p>Internationalization
+
+</p>
+<ul class="menu">
+<li><a href="#documentlanguage">documentlanguage</a>: Declaring the current language.
+<li><a href="#documentencoding">documentencoding</a>: Declaring the input encoding.
+
+</li></ul>
+<p>Defining New Texinfo Commands
+
+</p>
+<ul class="menu">
+<li><a href="#Defining-Macros">Defining Macros</a>: Defining and undefining new commands.
+<li><a href="#Invoking-Macros">Invoking Macros</a>: Using a macro, once you've defined it.
+<li><a href="#Macro-Details">Macro Details</a>: Limitations of Texinfo macros.
+<li><a href="#alias">alias</a>: Command aliases.
+<li><a href="#definfoenclose">definfoenclose</a>: Customized highlighting.
+
+</li></ul>
+<p>Formatting and Printing Hardcopy
+
+</p>
+<ul class="menu">
+<li><a href="#Use-TeX">Use TeX</a>: Use TeX to format for hardcopy.
+<li><a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a>: How to format with explicit shell commands.
+<li><a href="#Format-with-texi2dvi">Format with texi2dvi</a>: A simpler way to format.
+<li><a href="#Print-with-lpr">Print with lpr</a>: How to print.
+<li><a href="#Within-Emacs">Within Emacs</a>: How to format and print from an Emacs shell.
+<li><a href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a>: How to format and print in Texinfo mode.
+<li><a href="#Compile_002dCommand">Compile-Command</a>: How to print using Emacs's compile command.
+<li><a href="#Requirements-Summary">Requirements Summary</a>: TeX formatting requirements summary.
+<li><a href="#Preparing-for-TeX">Preparing for TeX</a>: What to do before you use TeX.
+<li><a href="#Overfull-hboxes">Overfull hboxes</a>: What are and what to do with overfull hboxes.
+<li><a href="#smallbook">smallbook</a>: How to print small format books and manuals.
+<li><a href="#A4-Paper">A4 Paper</a>: How to print on A4 or A5 paper.
+<li><a href="#pagesizes">pagesizes</a>: How to print with customized page sizes.
+<li><a href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a>: How to print marks to indicate the size
+ of pages and how to print scaled up output.
+<li><a href="#PDF-Output">PDF Output</a>: Portable Document Format output.
+<li><a href="#Obtaining-TeX">Obtaining TeX</a>: How to Obtain TeX.
+
+</li></ul>
+<p>Creating and Installing Info Files
+
+</p>
+<ul class="menu">
+<li><a href="#Creating-an-Info-File">Creating an Info File</a>
+<li><a href="#Installing-an-Info-File">Installing an Info File</a>
+
+</li></ul>
+<p>Creating an Info File
+
+</p>
+<ul class="menu">
+<li><a href="#makeinfo-advantages">makeinfo advantages</a>: <code>makeinfo</code> provides better error checking.
+<li><a href="#Invoking-makeinfo">Invoking makeinfo</a>: How to run <code>makeinfo</code> from a shell.
+<li><a href="#makeinfo-options">makeinfo options</a>: Specify fill-column and other options.
+<li><a href="#Pointer-Validation">Pointer Validation</a>: How to check that pointers point somewhere.
+<li><a href="#makeinfo-in-Emacs">makeinfo in Emacs</a>: How to run <code>makeinfo</code> from Emacs.
+<li><a href="#texinfo_002dformat-commands">texinfo-format commands</a>: Two Info formatting commands written
+ in Emacs Lisp are an alternative
+ to <code>makeinfo</code>.
+<li><a href="#Batch-Formatting">Batch Formatting</a>: How to format for Info in Emacs Batch mode.
+<li><a href="#Tag-and-Split-Files">Tag and Split Files</a>: How tagged and split files help Info
+ to run better.
+
+</li></ul>
+<p>Installing an Info File
+
+</p>
+<ul class="menu">
+<li><a href="#Directory-File">Directory File</a>: The top level menu for all Info files.
+<li><a href="#New-Info-File">New Info File</a>: Listing a new Info file.
+<li><a href="#Other-Info-Directories">Other Info Directories</a>: How to specify Info files that are
+ located in other directories.
+<li><a href="#Installing-Dir-Entries">Installing Dir Entries</a>: How to specify what menu entry to add
+ to the Info directory.
+<li><a href="#Invoking-install_002dinfo">Invoking install-info</a>: <code>install-info</code> options.
+
+</li></ul>
+<p>Generating HTML
+
+</p>
+<ul class="menu">
+<li><a href="#HTML-Translation">HTML Translation</a>: Details of the HTML output.
+<li><a href="#HTML-Splitting">HTML Splitting</a>: How HTML output is split.
+<li><a href="#HTML-CSS">HTML CSS</a>: Influencing HTML output with Cascading Style Sheets.
+<li><a href="#HTML-Xref">HTML Xref</a>: Cross-references in HTML output.
+
+</li></ul>
+<p>HTML Cross-references
+
+</p>
+<ul class="menu">
+<li><a href="#HTML-Xref-Link-Basics">Link Basics</a>
+<li><a href="#HTML-Xref-Node-Name-Expansion">Node Expansion</a>
+<li><a href="#HTML-Xref-Command-Expansion">Command Expansion</a>
+<li><a href="#HTML-Xref-8_002dbit-Character-Expansion">8-bit Expansion</a>
+<li><a href="#HTML-Xref-Mismatch">Mismatch</a>
+
+</li></ul>
+<p>@-Command List
+
+</p>
+<ul class="menu">
+<li><a href="#Command-Syntax">Command Syntax</a>: General syntax for varieties of @-commands.
+
+</li></ul>
+<p>Sample Texinfo Files
+
+</p>
+<ul class="menu">
+<li><a href="#Short-Sample-Texinfo-File">Short Sample Texinfo File</a>
+<li><a href="#GNU-Sample-Texts">GNU Sample Texts</a>
+<li><a href="#Verbatim-Copying-License">Verbatim Copying License</a>
+<li><a href="#All_002dpermissive-Copying-License">All-permissive Copying License</a>
+
+</li></ul>
+<p>Copying This Manual
+
+</p>
+<ul class="menu">
+<li><a href="#GNU-Free-Documentation-License">GNU Free Documentation License</a>: License for copying this manual.
+
+</li></ul>
+<p>Include Files
+
+</p>
+<ul class="menu">
+<li><a href="#Using-Include-Files">Using Include Files</a>: How to use the <code>@include</code> command.
+<li><a href="#texinfo_002dmultiple_002dfiles_002dupdate">texinfo-multiple-files-update</a>: How to create and update nodes and
+ menus when using included files.
+<li><a href="#Include-Files-Requirements">Include Files Requirements</a>: <code>texinfo-multiple-files-update</code> needs.
+<li><a href="#Sample-Include-File">Sample Include File</a>: A sample outer file with included files
+ within it; and a sample included file.
+<li><a href="#Include-Files-Evolution">Include Files Evolution</a>: How use of the <code>@include</code> command
+ has changed over time.
+
+</li></ul>
+<p>Page Headings
+
+</p>
+<ul class="menu">
+<li><a href="#Headings-Introduced">Headings Introduced</a>: Conventions for using page headings.
+<li><a href="#Heading-Format">Heading Format</a>: Standard page heading formats.
+<li><a href="#Heading-Choice">Heading Choice</a>: How to specify the type of page heading.
+<li><a href="#Custom-Headings">Custom Headings</a>: How to create your own headings and footings.
+
+</li></ul>
+<p>Formatting Mistakes
+
+</p>
+<ul class="menu">
+<li><a href="#makeinfo-Preferred">makeinfo Preferred</a>: <code>makeinfo</code> finds errors.
+<li><a href="#Debugging-with-Info">Debugging with Info</a>: How to catch errors with Info formatting.
+<li><a href="#Debugging-with-TeX">Debugging with TeX</a>: How to catch errors with TeX formatting.
+<li><a href="#Using-texinfo_002dshow_002dstructure">Using texinfo-show-structure</a>: How to use <code>texinfo-show-structure</code>.
+<li><a href="#Using-occur">Using occur</a>: How to list all lines containing a pattern.
+<li><a href="#Running-Info_002dValidate">Running Info-Validate</a>: How to find badly referenced nodes.
+
+</li></ul>
+<p>Finding Badly Referenced Nodes
+
+</p>
+<ul class="menu">
+<li><a href="#Using-Info_002dvalidate">Using Info-validate</a>: How to run <code>Info-validate</code>.
+<li><a href="#Unsplit">Unsplit</a>: How to create an unsplit file.
+<li><a href="#Tagifying">Tagifying</a>: How to tagify a file.
+<li><a href="#Splitting">Splitting</a>: How to split a file manually.
+
+</li></ul>
+<p>Copying This Manual
+
+</p>
+<ul class="menu">
+<li><a href="#GNU-Free-Documentation-License">GNU Free Documentation License</a>: License for copying this manual.
+
+ </ul>
+
+<!-- Reward readers for getting to the end of the menu :). -->
+<!-- Contributed by Arnold Robbins. -->
+<blockquote>
+Documentation is like sex: when it is good, it is very, very good; and
+when it is bad, it is better than nothing.
+&mdash;Dick Brandon
+</blockquote>
+
+<div class="node">
+<p><hr>
+<a name="Copying-Conditions"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Overview">Overview</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Top">Top</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="unnumbered">Texinfo Copying Conditions</h2>
+
+<p><a name="index-Copying-conditions-1"></a><a name="index-Conditions-for-copying-Texinfo-2"></a>
+The programs currently being distributed that relate to Texinfo include
+<code>makeinfo</code>, <code>info</code>, <code>texindex</code>, and <span class="file">texinfo.tex</span>.
+These programs are <dfn>free</dfn>; this means that everyone is free to use
+them and free to redistribute them on a free basis. The Texinfo-related
+programs are not in the public domain; they are copyrighted and there
+are restrictions on their 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 these programs that they might get from you.
+
+ <p>Specifically, we want to make sure that you have the right to give away
+copies of the programs that relate to Texinfo, that you receive source
+code or else can get it if you want it, that you can change these
+programs or use pieces of them in new free programs, and that you know
+you can do these things.
+
+ <p>To make sure that everyone has such rights, we have to forbid you to
+deprive anyone else of these rights. For example, if you distribute
+copies of the Texinfo related programs, 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 tell them their rights.
+
+ <p>Also, for our own protection, we must make certain that everyone finds
+out that there is no warranty for the programs that relate to Texinfo.
+If these programs are modified by someone else and passed on, we want
+their recipients to know that what they have is not what we distributed,
+so that any problems introduced by others will not reflect on our
+reputation.
+
+ <p>The precise conditions of the licenses for the programs currently being
+distributed that relate to Texinfo are found in the General Public
+Licenses that accompany them. This manual specifically is covered by
+the GNU Free Documentation License (see <a href="#GNU-Free-Documentation-License">GNU Free Documentation License</a>).
+
+<div class="node">
+<p><hr>
+<a name="Overview"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Texinfo-Mode">Texinfo Mode</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Copying-Conditions">Copying Conditions</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">1 Overview of Texinfo</h2>
+
+<p><a name="index-Overview-of-Texinfo-3"></a><a name="index-Texinfo-overview-4"></a>
+<dfn>Texinfo</dfn><a rel="footnote" href="#fn-1" name="fnd-1"><sup>1</sup></a> is a documentation system that uses a single
+source file to produce both online information and printed output. This
+means that instead of writing two different documents, one for the
+online information and the other for a printed work, you need write only
+one document. Therefore, when the work is revised, you need revise only
+that one document.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Reporting-Bugs">Reporting Bugs</a>: Submitting effective bug reports.
+<li><a accesskey="2" href="#Using-Texinfo">Using Texinfo</a>: Create printed or online output.
+<li><a accesskey="3" href="#Output-Formats">Output Formats</a>: Overview of the supported output formats.
+<li><a accesskey="4" href="#Info-Files">Info Files</a>: What is an Info file?
+<li><a accesskey="5" href="#Printed-Books">Printed Books</a>: Characteristics of a printed book or manual.
+<li><a accesskey="6" href="#Formatting-Commands">Formatting Commands</a>: @-commands are used for formatting.
+<li><a accesskey="7" href="#Conventions">Conventions</a>: General rules for writing a Texinfo file.
+<li><a accesskey="8" href="#Comments">Comments</a>: Writing comments and ignored text in general.
+<li><a accesskey="9" href="#Minimum">Minimum</a>: What a Texinfo file must have.
+<li><a href="#Six-Parts">Six Parts</a>: Usually, a Texinfo file has six parts.
+<li><a href="#Short-Sample">Short Sample</a>: A short sample Texinfo file.
+<li><a href="#History">History</a>: Acknowledgements, contributors and genesis.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Reporting-Bugs"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Using-Texinfo">Using Texinfo</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.1 Reporting Bugs</h3>
+
+<p><a name="index-Bugs_002c-reporting-5"></a><a name="index-Suggestions-for-Texinfo_002c-making-6"></a><a name="index-Reporting-bugs-7"></a>We welcome bug reports and suggestions for any aspect of the Texinfo system,
+programs, documentation, installation, anything. Please email them to
+<a href="mailto:bug-texinfo@gnu.org">bug-texinfo@gnu.org</a>. You can get the latest version of Texinfo
+from <a href="ftp://ftp.gnu.org/gnu/texinfo/">ftp://ftp.gnu.org/gnu/texinfo/</a> and its mirrors worldwide.
+
+ <p><a name="index-Checklist-for-bug-reports-8"></a>For bug reports, please include enough information for the maintainers
+to reproduce the problem. Generally speaking, that means:
+
+ <ul>
+<li>the version number of Texinfo and the program(s) or manual(s) involved.
+<li>hardware and operating system names and versions.
+<li>the contents of any input files necessary to reproduce the bug.
+<li>a description of the problem and samples of any erroneous output.
+<li>any unusual options you gave to <span class="command">configure</span>.
+<li>anything else that you think would be helpful.
+</ul>
+
+ <p>When in doubt whether something is needed or not, include it. It's
+better to include too much than to leave out something important.
+
+ <p><a name="index-Patches_002c-contributing-9"></a>Patches are most welcome; if possible, please make them with
+<span class="samp">diff&nbsp;-c<!-- /@w --></span> (see <a href="diff.html#Top">Overview (Comparing and Merging Files)</a>) and include <span class="file">ChangeLog</span> entries (see <a href="emacs.html#Change-Log">Change Log (The GNU Emacs Manual)</a>).
+
+ <p>When sending patches, if possible please do not encode or split them in
+any way; it's much easier to deal with one plain text message, however
+large, than many small ones. <a href="ftp://ftp.gnu.org/gnu/sharutils/">GNU shar</a> is a convenient way of packaging multiple and/or binary files
+for email.
+
+<div class="node">
+<p><hr>
+<a name="Using-Texinfo"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Output-Formats">Output Formats</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Reporting-Bugs">Reporting Bugs</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.2 Using Texinfo</h3>
+
+<p><a name="index-Using-Texinfo-in-general-10"></a><a name="index-Texinfo_002c-introduction-to-11"></a><a name="index-Introduction-to-Texinfo-12"></a>
+Using Texinfo, you can create a printed document (via the TeX
+typesetting system) the normal features of a book, including chapters,
+sections, cross references, and indices. From the same Texinfo source
+file, you can create an Info file with special features to make
+documentation browsing easy. You can also create from that same
+source file an HTML output file suitable for use with a web browser,
+or an XML file. See the next section (see <a href="#Output-Formats">Output Formats</a>) for
+details and the exact commands to generate output from the source.
+
+ <p>TeX works with virtually all printers; Info works with virtually all
+computer terminals; the HTML output works with virtually all web
+browsers. Thus Texinfo can be used by almost any computer user.
+
+ <p><a name="index-Source-file-format-13"></a>A Texinfo source file is a plain <span class="sc">ascii</span> file containing text
+interspersed with <dfn>@-commands</dfn> (words preceded by an <span class="samp">@</span>)
+that tell the typesetting and formatting programs what to do. You can
+edit a Texinfo file with any text editor, but it is especially
+convenient to use GNU Emacs since that editor has a special mode,
+called Texinfo mode, that provides various Texinfo-related features.
+(See <a href="#Texinfo-Mode">Texinfo Mode</a>.)
+
+ <p>You can use Texinfo to create both online help and printed manuals;
+moreover, Texinfo is freely redistributable. For these reasons, Texinfo
+is the official documentation format of the GNU project. More
+information is available at the <a href="http://www.gnu.org/doc/">GNU documentation web page</a>.
+
+<div class="node">
+<p><hr>
+<a name="Output-Formats"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Info-Files">Info Files</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Using-Texinfo">Using Texinfo</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.3 Output Formats</h3>
+
+<p><a name="index-Output-formats-14"></a><a name="index-Back_002dend-output-formats-15"></a>
+Here is a brief overview of the output formats currently supported by
+Texinfo.
+
+ <dl>
+<dt>Info<dd><a name="index-Info-output-16"></a>(Generated via <span class="command">makeinfo</span>.) This format is essentially a
+plain text transliteration of the Texinfo source. It adds a few
+control characters to separate nodes and provide navigational
+information for menus, cross-references, indices, and so on. See the
+next section (see <a href="#Info-Files">Info Files</a>) for more details on this format.
+The Emacs Info subsystem (see <a href="info.html#Top">Getting Started (Info)</a>),
+and the standalone <span class="command">info</span> program (see <a href="info-stnd.html#Top">Info Standalone (GNU Info)</a>), among others, can read these
+files. See <a href="#Creating-and-Installing-Info-Files">Creating and Installing Info Files</a>.
+
+ <br><dt>Plain text<dd><a name="index-Plain-text-output-17"></a>(Generated via <span class="command">makeinfo --no-headers</span>.) This is almost the
+same as Info output, except the navigational control characters are
+omitted.
+
+ <br><dt>HTML<dd><a name="index-HTML-output-18"></a><a name="index-W3-consortium-19"></a><a name="index-Mozilla-20"></a><a name="index-Lynx-21"></a><a name="index-Emacs_002dW3-22"></a>(Generated via <span class="command">makeinfo --html</span>.) This is the Hyper Text
+Markup Language that has become the most commonly used language for
+writing documents on the World Wide Web. Web browsers, such as
+Mozilla, Lynx, and Emacs-W3, can render this language online. There
+are many versions of HTML; <span class="command">makeinfo</span> tries to use a subset
+of the language that can be interpreted by any common browser. For
+details of the HTML language and much related information, see
+<a href="http://www.w3.org/MarkUp/">http://www.w3.org/MarkUp/</a>. See <a href="#Generating-HTML">Generating HTML</a>.
+
+ <br><dt>DVI<dd><a name="index-DVI-output-23"></a><a name="index-dvips-24"></a><a name="index-xdvi-25"></a>(Generated via <span class="command">texi2dvi</span>.) This DeVice Independent binary
+format is output by the TeX typesetting program
+(<a href="http://tug.org">http://tug.org</a>). This is then read by a DVI `driver', which
+writes the actual device-specific commands that can be viewed or
+printed, notably Dvips for translation to PostScript (see <a href="dvips.html#Invoking-Dvips">Invoking Dvips (Dvips)</a>) and Xdvi for viewing on an X display
+(<a href="http://sourceforge.net/projects/xdvi/">http://sourceforge.net/projects/xdvi/</a>). See <a href="#Hardcopy">Hardcopy</a>.
+
+ <p>Be aware that the Texinfo language is very different from and much
+stricter than TeX's usual languages, plain TeX and LaTeX.
+For more information on TeX in general, please see the book
+<cite>TeX for the Impatient</cite>, available from
+<a href="http://savannah.gnu.org/projects/teximpatient">http://savannah.gnu.org/projects/teximpatient</a>.
+
+ <br><dt>PDF<dd><a name="index-PDF-output-26"></a><a name="index-Beebe_002c-Nelson-27"></a><a name="index-pdftex-28"></a>(Generated via <span class="command">texi2dvi --pdf</span>.) This format, based on
+PostScript, was developed by Adobe Systems for document interchange.
+It is intended to be platform-independent and easily viewable, among
+other design goals; for a discussion, see
+<a href="http://tug.org/tugboat/Articles/tb22-3/tb72beebeI.pdf">http://tug.org/tugboat/Articles/tb22-3/tb72beebeI.pdf</a>. Texinfo
+uses the <span class="command">pdftex</span> program, a variant of TeX, to output pdf;
+see <a href="http://tug.org/applications/pdftex">http://tug.org/applications/pdftex</a>. See <a href="#PDF-Output">PDF Output</a>.
+
+ <br><dt>XML<dd><a name="index-XML-output-29"></a><a name="index-DTD_002c-for-Texinfo-XML-30"></a><a name="index-texinfo_002edtd-31"></a>(Generated via <span class="command">makeinfo --xml</span>.) XML is a generic syntax
+specification usable for any sort of content (see, for example,
+<a href="http://www.w3.org/XML/">http://www.w3.org/XML/</a>). The <span class="command">makeinfo</span> xml output,
+unlike all the formats above, interprets very little of the Texinfo
+source. Rather, it merely translates the Texinfo markup commands into
+XML syntax, for processing by further XML tools. The particular
+syntax output is defined in the file <span class="file">texinfo.dtd</span> included in
+the Texinfo source distribution.
+
+ <br><dt>Docbook<dd><a name="index-Docbook-output-32"></a>(Generated via <span class="command">makeinfo --docbook</span>.) This is an XML-based
+format developed some years ago, primarily for technical
+documentation. It therefore bears some resemblance, in broad
+outlines, to Texinfo. See <a href="http://www.docbook.org">http://www.docbook.org</a>. If you want
+to convert from Docbook <em>to</em> Texinfo, please see
+<a href="http://docbook2X.sourceforge.net">http://docbook2X.sourceforge.net</a>.
+
+ </dl>
+
+ <p><a name="index-Man-page-output_002c-not-supported-33"></a>From time to time, proposals are made to generate traditional Unix man
+pages from Texinfo source. However, because man pages have a very
+strict conventional format, generating a good man page requires a
+completely different source than the typical Texinfo applications of
+writing a good user tutorial and/or a good reference manual. This
+makes generating man pages incompatible with the Texinfo design goal
+of not having to document the same information in different ways for
+different output formats. You might as well just write the man page
+directly.
+
+ <p><a name="index-help2man-34"></a><a name="index-O_0027Dea_002c-Brendan-35"></a>Man pages still have their place, and if you wish to support them, you
+may find the program <span class="command">help2man</span> to be useful; it generates a
+traditional man page from the <span class="samp">--help</span> output of a program. In
+fact, this is currently used to generate man pages for the programs in
+the Texinfo distribution. It is GNU software written by Brendan
+O'Dea, available from <a href="ftp://ftp.gnu.org/gnu/help2man/">ftp://ftp.gnu.org/gnu/help2man/</a>.
+
+ <p><a name="index-Output-formats_002c-supporting-more-36"></a><a name="index-SGML_002dtools-output-format-37"></a>If you are a programmer and would like to contribute to the GNU project
+by implementing additional output formats for Texinfo, that would be
+excellent. But please do not write a separate translator texi2foo for
+your favorite format foo! That is the hard way to do the job, and makes
+extra work in subsequent maintenance, since the Texinfo language is
+continually being enhanced and updated. Instead, the best approach is
+modify <code>makeinfo</code> to generate the new format.
+
+<div class="node">
+<p><hr>
+<a name="Info-Files"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Printed-Books">Printed Books</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Output-Formats">Output Formats</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.4 Info Files</h3>
+
+<p><a name="index-Info-files-38"></a>
+An Info file is a Texinfo file formatted so that the Info documentation
+reading program can operate on it. (<code>makeinfo</code>
+and <code>texinfo-format-buffer</code> are two commands that convert a Texinfo file
+into an Info file.)
+
+ <p>Info files are divided into pieces called <dfn>nodes</dfn>, each of which
+contains the discussion of one topic. Each node has a name, and
+contains both text for the user to read and pointers to other nodes,
+which are identified by their names. The Info program displays one node
+at a time, and provides commands with which the user can move to other
+related nodes.
+
+ <p>See <a href="info.html#Top">Top (GNU Info)</a>, for more information about using Info.
+
+ <p>Each node of an Info file may have any number of child nodes that
+describe subtopics of the node's topic. The names of child
+nodes are listed in a <dfn>menu</dfn> within the parent node; this
+allows you to use certain Info commands to move to one of the child
+nodes. Generally, an Info file is organized like a book. If a node
+is at the logical level of a chapter, its child nodes are at the level
+of sections; likewise, the child nodes of sections are at the level
+of subsections.
+
+ <p>All the children of any one parent are linked together in a
+bidirectional chain of `Next' and `Previous' pointers. The `Next'
+pointer provides a link to the next section, and the `Previous' pointer
+provides a link to the previous section. This means that all the nodes
+that are at the level of sections within a chapter are linked together.
+Normally the order in this chain is the same as the order of the
+children in the parent's menu. Each child node records the parent node
+name as its `Up' pointer. The last child has no `Next' pointer, and the
+first child has the parent both as its `Previous' and as its `Up'
+pointer.<a rel="footnote" href="#fn-2" name="fnd-2"><sup>2</sup></a>
+
+ <p>The book-like structuring of an Info file into nodes that correspond
+to chapters, sections, and the like is a matter of convention, not a
+requirement. The `Up', `Previous', and `Next' pointers of a node can
+point to any other nodes, and a menu can contain any other nodes.
+Thus, the node structure can be any directed graph. But it is usually
+more comprehensible to follow a structure that corresponds to the
+structure of chapters and sections in a printed book or report.
+
+ <p>In addition to menus and to `Next', `Previous', and `Up' pointers, Info
+provides pointers of another kind, called references, that can be
+sprinkled throughout the text. This is usually the best way to
+represent links that do not fit a hierarchical structure.
+
+ <p>Usually, you will design a document so that its nodes match the
+structure of chapters and sections in the printed output. But
+occasionally there are times when this is not right for the material
+being discussed. Therefore, Texinfo uses separate commands to specify
+the node structure for the Info file and the section structure for the
+printed output.
+
+ <p>Generally, you enter an Info file through a node that by convention is
+named `Top'. This node normally contains just a brief summary of the
+file's purpose, and a large menu through which the rest of the file is
+reached. From this node, you can either traverse the file
+systematically by going from node to node, or you can go to a specific
+node listed in the main menu, or you can search the index menus and then
+go directly to the node that has the information you want. Alternatively,
+with the standalone Info program, you can specify specific menu items on
+the command line (see <a href="info.html#Top">Top (Info)</a>).
+
+ <p>If you want to read through an Info file in sequence, as if it were a
+printed manual, you can hit &lt;SPC&gt; repeatedly, or you get the whole
+file with the advanced Info command <kbd>g *</kbd>. (see <a href="info.html#Advanced">Advanced Info commands</a>.)
+
+<!-- !!! dir file may be located in one of many places: -->
+<!-- /usr/local/emacs/info mentioned in info.c DEFAULT_INFOPATH -->
+<!-- /usr/local/lib/emacs/info mentioned in info.c DEFAULT_INFOPATH -->
+<!-- /usr/gnu/info mentioned in info.c DEFAULT_INFOPATH -->
+<!-- /usr/local/info -->
+<!-- /usr/local/lib/info -->
+<p>The <span class="file">dir</span> file in the <span class="file">info</span> directory serves as the
+departure point for the whole Info system. From it, you can reach the
+`Top' nodes of each of the documents in a complete Info system.
+
+ <p><a name="index-URI-syntax-for-Info-39"></a>If you wish to refer to an Info file in a URI, you can use the
+(unofficial) syntax exemplified in the following. This works with
+Emacs/W3, for example:
+<pre class="example"> info:///usr/info/emacs#Dissociated%20Press
+ info:emacs#Dissociated%20Press
+ info://localhost/usr/info/emacs#Dissociated%20Press
+</pre>
+ <p>The <span class="command">info</span> program itself does not follow URI's of any kind.
+
+<div class="node">
+<p><hr>
+<a name="Printed-Books"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Formatting-Commands">Formatting Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Info-Files">Info Files</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.5 Printed Books</h3>
+
+<p><a name="index-Printed-book-and-manual-characteristics-40"></a><a name="index-Manual-characteristics_002c-printed-41"></a><a name="index-Book-characteristics_002c-printed-42"></a><a name="index-Texinfo-printed-book-characteristics-43"></a><a name="index-Characteristics_002c-printed-books-or-manuals-44"></a>
+<a name="index-Knuth_002c-Donald-45"></a>A Texinfo file can be formatted and typeset as a printed book or manual.
+To do this, you need TeX, a powerful, sophisticated typesetting
+program written by Donald Knuth.<a rel="footnote" href="#fn-3" name="fnd-3"><sup>3</sup></a>
+
+ <p>A Texinfo-based book is similar to any other typeset, printed work: it
+can have a title page, copyright page, table of contents, and preface,
+as well as chapters, numbered or unnumbered sections and subsections,
+page headers, cross references, footnotes, and indices.
+
+ <p>You can use Texinfo to write a book without ever having the intention
+of converting it into online information. You can use Texinfo for
+writing a printed novel, and even to write a printed memo, although
+this latter application is not recommended since electronic mail is so
+much easier.
+
+ <p>TeX is a general purpose typesetting program. Texinfo provides a
+file <span class="file">texinfo.tex</span> that contains information (definitions or
+<dfn>macros</dfn>) that TeX uses when it typesets a Texinfo file.
+(<span class="file">texinfo.tex</span> tells TeX how to convert the Texinfo @-commands
+to TeX commands, which TeX can then process to create the typeset
+document.) <span class="file">texinfo.tex</span> contains the specifications for printing
+a document. You can get the latest version of <span class="file">texinfo.tex</span> from
+<a href="ftp://ftp.gnu.org/gnu/texinfo/texinfo.tex">ftp://ftp.gnu.org/gnu/texinfo/texinfo.tex</a>.
+
+ <p>In the United States, documents are most often printed on 8.5 inch by 11
+inch pages (216<span class="dmn">mm</span> by 280<span class="dmn">mm</span>); this is the default size. But
+you can also print for 7 inch by 9.25 inch pages (178<span class="dmn">mm</span> by
+235<span class="dmn">mm</span>, the <code>@smallbook</code> size; or on A4 or A5 size paper
+(<code>@afourpaper</code>, <code>@afivepaper</code>). (See <a href="#smallbook">Printing &ldquo;Small&rdquo; Books</a>. Also, see <a href="#A4-Paper">Printing on A4 Paper</a>.)
+
+ <p>By changing the parameters in <span class="file">texinfo.tex</span>, you can change the
+size of the printed document. In addition, you can change the style in
+which the printed document is formatted; for example, you can change the
+sizes and fonts used, the amount of indentation for each paragraph, the
+degree to which words are hyphenated, and the like. By changing the
+specifications, you can make a book look dignified, old and serious, or
+light-hearted, young and cheery.
+
+ <p>TeX is freely distributable. It is written in a superset of Pascal
+called WEB and can be compiled either in Pascal or (by using a
+conversion program that comes with the TeX distribution) in C.
+(See <a href="emacs.html#TeX-Mode">TeX Mode (The GNU Emacs Manual)</a>, for information
+about TeX.)
+
+ <p>TeX is very powerful and has a great many features. Because a
+Texinfo file must be able to present information both on a
+character-only terminal in Info form and in a typeset book, the
+formatting commands that Texinfo supports are necessarily limited.
+
+ <p>To get a copy of TeX, see
+<a href="#Obtaining-TeX">How to Obtain TeX</a>.
+
+<div class="node">
+<p><hr>
+<a name="Formatting-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Conventions">Conventions</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Printed-Books">Printed Books</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.6 @-commands</h3>
+
+<p><a name="index-_0040_0040_002dcommands-46"></a><a name="index-Formatting-commands-47"></a>
+In a Texinfo file, the commands that tell TeX how to typeset the
+printed manual and tell <code>makeinfo</code> and
+<code>texinfo-format-buffer</code> how to create an Info file are preceded
+by <span class="samp">@</span>; they are called <dfn>@-commands</dfn>. For example,
+<code>@node</code> is the command to indicate a node and <code>@chapter</code>
+is the command to indicate the start of a chapter.
+
+ <blockquote>
+<b>Note:</b> Almost all @ command names are entirely lower case.
+</blockquote>
+
+ <p>The Texinfo @-commands are a strictly limited set of constructs. The
+strict limits make it possible for Texinfo files to be understood both
+by TeX and by the code that converts them into Info files. You can
+display Info files on any terminal that displays alphabetic and
+numeric characters. Similarly, you can print the output generated by
+TeX on a wide variety of printers.
+
+ <p>Depending on what they do or what arguments<a rel="footnote" href="#fn-4" name="fnd-4"><sup>4</sup></a> they take, you
+need to write @-commands on lines of their own or as part of
+sentences:
+
+ <ul>
+<li>Write a command such as <code>@quotation</code> at the beginning of a line as
+the only text on the line. (<code>@quotation</code> begins an indented
+environment.)
+
+ <li>Write a command such as <code>@chapter</code> at the beginning of a line
+followed by the command's arguments, in this case the chapter title, on
+the rest of the line. (<code>@chapter</code> creates chapter titles.)
+
+ <li>Write a command such as <code>@dots{}</code> wherever you wish but usually
+within a sentence. (<code>@dots{}</code> creates dots <small class="dots">...</small>)
+
+ <li>Write a command such as <code>@code{</code><var>sample-code</var><code>}</code> wherever you
+wish (but usually within a sentence) with its argument,
+<var>sample-code</var> in this example, between the braces. (<code>@code</code>
+marks text as being code.)
+
+ <li>Write a command such as <code>@example</code> on a line of its own; write the
+body-text on following lines; and write the matching <code>@end</code>
+command, <code>@end example</code> in this case, on a line of its own
+after the body-text. (<code>@example</code> <small class="dots">...</small> <code>@end example</code>
+indents and typesets body-text as an example.) It's usually ok to
+indent environment commands like this, but in complicated and
+hard-to-define circumstances the extra spaces cause extra space to
+appear in the output, so beware.
+</ul>
+
+<p class="noindent"><a name="index-Braces_002c-when-to-use-48"></a>As a general rule, a command requires braces if it mingles among other
+text; but it does not need braces if it starts a line of its own. The
+non-alphabetic commands, such as <code>@:</code>, are exceptions to the rule;
+they do not need braces.
+
+ <p>As you gain experience with Texinfo, you will rapidly learn how to
+write the different commands: the different ways to write commands
+actually make it easier to write and read Texinfo files than if all
+commands followed exactly the same syntax. See <a href="#Command-Syntax">@-Command Syntax</a>, for all the details.
+
+<div class="node">
+<p><hr>
+<a name="Conventions"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Comments">Comments</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Formatting-Commands">Formatting Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.7 General Syntactic Conventions</h3>
+
+<p><a name="index-General-syntactic-conventions-49"></a><a name="index-Syntactic-conventions-50"></a><a name="index-Conventions_002c-syntactic-51"></a><a name="index-Characters_002c-basic-input-52"></a>
+This section describes the general conventions used in all Texinfo documents.
+
+ <ul>
+<li><a name="index-Source-files_002c-characters-used-53"></a>All printable <span class="sc">ascii</span> characters except <span class="samp">@</span>, <span class="samp">{</span> and
+<span class="samp">}</span> can appear in a Texinfo file and stand for themselves.
+<span class="samp">@</span> is the escape character which introduces commands, while
+<span class="samp">{</span> and <span class="samp">}</span> are used to surround arguments to certain
+commands. To put one of these special characters into the document, put
+an <span class="samp">@</span> character in front of it, like this: <span class="samp">@@</span>,
+<span class="samp">@{</span>, and <span class="samp">@}</span>.
+
+ <li><a name="index-Paragraph-separator-54"></a><a name="index-Blank-lines_002c-as-paragraph-separator-55"></a><a name="index-Newlines_002c-as-blank-lines-56"></a>Separate paragraphs with one or more blank lines. Currently Texinfo
+only recognizes newline characters as end of line, not the CRLF
+sequence used on some systems; so a <dfn>blank line</dfn> means exactly two
+consecutive newlines. Sometimes blank lines are useful or convenient
+in other cases as well; you can use the <code>@noindent</code> to inhibit
+paragraph indentation if required (see <a href="#noindent"><code>@noindent</code></a>).
+
+ <li><a name="index-Quotation-characters-_0028_0060_0027_0029_002c-in-source-57"></a>Use doubled single-quote characters to begin and end quotations:
+<tt>`<!-- /@w -->`<small class="dots">...</small>'<!-- /@w -->'</tt><!-- /@w -->. TeX converts two single quotes to
+left- and right-hand doubled quotation marks,
+<!-- this comes out as "like this" in Info, which is just confusing. -->
+and Info converts doubled single-quote characters to <span class="sc">ascii</span>
+double-quotes: <tt>`<!-- /@w -->`<small class="dots">...</small>'<!-- /@w -->'</tt><!-- /@w --> becomes <tt>"<small class="dots">...</small>"</tt><!-- /@w -->.
+
+ <p>You may occasionally need to produce two consecutive single quotes;
+for example, in documenting a computer language such as Maxima where
+<tt>'<!-- /@w -->'</tt> is a valid command. You can do this with the input
+<tt>'@w{}'</tt>; the empty <code>@w</code> command stops the combination into
+the double-quote characters.
+
+ <p><a name="index-Unicode-quotation-characters-58"></a><a name="index-Grave-accent_002c-vs_002e_0040_003a-left-quote-59"></a>The left quote character (<tt>`</tt>, ASCII code 96) used in Texinfo is a
+grave accent in ANSI and ISO character set standards. We use it as a
+quote character because that is how TeX is set up, by default. We
+hope to eventually support the various quotation characters in
+Unicode.
+
+ <li><a name="index-Multiple-dashes-in-source-60"></a><a name="index-Dashes-in-source-61"></a><a name="index-Hyphens-in-source_002c-two-or-three-in-a-row-62"></a><a name="index-Em-dash_002c-producing-63"></a><a name="index-En-dash_002c-producing-64"></a>Use three hyphens in a row, <span class="samp">---</span>, to produce a long dash&mdash;like
+this (called an <dfn>em dash</dfn>), used for punctuation in sentences.
+Use two hyphens, <span class="samp">--</span>, to produce a medium dash&ndash;like this
+(called an <dfn>en dash</dfn>), used to separate numeric ranges. Use a
+single hyphen, <span class="samp">-</span>, to produce a standard hyphen used in compound
+words. For display on the screen, Info reduces three hyphens to two
+and two hyphens to one (not transitively!). Of course, any number of
+hyphens in the source remain as they are in literal contexts, such as
+<code>@code</code> and <code>@example</code>.
+
+ <li><a name="index-Tabs_003b-don_0027t-use_0021-65"></a><strong>Caution:</strong> Last and most important, do not use tab characters
+in a Texinfo file (except in verbatim modes)! TeX uses
+variable-width fonts, which means that it is impractical at best to
+define a tab to work in all circumstances. Consequently, TeX
+treats tabs like single spaces, and that is not what they look like in
+the source. Furthermore, <code>makeinfo</code> does nothing special with
+tabs, and thus a tab character in your input file will usually appear
+differently in the output.
+
+ <p class="noindent">To avoid this problem, Texinfo mode causes GNU Emacs to insert multiple
+spaces when you press the &lt;TAB&gt; key.
+
+ <p class="noindent">Also, you can run <code>untabify</code> in Emacs to convert tabs in a region
+to multiple spaces, or use the <code>unexpand</code> command from the shell.
+
+ </ul>
+
+<div class="node">
+<p><hr>
+<a name="Comments"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Minimum">Minimum</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Conventions">Conventions</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.8 Comments</h3>
+
+<p><a name="index-Comments-66"></a><a name="index-comment-67"></a><a name="index-c-_0040r_007b_0028comment_0029_007d-68"></a>
+You can write comments in a Texinfo file that will not appear in
+either the Info file or the printed manual by using the
+<code>@comment</code> command (which may be abbreviated to <code>@c</code>).
+Such comments are for the person who revises the Texinfo file. All the
+text on a line that follows either <code>@comment</code> or <code>@c</code> is a
+comment; the rest of the line does not appear in either the Info file
+or the printed manual.
+
+ <p>Often, you can write the <code>@comment</code> or <code>@c</code> in the middle of
+a line, and only the text that follows after the <code>@comment</code> or
+<code>@c</code> command does not appear; but some commands, such as
+<code>@settitle</code> and <code>@setfilename</code>, work on a whole line. You
+cannot use <code>@comment</code> or <code>@c</code> in a line beginning with such
+a command.
+
+ <p><a name="index-Ignored-text-69"></a><a name="index-Unprocessed-text-70"></a><a name="index-ignore-71"></a>You can write long stretches of text that will not appear in either
+the Info file or the printed manual by using the <code>@ignore</code> and
+<code>@end ignore</code> commands. Write each of these commands on a line
+of its own, starting each command at the beginning of the line. Text
+between these two commands does not appear in the processed output.
+You can use <code>@ignore</code> and <code>@end ignore</code> for writing
+comments.
+
+ <p>Text enclosed by <code>@ignore</code> or by failing <code>@ifset</code> or
+<code>@ifclear</code> conditions is ignored in the sense that it will not
+contribute to the formatted output. However, TeX and makeinfo must
+still parse the ignored text, in order to understand when to <em>stop</em>
+ignoring text from the source file; that means that you may still get
+error messages if you have invalid Texinfo commands within ignored text.
+
+<div class="node">
+<p><hr>
+<a name="Minimum"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Six-Parts">Six Parts</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Comments">Comments</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.9 What a Texinfo File Must Have</h3>
+
+<p><a name="index-Minimal-Texinfo-file-_0028requirements_0029-72"></a><a name="index-Must-have-in-Texinfo-file-73"></a><a name="index-Required-in-Texinfo-file-74"></a><a name="index-Texinfo-file-minimum-75"></a>
+By convention, the namea of a Texinfo file ends with (in order of
+preference) one of the extensions <span class="file">.texinfo</span>, <span class="file">.texi</span>,
+<span class="file">.txi</span>, or <span class="file">.tex</span>. The longer extensions are preferred since
+they describe more clearly to a human reader the nature of the file.
+The shorter extensions are for operating systems that cannot handle long
+file names.
+
+ <p>In order to be made into a printed manual and an Info file, a Texinfo
+file <strong>must</strong> begin with lines like this:
+
+<pre class="example"> \input texinfo
+ @setfilename <var>info-file-name</var>
+ @settitle <var>name-of-manual</var>
+</pre>
+ <p class="noindent">The contents of the file follow this beginning, and then you
+<strong>must</strong> end a Texinfo file with a line like this:
+
+<pre class="example"> @bye
+</pre>
+ <p><a name="index-_005cinput-_0040r_007b_0028raw-_0040TeX_007b_007d-startup_0029_007d-76"></a>Here's an explanation:
+
+ <ul>
+<li>The <span class="samp">\input texinfo</span> line tells TeX to use the
+<span class="file">texinfo.tex</span> file, which tells TeX how to translate the Texinfo
+@-commands into TeX typesetting commands. (Note the use of the
+backslash, <span class="samp">\</span>; this is correct for TeX.)
+
+ <li>The <code>@setfilename</code> line provides a name for the Info file and
+tells TeX to open auxiliary files. <strong>All text before
+</strong><code>@setfilename</code><strong> is ignored!</strong>
+
+ <li>The <code>@settitle</code> line specifies a title for the page headers (or
+footers) of the printed manual, and the default document description for
+the <span class="samp">&lt;head&gt;</span> in HTML format. Strictly speaking, <code>@settitle</code>
+is optional&mdash;if you don't mind your document being titled `Untitled'.
+
+ <li>The <code>@bye</code> line at the end of the file on a line of its own tells
+the formatters that the file is ended and to stop formatting.
+
+ </ul>
+
+ <p>Typically, you will not use quite such a spare format, but will include
+mode setting and start-of-header and end-of-header lines at the
+beginning of a Texinfo file, like this:
+
+<pre class="example"> \input texinfo @c -*-texinfo-*-
+ @c %**start of header
+ @setfilename <var>info-file-name</var>
+ @settitle <var>name-of-manual</var>
+ @c %**end of header
+</pre>
+ <p class="noindent">In the first line, <span class="samp">-*-texinfo-*-</span> causes Emacs to switch into
+Texinfo mode when you edit the file.
+
+ <p>The <code>@c</code> lines which surround the <code>@setfilename</code> and
+<code>@settitle</code> lines are optional, but you need them in order to
+run TeX or Info on just part of the file. (See <a href="#Start-of-Header">Start of Header</a>.)
+
+ <p>Furthermore, you will usually provide a Texinfo file with a title page,
+indices, and the like, all of which are explained in this manual. But
+the minimum, which can be useful for short documents, is just the three
+lines at the beginning and the one line at the end.
+
+<div class="node">
+<p><hr>
+<a name="Six-Parts"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Short-Sample">Short Sample</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Minimum">Minimum</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.10 Six Parts of a Texinfo File</h3>
+
+<p>Generally, a Texinfo file contains more than the minimal beginning and
+end described in the previous section&mdash;it usually contains the six
+parts listed below. These are described fully in the following sections.
+
+ <dl>
+<dt><span class="roman">1. Header</span><dd>The <dfn>Header</dfn> names the file, tells TeX which definitions file to
+use, and other such housekeeping tasks.
+
+ <br><dt><span class="roman">2. Summary and Copyright</span><dd>The <dfn>Summary and Copyright</dfn> segment describes the document and
+contains the copyright notice and copying permissions. This is done
+with the <code>@copying</code> command.
+
+ <br><dt><span class="roman">3. Title and Copyright</span><dd>The <dfn>Title and Copyright</dfn> segment contains the title and copyright
+pages for the printed manual. The segment must be enclosed between
+<code>@titlepage</code> and <code>@end titlepage</code> commands. The title and
+copyright page appear only in the printed manual.
+
+ <br><dt><span class="roman">4. `Top' Node and Master Menu</span><dd>The `Top' node starts off the online output; it does not appear in the
+printed manual. We recommend including the copying permissions here as
+well as the segments above. And it contains at least a top-level menu
+listing the chapters, and possibly a <dfn>Master Menu</dfn> listing all the
+nodes in the entire document.
+
+ <br><dt><span class="roman">5. Body</span><dd>The <dfn>Body</dfn> of the document is typically structured like a
+traditional book or encyclopedia, but it may be free form.
+
+ <br><dt><span class="roman">6. End</span><dd>The <dfn>End</dfn> segment contains commands for printing indices and
+generating the table of contents, and the <code>@bye</code> command on a line
+of its own.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Short-Sample"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#History">History</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Six-Parts">Six Parts</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.11 A Short Sample Texinfo File</h3>
+
+<p><a name="index-Sample-Texinfo-file_002c-with-comments-77"></a>
+Here is a very short but complete Texinfo file, in the six conventional
+parts enumerated in the previous section, so you can see how Texinfo
+source appears in practice. The first three parts of the file, from
+<span class="samp">\input texinfo</span> through to <span class="samp">@end titlepage</span>, look more
+intimidating than they are: most of the material is standard
+boilerplate; when writing a manual, you simply change the names as
+appropriate.
+
+ <p>See <a href="#Beginning-a-File">Beginning a File</a>, for full documentation on the commands listed
+here. See <a href="#GNU-Sample-Texts">GNU Sample Texts</a>, for the full texts to be used in GNU
+manuals.
+
+ <p>In the following, the sample text is <em>indented</em>; comments on it are
+not. The complete file, without interspersed comments, is shown in
+<a href="#Short-Sample-Texinfo-File">Short Sample Texinfo File</a>.
+
+<h4 class="subheading">Part 1: Header</h4>
+
+<p class="noindent">The header does not appear in either the Info file or the
+printed output. It sets various parameters, including the
+name of the Info file and the title used in the header.
+
+<pre class="example"> \input texinfo @c -*-texinfo-*-
+ @c %**start of header
+ @setfilename sample.info
+ @settitle Sample Manual 1.0
+ @c %**end of header
+</pre>
+ <h4 class="subheading">Part 2: Summary Description and Copyright</h4>
+
+<p class="noindent">A real manual includes more text here, according to the license under
+which it is distributed. See <a href="#GNU-Sample-Texts">GNU Sample Texts</a>.
+
+<pre class="example"> @copying
+ This is a short example of a complete Texinfo file, version 1.0.
+
+ Copyright @copyright{} 2004 Free Software Foundation, Inc.
+ @end copying
+</pre>
+ <h4 class="subheading">Part 3: Titlepage, Contents, Copyright</h4>
+
+<p class="noindent">The titlepage segment does not appear in the online output, only in the
+printed manual. We use the <code>@insertcopying</code> command to
+include the permission text from the previous section, instead of
+writing it out again; it is output on the back of the title page. The
+<code>@contents</code> command generates a table of contents.
+
+<pre class="example"> @titlepage
+ @title Sample Title
+
+ @c The following two commands start the copyright page.
+ @page
+ @vskip 0pt plus 1filll
+ @insertcopying
+ @end titlepage
+
+ @c Output the table of contents at the beginning.
+ @contents
+</pre>
+ <h4 class="subheading">Part 4: `Top' Node and Master Menu</h4>
+
+<p class="noindent">The `Top' node contains the master menu for the Info file. Since the
+printed manual uses a table of contents rather than a menu, it
+excludes the `Top' node. We also include the copying text again for
+the benefit of online readers. Since the copying text begins with
+a brief description of the manual, no other text is needed in this
+case. The <span class="samp">@top</span> command itself helps <span class="command">makeinfo</span>
+determine the relationships between nodes.
+
+<pre class="example"> @ifnottex
+ @node Top
+ @top Short Sample
+
+ @insertcopying
+ @end ifnottex
+
+ @menu
+ * First Chapter:: The first chapter is the
+ only chapter in this sample.
+ * Index:: Complete index.
+ @end menu
+</pre>
+ <h4 class="subheading">Part 5: The Body of the Document</h4>
+
+<p class="noindent">The body segment contains all the text of the document, but not the
+indices or table of contents. This example illustrates a node and a
+chapter containing an enumerated list.
+
+<pre class="example"> @node First Chapter
+ @chapter First Chapter
+
+ @cindex chapter, first
+
+ This is the first chapter.
+ @cindex index entry, another
+
+ Here is a numbered list.
+
+ @enumerate
+ @item
+ This is the first item.
+
+ @item
+ This is the second item.
+ @end enumerate
+</pre>
+ <h4 class="subheading">Part 6: The End of the Document</h4>
+
+<p class="noindent">The end segment contains commands for generating an index in a node and
+unnumbered chapter of its own, and the <code>@bye</code> command that marks
+the end of the document.
+
+<pre class="example"> @node Index
+ @unnumbered Index
+
+ @printindex cp
+
+ @bye
+</pre>
+ <h4 class="subheading">Some Results</h4>
+
+<p>Here is what the contents of the first chapter of the sample look like:
+
+ <pre class="sp">
+
+</pre>
+<blockquote>
+This is the first chapter.
+
+ <p>Here is a numbered list.
+
+ <ol type=1 start=1>
+<li>This is the first item.
+
+ <li>This is the second item.
+ </ol>
+</blockquote>
+
+<div class="node">
+<p><hr>
+<a name="History"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Short-Sample">Short Sample</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Overview">Overview</a>
+<br>
+</div>
+
+<h3 class="section">1.12 History</h3>
+
+<p><a name="index-Stallman_002c-Richard-M_002e-78"></a><a name="index-Chassell_002c-Robert-J_002e-79"></a><a name="index-Fox_002c-Brian-80"></a><a name="index-Berry_002c-Karl-81"></a>Richard M. Stallman invented the Texinfo format, wrote the initial
+processors, and created Edition 1.0 of this manual. Robert&nbsp;J.<!-- /@w -->
+Chassell greatly revised and extended the manual, starting with Edition
+1.1. Brian Fox was responsible for the standalone Texinfo distribution
+until version 3.8, and wrote the standalone <span class="command">makeinfo</span> and
+<span class="command">info</span> programs. Karl Berry has continued maintenance since
+Texinfo 3.8 (manual edition 2.22).
+
+ <p><a name="index-Pinard_002c-Fran_0040_002c_007bc_007dois-82"></a><a name="index-Zuhn_002c-David-D_002e-83"></a><a name="index-Weisshaus_002c-Melissa-84"></a><a name="index-Zaretskii_002c-Eli-85"></a><a name="index-Schwab_002c-Andreas-86"></a><a name="index-Weinberg_002c-Zack-87"></a>Our thanks go out to all who helped improve this work, particularly the
+indefatigable Eli Zaretskii and Andreas Schwab, who have provided
+patches beyond counting. Fran&ccedil;ois Pinard and David&nbsp;D.&nbsp;Zuhn<!-- /@w -->,
+tirelessly recorded and reported mistakes and obscurities. Zack
+Weinberg did the impossible by implementing the macro syntax in
+<span class="file">texinfo.tex</span>. Special thanks go to Melissa Weisshaus for her
+frequent reviews of nearly similar editions. Dozens of others have
+contributed patches and suggestions, they are gratefully acknowledged in
+the <span class="file">ChangeLog</span> file. Our mistakes are our own.
+
+ <p><a name="index-Scribe-88"></a><a name="index-Reid_002c-Brian-89"></a><a name="index-History-of-Texinfo-90"></a><a name="index-Texinfo-history-91"></a>A bit of history: in the 1970's at CMU, Brian Reid developed a program
+and format named Scribe to mark up documents for printing. It used the
+<code>@</code> character to introduce commands, as Texinfo does. Much more
+consequentially, it strived to describe document contents rather than
+formatting, an idea wholeheartedly adopted by Texinfo.
+
+ <p><a name="index-Bolio-92"></a><a name="index-Bo_0040TeX_007b_007d-93"></a>Meanwhile, people at MIT developed another, not too dissimilar format
+called Bolio. This then was converted to using TeX as its typesetting
+language: BoTeX. The earliest BoTeX version seems to have been
+0.02 on October 31, 1984.
+
+ <p>BoTeX could only be used as a markup language for documents to be
+printed, not for online documents. Richard Stallman (RMS) worked on
+both Bolio and BoTeX. He also developed a nifty on-line help format
+called Info, and then combined BoTeX and Info to create Texinfo, a
+mark up language for text that is intended to be read both online and
+as printed hard copy.
+
+<div class="node">
+<p><hr>
+<a name="Texinfo-Mode"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Beginning-a-File">Beginning a File</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Overview">Overview</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">2 Using Texinfo Mode</h2>
+
+<p><a name="index-Texinfo-mode-94"></a><a name="index-Mode_002c-using-Texinfo-95"></a><a name="index-GNU-Emacs-96"></a><a name="index-Emacs-97"></a>
+You may edit a Texinfo file with any text editor you choose. A Texinfo
+file is no different from any other <span class="sc">ascii</span> file. However, GNU Emacs
+comes with a special mode, called Texinfo mode, that provides Emacs
+commands and tools to help ease your work.
+
+ <p>This chapter describes features of GNU Emacs' Texinfo mode but not any
+features of the Texinfo formatting language. So if you are reading this
+manual straight through from the beginning, you may want to skim through
+this chapter briefly and come back to it after reading succeeding
+chapters which describe the Texinfo formatting language in detail.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Texinfo-Mode-Overview">Texinfo Mode Overview</a>: How Texinfo mode can help you.
+<li><a accesskey="2" href="#Emacs-Editing">Emacs Editing</a>: Texinfo mode adds to GNU Emacs' general
+ purpose editing features.
+<li><a accesskey="3" href="#Inserting">Inserting</a>: How to insert frequently used @-commands.
+<li><a accesskey="4" href="#Showing-the-Structure">Showing the Structure</a>: How to show the structure of a file.
+<li><a accesskey="5" href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a>: How to update or create new nodes and menus.
+<li><a accesskey="6" href="#Info-Formatting">Info Formatting</a>: How to format for Info.
+<li><a accesskey="7" href="#Printing">Printing</a>: How to format and print part or all of a file.
+<li><a accesskey="8" href="#Texinfo-Mode-Summary">Texinfo Mode Summary</a>: Summary of all the Texinfo mode commands.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Texinfo-Mode-Overview"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Emacs-Editing">Emacs Editing</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-Mode">Texinfo Mode</a>
+<br>
+</div>
+
+<h3 class="section">2.1 Texinfo Mode Overview</h3>
+
+<p>Texinfo mode provides special features for working with Texinfo files.
+You can:
+
+ <ul>
+<li>Insert frequently used @-commands.
+
+ <li>Automatically create <code>@node</code> lines.
+
+ <li>Show the structure of a Texinfo source file.
+
+ <li>Automatically create or update the `Next',
+`Previous', and `Up' pointers of a node.
+
+ <li>Automatically create or update menus.
+
+ <li>Automatically create a master menu.
+
+ <li>Format a part or all of a file for Info.
+
+ <li>Typeset and print part or all of a file.
+</ul>
+
+ <p>Perhaps the two most helpful features are those for inserting frequently
+used @-commands and for creating node pointers and menus.
+
+<div class="node">
+<p><hr>
+<a name="Emacs-Editing"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Inserting">Inserting</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Texinfo-Mode-Overview">Texinfo Mode Overview</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-Mode">Texinfo Mode</a>
+<br>
+</div>
+
+<h3 class="section">2.2 The Usual GNU Emacs Editing Commands</h3>
+
+<p>In most cases, the usual Text mode commands work the same in Texinfo
+mode as they do in Text mode. Texinfo mode adds new editing commands
+and tools to GNU Emacs' general purpose editing features. The major
+difference concerns filling. In Texinfo mode, the paragraph
+separation variable and syntax table are redefined so that Texinfo
+commands that should be on lines of their own are not inadvertently
+included in paragraphs. Thus, the <kbd>M-q</kbd> (<code>fill-paragraph</code>)
+command will refill a paragraph but not mix an indexing command on a
+line adjacent to it into the paragraph.
+
+ <p>In addition, Texinfo mode sets the <code>page-delimiter</code> variable to
+the value of <code>texinfo-chapter-level-regexp</code>; by default, this is
+a regular expression matching the commands for chapters and their
+equivalents, such as appendices. With this value for the page
+delimiter, you can jump from chapter title to chapter title with the
+<kbd>C-x ]</kbd> (<code>forward-page</code>) and <kbd>C-x [</kbd>
+(<code>backward-page</code>) commands and narrow to a chapter with the
+<kbd>C-x p</kbd> (<code>narrow-to-page</code>) command. (See <a href="emacs.html#Pages">Pages (The GNU Emacs Manual)</a>, for details about the page commands.)
+
+ <p>You may name a Texinfo file however you wish, but the convention is to
+end a Texinfo file name with one of the extensions
+<span class="file">.texinfo</span>, <span class="file">.texi</span>, <span class="file">.txi</span>, or <span class="file">.tex</span>. A longer
+extension is preferred, since it is explicit, but a shorter extension
+may be necessary for operating systems that limit the length of file
+names. GNU Emacs automatically enters Texinfo mode when you visit a
+file with a <span class="file">.texinfo</span>, <span class="file">.texi</span> or <span class="file">.txi</span>
+extension. Also, Emacs switches to Texinfo mode
+when you visit a
+file that has <span class="samp">-*-texinfo-*-</span> in its first line. If ever you are
+in another mode and wish to switch to Texinfo mode, type <code>M-x
+texinfo-mode</code>.
+
+ <p>Like all other Emacs features, you can customize or enhance Texinfo
+mode as you wish. In particular, the keybindings are very easy to
+change. The keybindings described here are the default or standard
+ones.
+
+<div class="node">
+<p><hr>
+<a name="Inserting"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Showing-the-Structure">Showing the Structure</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Emacs-Editing">Emacs Editing</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-Mode">Texinfo Mode</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.3 Inserting Frequently Used Commands</h3>
+
+<p><a name="index-Inserting-frequently-used-commands-98"></a><a name="index-Frequently-used-commands_002c-inserting-99"></a><a name="index-Commands_002c-inserting-them-100"></a>
+Texinfo mode provides commands to insert various frequently used
+@-commands into the buffer. You can use these commands to save
+keystrokes.
+
+ <p>The insert commands are invoked by typing <kbd>C-c</kbd> twice and then the
+first letter of the @-command:
+
+ <dl>
+<dt><kbd>C-c C-c c</kbd><dt><kbd>M-x texinfo-insert-@code</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040code-101"></a>Insert <code>@code{}</code> and put the
+cursor between the braces.
+
+ <br><dt><kbd>C-c C-c d</kbd><dt><kbd>M-x texinfo-insert-@dfn</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040dfn-102"></a>Insert <code>@dfn{}</code> and put the
+cursor between the braces.
+
+ <br><dt><kbd>C-c C-c e</kbd><dt><kbd>M-x texinfo-insert-@end</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040end-103"></a>Insert <code>@end</code> and attempt to insert the correct following word,
+such as <span class="samp">example</span> or <span class="samp">table</span>. (This command does not handle
+nested lists correctly, but inserts the word appropriate to the
+immediately preceding list.)
+
+ <br><dt><kbd>C-c C-c i</kbd><dt><kbd>M-x texinfo-insert-@item</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040item-104"></a>Insert <code>@item</code> and put the
+cursor at the beginning of the next line.
+
+ <br><dt><kbd>C-c C-c k</kbd><dt><kbd>M-x texinfo-insert-@kbd</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040kbd-105"></a>Insert <code>@kbd{}</code> and put the
+cursor between the braces.
+
+ <br><dt><kbd>C-c C-c n</kbd><dt><kbd>M-x texinfo-insert-@node</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040node-106"></a>Insert <code>@node</code> and a comment line
+listing the sequence for the `Next',
+`Previous', and `Up' nodes.
+Leave point after the <code>@node</code>.
+
+ <br><dt><kbd>C-c C-c o</kbd><dt><kbd>M-x texinfo-insert-@noindent</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040noindent-107"></a>Insert <code>@noindent</code> and put the
+cursor at the beginning of the next line.
+
+ <br><dt><kbd>C-c C-c s</kbd><dt><kbd>M-x texinfo-insert-@samp</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040samp-108"></a>Insert <code>@samp{}</code> and put the
+cursor between the braces.
+
+ <br><dt><kbd>C-c C-c t</kbd><dt><kbd>M-x texinfo-insert-@table</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040table-109"></a>Insert <code>@table</code> followed by a &lt;SPC&gt;
+and leave the cursor after the &lt;SPC&gt;.
+
+ <br><dt><kbd>C-c C-c v</kbd><dt><kbd>M-x texinfo-insert-@var</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040var-110"></a>Insert <code>@var{}</code> and put the
+cursor between the braces.
+
+ <br><dt><kbd>C-c C-c x</kbd><dt><kbd>M-x texinfo-insert-@example</kbd><dd><a name="index-texinfo_002dinsert_002d_0040_0040example-111"></a>Insert <code>@example</code> and put the
+cursor at the beginning of the next line.
+
+ <!-- M-@{ was the binding for texinfo-insert-braces; -->
+<!-- in Emacs 19, backward-paragraph will take this binding. -->
+<br><dt><kbd>C-c C-c {</kbd><dt><kbd>M-x texinfo-insert-braces</kbd><dd><a name="index-texinfo_002dinsert_002dbraces-112"></a>Insert <code>{}</code> and put the cursor between the braces.
+
+ <br><dt><kbd>C-c C-c }</kbd><dt><kbd>C-c C-c ]</kbd><dt><kbd>M-x up-list</kbd><dd><a name="index-up_002dlist-113"></a>Move from between a pair of braces forward past the closing brace.
+Typing <kbd>C-c C-c ]</kbd> is easier than typing <kbd>C-c C-c }</kbd>, which
+is, however, more mnemonic; hence the two keybindings. (Also, you can
+move out from between braces by typing <kbd>C-f</kbd>.)
+</dl>
+
+ <p>To put a command such as <code>@code{...}</code><!-- /@w --> around an
+<em>existing</em> word, position the cursor in front of the word and type
+<kbd>C-u 1 C-c C-c c</kbd>. This makes it easy to edit existing plain text.
+The value of the prefix argument tells Emacs how many words following
+point to include between braces&mdash;<span class="samp">1</span> for one word, <span class="samp">2</span> for
+two words, and so on. Use a negative argument to enclose the previous
+word or words. If you do not specify a prefix argument, Emacs inserts
+the @-command string and positions the cursor between the braces. This
+feature works only for those @-commands that operate on a word or words
+within one line, such as <code>@kbd</code> and <code>@var</code>.
+
+ <p>This set of insert commands was created after analyzing the frequency
+with which different @-commands are used in the <cite>GNU Emacs
+Manual</cite> and the <cite>GDB Manual</cite>. If you wish to add your own insert
+commands, you can bind a keyboard macro to a key, use abbreviations,
+or extend the code in <span class="file">texinfo.el</span>.
+
+ <p><a name="index-texinfo_002dstart_002dmenu_002ddescription-114"></a><a name="index-Menu-description_002c-start-115"></a><a name="index-Description-for-menu_002c-start-116"></a><kbd>C-c C-c C-d</kbd> (<code>texinfo-start-menu-description</code>) is an insert
+command that works differently from the other insert commands. It
+inserts a node's section or chapter title in the space for the
+description in a menu entry line. (A menu entry has three parts, the
+entry name, the node name, and the description. Only the node name is
+required, but a description helps explain what the node is about.
+See <a href="#Menu-Parts">The Parts of a Menu</a>.)
+
+ <p>To use <code>texinfo-start-menu-description</code>, position point in a menu
+entry line and type <kbd>C-c C-c C-d</kbd>. The command looks for and copies
+the title that goes with the node name, and inserts the title as a
+description; it positions point at beginning of the inserted text so you
+can edit it. The function does not insert the title if the menu entry
+line already contains a description.
+
+ <p>This command is only an aid to writing descriptions; it does not do the
+whole job. You must edit the inserted text since a title tends to use
+the same words as a node name but a useful description uses different
+words.
+
+<div class="node">
+<p><hr>
+<a name="Showing-the-Structure"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Inserting">Inserting</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-Mode">Texinfo Mode</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.4 Showing the Section Structure of a File</h3>
+
+<p><a name="index-Showing-the-section-structure-of-a-file-117"></a><a name="index-Section-structure-of-a-file_002c-showing-it-118"></a><a name="index-Structure-of-a-file_002c-showing-it-119"></a><a name="index-Outline-of-file-structure_002c-showing-it-120"></a><a name="index-Contents_002dlike-outline-of-file-structure-121"></a><a name="index-File-section-structure_002c-showing-it-122"></a><a name="index-Texinfo-file-section-structure_002c-showing-it-123"></a>
+You can show the section structure of a Texinfo file by using the
+<kbd>C-c C-s</kbd> command (<code>texinfo-show-structure</code>). This command
+shows the section structure of a Texinfo file by listing the lines
+that begin with the @-commands for <code>@chapter</code>,
+<code>@section</code>, and the like. It constructs what amounts
+to a table of contents. These lines are displayed in another buffer
+called the <span class="samp">*Occur*</span> buffer. In that buffer, you can position
+the cursor over one of the lines and use the <kbd>C-c C-c</kbd> command
+(<code>occur-mode-goto-occurrence</code>), to jump to the corresponding spot
+in the Texinfo file.
+
+ <dl>
+<dt><kbd>C-c C-s</kbd><dt><kbd>M-x texinfo-show-structure</kbd><dd><a name="index-texinfo_002dshow_002dstructure-124"></a>Show the <code>@chapter</code>, <code>@section</code>, and such lines of a
+Texinfo file.
+
+ <br><dt><kbd>C-c C-c</kbd><dt><kbd>M-x occur-mode-goto-occurrence</kbd><dd><a name="index-occur_002dmode_002dgoto_002doccurrence-125"></a>Go to the line in the Texinfo file corresponding to the line under the
+cursor in the <span class="file">*Occur*</span> buffer.
+</dl>
+
+ <p>If you call <code>texinfo-show-structure</code> with a prefix argument by
+typing <kbd>C-u&nbsp;C-c&nbsp;C-s</kbd><!-- /@w -->, it will list not only those lines with the
+@-commands for <code>@chapter</code>, <code>@section</code>, and the like, but
+also the <code>@node</code> lines. You can use <code>texinfo-show-structure</code>
+with a prefix argument to check whether the `Next', `Previous', and `Up'
+pointers of an <code>@node</code> line are correct.
+
+ <p>Often, when you are working on a manual, you will be interested only
+in the structure of the current chapter. In this case, you can mark
+off the region of the buffer that you are interested in by using the
+<kbd>C-x n n</kbd> (<code>narrow-to-region</code>) command and
+<code>texinfo-show-structure</code> will work on only that region. To see
+the whole buffer again, use <kbd>C-x&nbsp;n&nbsp;w</kbd><!-- /@w --> (<code>widen</code>).
+(See <a href="emacs.html#Narrowing">Narrowing (The GNU Emacs Manual)</a>, for more
+information about the narrowing commands.)
+
+ <p><a name="index-page_002ddelimiter-126"></a><a name="index-Page-delimiter-in-Texinfo-mode-127"></a>In addition to providing the <code>texinfo-show-structure</code> command,
+Texinfo mode sets the value of the page delimiter variable to match
+the chapter-level @-commands. This enables you to use the <kbd>C-x
+]</kbd> (<code>forward-page</code>) and <kbd>C-x [</kbd> (<code>backward-page</code>)
+commands to move forward and backward by chapter, and to use the
+<kbd>C-x p</kbd> (<code>narrow-to-page</code>) command to narrow to a chapter.
+See <a href="emacs.html#Pages">Pages (The GNU Emacs Manual)</a>, for more information
+about the page commands.
+
+<div class="node">
+<p><hr>
+<a name="Updating-Nodes-and-Menus"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Info-Formatting">Info Formatting</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Showing-the-Structure">Showing the Structure</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-Mode">Texinfo Mode</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.5 Updating Nodes and Menus</h3>
+
+<p><a name="index-Updating-nodes-and-menus-128"></a><a name="index-Create-nodes_002c-menus-automatically-129"></a><a name="index-Insert-nodes_002c-menus-automatically-130"></a><a name="index-Automatically-insert-nodes_002c-menus-131"></a>
+Texinfo mode provides commands for automatically creating or updating
+menus and node pointers. The commands are called &ldquo;update&rdquo; commands
+because their most frequent use is for updating a Texinfo file after you
+have worked on it; but you can use them to insert the `Next',
+`Previous', and `Up' pointers into an <code>@node</code> line that has none
+and to create menus in a file that has none.
+
+ <p>If you do not use the updating commands, you need to write menus and
+node pointers by hand, which is a tedious task.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Updating-Commands">Updating Commands</a>: Five major updating commands.
+<li><a accesskey="2" href="#Updating-Requirements">Updating Requirements</a>: How to structure a Texinfo file for
+ using the updating command.
+<li><a accesskey="3" href="#Other-Updating-Commands">Other Updating Commands</a>: How to indent descriptions, insert
+ missing nodes lines, and update
+ nodes in sequence.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Updating-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Updating-Requirements">Updating Requirements</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a>
+<br>
+</div>
+
+<h4 class="subsection">2.5.1 The Updating Commands</h4>
+
+<p>You can use the updating commands to:
+
+ <ul>
+<li>insert or update the `Next', `Previous', and `Up' pointers of a
+node,
+
+ <li>insert or update the menu for a section, and
+
+ <li>create a master menu for a Texinfo source file.
+</ul>
+
+ <p>You can also use the commands to update all the nodes and menus in a
+region or in a whole Texinfo file.
+
+ <p>The updating commands work only with conventional Texinfo files, which
+are structured hierarchically like books. In such files, a structuring
+command line must follow closely after each <code>@node</code> line, except
+for the `Top' <code>@node</code> line. (A <dfn>structuring command line</dfn> is
+a line beginning with <code>@chapter</code>, <code>@section</code>, or other
+similar command.)
+
+ <p>You can write the structuring command line on the line that follows
+immediately after an <code>@node</code> line or else on the line that
+follows after a single <code>@comment</code> line or a single
+<code>@ifinfo</code> line. You cannot interpose more than one line between
+the <code>@node</code> line and the structuring command line; and you may
+interpose only an <code>@comment</code> line or an <code>@ifinfo</code> line.
+
+ <p>Commands which work on a whole buffer require that the `Top' node be
+followed by a node with an <code>@chapter</code> or equivalent-level command.
+The menu updating commands will not create a main or master menu for a
+Texinfo file that has only <code>@chapter</code>-level nodes! The menu
+updating commands only create menus <em>within</em> nodes for lower level
+nodes. To create a menu of chapters, you must provide a `Top'
+node.
+
+ <p>The menu updating commands remove menu entries that refer to other Info
+files since they do not refer to nodes within the current buffer. This
+is a deficiency. Rather than use menu entries, you can use cross
+references to refer to other Info files. None of the updating commands
+affect cross references.
+
+ <p>Texinfo mode has five updating commands that are used most often: two
+are for updating the node pointers or menu of a single node (or a
+region); two are for updating every node pointer and menu in a file;
+and one, the <code>texinfo-master-menu</code> command, is for creating a
+master menu for a complete file, and optionally, for updating every
+node and menu in the whole Texinfo file.
+
+ <p>The <code>texinfo-master-menu</code> command is the primary command:
+
+ <dl>
+<dt><kbd>C-c C-u m</kbd><dt><kbd>M-x texinfo-master-menu</kbd><dd><a name="index-texinfo_002dmaster_002dmenu-132"></a>Create or update a master menu that includes all the other menus
+(incorporating the descriptions from pre-existing menus, if
+any).
+
+ <p>With an argument (prefix argument, <kbd>C-u,</kbd> if interactive), first create or
+update all the nodes and all the regular menus in the buffer before
+constructing the master menu. (See <a href="#The-Top-Node">The Top Node and Master Menu</a>, for more about a master menu.)
+
+ <p>For <code>texinfo-master-menu</code> to work, the Texinfo file must have a
+`Top' node and at least one subsequent node.
+
+ <p>After extensively editing a Texinfo file, you can type the following:
+
+ <pre class="example"> C-u M-x texinfo-master-menu
+ <br>or<br>
+ C-u C-c C-u m
+ </pre>
+ <p class="noindent">This updates all the nodes and menus completely and all at once.
+</dl>
+
+ <p>The other major updating commands do smaller jobs and are designed for
+the person who updates nodes and menus as he or she writes a Texinfo
+file.
+
+ <p>The commands are:
+
+ <dl>
+<dt><kbd>C-c C-u C-n</kbd><dt><kbd>M-x texinfo-update-node</kbd><dd><a name="index-texinfo_002dupdate_002dnode-133"></a>Insert the `Next', `Previous', and `Up' pointers for the node that point is
+within (i.e., for the <code>@node</code> line preceding point). If the
+<code>@node</code> line has pre-existing `Next', `Previous', or `Up'
+pointers in it, the old pointers are removed and new ones inserted.
+With an argument (prefix argument, <kbd>C-u</kbd>, if interactive), this command
+updates all <code>@node</code> lines in the region (which is the text
+between point and mark).
+
+ <br><dt><kbd>C-c C-u C-m</kbd><dt><kbd>M-x texinfo-make-menu</kbd><dd><a name="index-texinfo_002dmake_002dmenu-134"></a>Create or update the menu in the node that point is within.
+With an argument (<kbd>C-u</kbd> as prefix argument, if
+interactive), the command makes or updates menus for the
+nodes which are either within or a part of the
+region.
+
+ <p>Whenever <code>texinfo-make-menu</code> updates an existing menu, the
+descriptions from that menu are incorporated into the new menu. This
+is done by copying descriptions from the existing menu to the entries
+in the new menu that have the same node names. If the node names are
+different, the descriptions are not copied to the new menu.
+
+ <br><dt><kbd>C-c C-u C-e</kbd><dt><kbd>M-x texinfo-every-node-update</kbd><dd><a name="index-texinfo_002devery_002dnode_002dupdate-135"></a>Insert or update the `Next', `Previous', and `Up' pointers for every
+node in the buffer.
+
+ <br><dt><kbd>C-c C-u C-a</kbd><dt><kbd>M-x texinfo-all-menus-update</kbd><dd><a name="index-texinfo_002dall_002dmenus_002dupdate-136"></a>Create or update all the menus in the buffer. With an argument
+(<kbd>C-u</kbd> as prefix argument, if interactive), first insert
+or update all the node
+pointers before working on the menus.
+
+ <p>If a master menu exists, the <code>texinfo-all-menus-update</code> command
+updates it; but the command does not create a new master menu if none
+already exists. (Use the <code>texinfo-master-menu</code> command for
+that.)
+
+ <p>When working on a document that does not merit a master menu, you can
+type the following:
+
+ <pre class="example"> C-u C-c C-u C-a
+ <br>or<br>
+ C-u M-x texinfo-all-menus-update
+ </pre>
+ <p class="noindent">This updates all the nodes and menus.
+</dl>
+
+ <p>The <code>texinfo-column-for-description</code> variable specifies the
+column to which menu descriptions are indented. By default, the value
+is 32 although it is often useful to reduce it to as low as 24. You
+can set the variable via customization (see <a href="emacs.html#Changing-an-Option">Changing an Option (The GNU Emacs Manual)</a>) or with the <kbd>M-x set-variable</kbd>
+command (see <a href="emacs.html#Examining">Examining and Setting Variables (The GNU Emacs Manual)</a>).
+
+ <p>Also, the <code>texinfo-indent-menu-description</code> command may be used to
+indent existing menu descriptions to a specified column. Finally, if
+you wish, you can use the <code>texinfo-insert-node-lines</code> command to
+insert missing <code>@node</code> lines into a file. (See <a href="#Other-Updating-Commands">Other Updating Commands</a>, for more information.)
+
+<div class="node">
+<p><hr>
+<a name="Updating-Requirements"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Other-Updating-Commands">Other Updating Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Updating-Commands">Updating Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a>
+<br>
+</div>
+
+<h4 class="subsection">2.5.2 Updating Requirements</h4>
+
+<p><a name="index-Updating-requirements-137"></a><a name="index-Requirements-for-updating-commands-138"></a>
+To use the updating commands, you must organize the Texinfo file
+hierarchically with chapters, sections, subsections, and the like.
+When you construct the hierarchy of the manual, do not `jump down'
+more than one level at a time: you can follow the `Top' node with a
+chapter, but not with a section; you can follow a chapter with a
+section, but not with a subsection. However, you may `jump up' any
+number of levels at one time&mdash;for example, from a subsection to a
+chapter.
+
+ <p>Each <code>@node</code> line, with the exception of the line for the `Top'
+node, must be followed by a line with a structuring command such as
+<code>@chapter</code>, <code>@section</code>, or
+<code>@unnumberedsubsec</code>.
+
+ <p>Each <code>@node</code> line/structuring-command line combination
+must look either like this:
+
+<pre class="example"> @node Comments, Minimum, Conventions, Overview
+ @comment node-name, next, previous, up
+ @section Comments
+</pre>
+ <p>or like this (without the <code>@comment</code> line):
+
+<pre class="example"> @node Comments, Minimum, Conventions, Overview
+ @section Comments
+</pre>
+ <p>or like this (without the explicit node pointers):
+
+<pre class="example"> @node Comments
+ @section Comments
+</pre>
+ <p class="noindent">In this example, `Comments' is the name of both the node and the
+section. The next node is called `Minimum' and the previous node is
+called `Conventions'. The `Comments' section is within the `Overview'
+node, which is specified by the `Up' pointer. (Instead of an
+<code>@comment</code> line, you may also write an <code>@ifinfo</code> line.)
+
+ <p>If a file has a `Top' node, it must be called <span class="samp">top</span> or <span class="samp">Top</span>
+and be the first node in the file.
+
+ <p>The menu updating commands create a menu of sections within a chapter,
+a menu of subsections within a section, and so on. This means that
+you must have a `Top' node if you want a menu of chapters.
+
+ <p>Incidentally, the <code>makeinfo</code> command will create an Info file for a
+hierarchically organized Texinfo file that lacks `Next', `Previous' and
+`Up' pointers. Thus, if you can be sure that your Texinfo file will be
+formatted with <code>makeinfo</code>, you have no need for the update node
+commands. (See <a href="#Creating-an-Info-File">Creating an Info File</a>, for more information about
+<code>makeinfo</code>.) However, both <code>makeinfo</code> and the
+<code>texinfo-format-...</code> commands require that you insert menus in
+the file.
+
+<div class="node">
+<p><hr>
+<a name="Other-Updating-Commands"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Updating-Requirements">Updating Requirements</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a>
+<br>
+</div>
+
+<h4 class="subsection">2.5.3 Other Updating Commands</h4>
+
+<p>In addition to the five major updating commands, Texinfo mode
+possesses several less frequently used updating commands:
+
+ <dl>
+<dt><kbd>M-x texinfo-insert-node-lines</kbd><dd><a name="index-texinfo_002dinsert_002dnode_002dlines-139"></a>Insert <code>@node</code> lines before the <code>@chapter</code>,
+<code>@section</code>, and other sectioning commands wherever they are
+missing throughout a region in a Texinfo file.
+
+ <p>With an argument (<kbd>C-u</kbd> as prefix argument, if interactive), the
+<code>texinfo-insert-node-lines</code> command not only inserts
+<code>@node</code> lines but also inserts the chapter or section titles as
+the names of the corresponding nodes. In addition, it inserts the
+titles as node names in pre-existing <code>@node</code> lines that lack
+names. Since node names should be more concise than section or
+chapter titles, you must manually edit node names so inserted.
+
+ <p>For example, the following marks a whole buffer as a region and inserts
+<code>@node</code> lines and titles throughout:
+
+ <pre class="example"> C-x h C-u M-x texinfo-insert-node-lines
+ </pre>
+ <p>This command inserts titles as node names in <code>@node</code> lines; the
+<code>texinfo-start-menu-description</code> command (see <a href="#Inserting">Inserting Frequently Used Commands</a>) inserts titles as descriptions in
+menu entries, a different action. However, in both cases, you need to
+edit the inserted text.
+
+ <br><dt><kbd>M-x texinfo-multiple-files-update</kbd><dd><a name="index-texinfo_002dmultiple_002dfiles_002dupdate-_0040r_007b_0028in-brief_0029_007d-140"></a>Update nodes and menus in a document built from several separate files.
+With <kbd>C-u</kbd> as a prefix argument, create and insert a master menu in
+the outer file. With a numeric prefix argument, such as <kbd>C-u 2</kbd>, first
+update all the menus and all the `Next', `Previous', and `Up' pointers
+of all the included files before creating and inserting a master menu in
+the outer file. The <code>texinfo-multiple-files-update</code> command is
+described in the appendix on <code>@include</code> files.
+See <a href="#texinfo_002dmultiple_002dfiles_002dupdate">texinfo-multiple-files-update</a>.
+
+ <br><dt><kbd>M-x texinfo-indent-menu-description</kbd><dd><a name="index-texinfo_002dindent_002dmenu_002ddescription-141"></a>Indent every description in the menu following point to the specified
+column. You can use this command to give yourself more space for
+descriptions. With an argument (<kbd>C-u</kbd> as prefix argument, if
+interactive), the <code>texinfo-indent-menu-description</code> command indents
+every description in every menu in the region. However, this command
+does not indent the second and subsequent lines of a multi-line
+description.
+
+ <br><dt><kbd>M-x texinfo-sequential-node-update</kbd><dd><a name="index-texinfo_002dsequential_002dnode_002dupdate-142"></a>Insert the names of the nodes immediately following and preceding the
+current node as the `Next' or `Previous' pointers regardless of those
+nodes' hierarchical level. This means that the `Next' node of a
+subsection may well be the next chapter. Sequentially ordered nodes are
+useful for novels and other documents that you read through
+sequentially. (However, in Info, the <kbd>g *</kbd> command lets
+you look through the file sequentially, so sequentially ordered nodes
+are not strictly necessary.) With an argument (prefix argument, if
+interactive), the <code>texinfo-sequential-node-update</code> command
+sequentially updates all the nodes in the region.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Info-Formatting"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Printing">Printing</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-Mode">Texinfo Mode</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.6 Formatting for Info</h3>
+
+<p><a name="index-Formatting-for-Info-143"></a><a name="index-Running-an-Info-formatter-144"></a><a name="index-Info-formatting-145"></a>
+Texinfo mode provides several commands for formatting part or all of a
+Texinfo file for Info. Often, when you are writing a document, you
+want to format only part of a file&mdash;that is, a region.
+
+ <p>You can use either the <code>texinfo-format-region</code> or the
+<code>makeinfo-region</code> command to format a region:
+
+
+<a name="index-texinfo_002dformat_002dregion-146"></a>
+<dl><dt><kbd>C-c C-e C-r</kbd><dt><kbd>M-x texinfo-format-region</kbd><dt><kbd>C-c C-m C-r</kbd><dt><kbd>M-x makeinfo-region</kbd><dd>Format the current region for Info.
+</dl>
+
+ <p>You can use either the <code>texinfo-format-buffer</code> or the
+<code>makeinfo-buffer</code> command to format a whole buffer:
+
+
+<a name="index-texinfo_002dformat_002dbuffer-147"></a>
+<dl><dt><kbd>C-c C-e C-b</kbd><dt><kbd>M-x texinfo-format-buffer</kbd><dt><kbd>C-c C-m C-b</kbd><dt><kbd>M-x makeinfo-buffer</kbd><dd>Format the current buffer for Info.
+</dl>
+
+ <p>For example, after writing a Texinfo file, you can type the following:
+
+<pre class="example"> C-u C-c C-u m
+<br>or<br>
+ C-u M-x texinfo-master-menu
+</pre>
+ <p class="noindent">This updates all the nodes and menus. Then type the following to create
+an Info file:
+
+<pre class="example"> C-c C-m C-b
+<br>or<br>
+ M-x makeinfo-buffer
+</pre>
+ <p>For TeX or the Info formatting commands to work, the file <em>must</em>
+include a line that has <code>@setfilename</code> in its header.
+
+ <p>See <a href="#Creating-an-Info-File">Creating an Info File</a>, for details about Info formatting.
+
+<div class="node">
+<p><hr>
+<a name="Printing"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Texinfo-Mode-Summary">Texinfo Mode Summary</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Info-Formatting">Info Formatting</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-Mode">Texinfo Mode</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.7 Printing</h3>
+
+<p><a name="index-Formatting-for-printing-148"></a><a name="index-Printing-a-region-or-buffer-149"></a><a name="index-Region-formatting-and-printing-150"></a><a name="index-Buffer-formatting-and-printing-151"></a><a name="index-Part-of-file-formatting-and-printing-152"></a>
+Typesetting and printing a Texinfo file is a multi-step process in which
+you first create a file for printing (called a DVI file), and then
+print the file. Optionally, you may also create indices. To do this,
+you must run the <code>texindex</code> command after first running the
+<code>tex</code> typesetting command; and then you must run the <code>tex</code>
+command again. Or else run the <code>texi2dvi</code> command which
+automatically creates indices as needed (see <a href="#Format-with-texi2dvi">Format with texi2dvi</a>).
+
+ <p>Often, when you are writing a document, you want to typeset and print
+only part of a file to see what it will look like. You can use the
+<code>texinfo-tex-region</code> and related commands for this purpose. Use
+the <code>texinfo-tex-buffer</code> command to format all of a
+buffer.
+
+ <dl>
+<dt><kbd>C-c C-t C-b</kbd><dt><kbd>M-x texinfo-tex-buffer</kbd><dd><a name="index-texinfo_002dtex_002dbuffer-153"></a>Run <code>texi2dvi</code> on the buffer. In addition to running TeX on the
+buffer, this command automatically creates or updates indices as
+needed.
+
+ <br><dt><kbd>C-c C-t C-r</kbd><dt><kbd>M-x texinfo-tex-region</kbd><dd><a name="index-texinfo_002dtex_002dregion-154"></a>Run TeX on the region.
+
+ <br><dt><kbd>C-c C-t C-i</kbd><dt><kbd>M-x texinfo-texindex</kbd><dd>Run <code>texindex</code> to sort the indices of a Texinfo file formatted with
+<code>texinfo-tex-region</code>. The <code>texinfo-tex-region</code> command does
+not run <code>texindex</code> automatically; it only runs the <code>tex</code>
+typesetting command. You must run the <code>texinfo-tex-region</code> command
+a second time after sorting the raw index files with the <code>texindex</code>
+command. (Usually, you do not format an index when you format a region,
+only when you format a buffer. Now that the <code>texi2dvi</code> command
+exists, there is little or no need for this command.)
+
+ <br><dt><kbd>C-c C-t C-p</kbd><dt><kbd>M-x texinfo-tex-print</kbd><dd><a name="index-texinfo_002dtex_002dprint-155"></a>Print the file (or the part of the file) previously formatted with
+<code>texinfo-tex-buffer</code> or <code>texinfo-tex-region</code>.
+</dl>
+
+ <p>For <code>texinfo-tex-region</code> or <code>texinfo-tex-buffer</code> to work, the
+file <em>must</em> start with a <span class="samp">\input texinfo</span> line and must
+include an <code>@settitle</code> line. The file must end with <code>@bye</code>
+on a line by itself. (When you use <code>texinfo-tex-region</code>, you must
+surround the <code>@settitle</code> line with start-of-header and
+end-of-header lines.)
+
+ <p>See <a href="#Hardcopy">Hardcopy</a>, for a description of the other TeX related
+commands, such as <code>tex-show-print-queue</code>.
+
+<div class="node">
+<p><hr>
+<a name="Texinfo-Mode-Summary"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Printing">Printing</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-Mode">Texinfo Mode</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">2.8 Texinfo Mode Summary</h3>
+
+<p>In Texinfo mode, each set of commands has default keybindings that
+begin with the same keys. All the commands that are custom-created
+for Texinfo mode begin with <kbd>C-c</kbd>. The keys are somewhat
+mnemonic.
+
+<h4 class="subheading">Insert Commands</h4>
+
+<p>The insert commands are invoked by typing <kbd>C-c</kbd> twice and then the
+first letter of the @-command to be inserted. (It might make more
+sense mnemonically to use <kbd>C-c C-i</kbd>, for `custom insert', but
+<kbd>C-c C-c</kbd> is quick to type.)
+
+<pre class="example"> C-c C-c c <span class="roman">Insert</span> <span class="samp">@code</span>.
+ C-c C-c d <span class="roman">Insert</span> <span class="samp">@dfn</span>.
+ C-c C-c e <span class="roman">Insert</span> <span class="samp">@end</span>.
+ C-c C-c i <span class="roman">Insert</span> <span class="samp">@item</span>.
+ C-c C-c n <span class="roman">Insert</span> <span class="samp">@node</span>.
+ C-c C-c s <span class="roman">Insert</span> <span class="samp">@samp</span>.
+ C-c C-c v <span class="roman">Insert</span> <span class="samp">@var</span>.
+ C-c C-c { <span class="roman">Insert braces.</span>
+ C-c C-c ]
+ C-c C-c } <span class="roman">Move out of enclosing braces.</span>
+
+ C-c C-c C-d <span class="roman">Insert a node's section title</span>
+ <span class="roman">in the space for the description</span>
+ <span class="roman">in a menu entry line.</span>
+</pre>
+ <h4 class="subheading">Show Structure</h4>
+
+<p>The <code>texinfo-show-structure</code> command is often used within a
+narrowed region.
+
+<pre class="example"> C-c C-s <span class="roman">List all the headings.</span>
+</pre>
+ <h4 class="subheading">The Master Update Command</h4>
+
+<p>The <code>texinfo-master-menu</code> command creates a master menu; and can
+be used to update every node and menu in a file as well.
+
+<!-- Probably should use @tables in this section. -->
+<pre class="example"> C-c C-u m
+ M-x texinfo-master-menu
+ <span class="roman">Create or update a master menu.</span>
+
+ C-u C-c C-u m <span class="roman">With </span><kbd>C-u</kbd><span class="roman"> as a prefix argument, first</span>
+ <span class="roman">create or update all nodes and regular</span>
+ <span class="roman">menus, and then create a master menu.</span>
+</pre>
+ <h4 class="subheading">Update Pointers</h4>
+
+<p>The update pointer commands are invoked by typing <kbd>C-c C-u</kbd> and
+then either <kbd>C-n</kbd> for <code>texinfo-update-node</code> or <kbd>C-e</kbd> for
+<code>texinfo-every-node-update</code>.
+
+<pre class="example"> C-c C-u C-n <span class="roman">Update a node.</span>
+ C-c C-u C-e <span class="roman">Update every node in the buffer.</span>
+</pre>
+ <h4 class="subheading">Update Menus</h4>
+
+<p>Invoke the update menu commands by typing <kbd>C-c C-u</kbd>
+and then either <kbd>C-m</kbd> for <code>texinfo-make-menu</code> or
+<kbd>C-a</kbd> for <code>texinfo-all-menus-update</code>. To update
+both nodes and menus at the same time, precede <kbd>C-c C-u
+C-a</kbd> with <kbd>C-u</kbd>.
+
+<pre class="example"> C-c C-u C-m <span class="roman">Make or update a menu.</span>
+
+ C-c C-u C-a <span class="roman">Make or update all</span>
+ <span class="roman">menus in a buffer.</span>
+
+ C-u C-c C-u C-a <span class="roman">With </span><kbd>C-u</kbd><span class="roman"> as a prefix argument,</span>
+ <span class="roman">first create or update all nodes and</span>
+ <span class="roman">then create or update all menus.</span>
+</pre>
+ <h4 class="subheading">Format for Info</h4>
+
+<p>The Info formatting commands that are written in Emacs Lisp are
+invoked by typing <kbd>C-c C-e</kbd> and then either <kbd>C-r</kbd> for a region
+or <kbd>C-b</kbd> for the whole buffer.
+
+ <p>The Info formatting commands that are written in C and based on the
+<code>makeinfo</code> program are invoked by typing <kbd>C-c C-m</kbd> and then
+either <kbd>C-r</kbd> for a region or <kbd>C-b</kbd> for the whole buffer.
+
+<p class="noindent">Use the <code>texinfo-format...</code> commands:
+
+<pre class="example"> C-c C-e C-r <span class="roman">Format the region.</span>
+ C-c C-e C-b <span class="roman">Format the buffer.</span>
+</pre>
+ <p class="noindent">Use <code>makeinfo</code>:
+
+<pre class="example"> C-c C-m C-r <span class="roman">Format the region.</span>
+ C-c C-m C-b <span class="roman">Format the buffer.</span>
+ C-c C-m C-l <span class="roman">Recenter the </span><code>makeinfo</code><span class="roman"> output buffer.</span>
+ C-c C-m C-k <span class="roman">Kill the </span><code>makeinfo</code><span class="roman"> formatting job.</span>
+</pre>
+ <h4 class="subheading">Typeset and Print</h4>
+
+<p>The TeX typesetting and printing commands are invoked by typing
+<kbd>C-c C-t</kbd> and then another control command: <kbd>C-r</kbd> for
+<code>texinfo-tex-region</code>, <kbd>C-b</kbd> for <code>texinfo-tex-buffer</code>,
+and so on.
+
+<pre class="example"> C-c C-t C-r <span class="roman">Run TeX on the region.</span>
+ C-c C-t C-b <span class="roman">Run</span> <code>texi2dvi</code> <span class="roman">on the buffer.</span>
+ C-c C-t C-i <span class="roman">Run</span> <code>texindex</code>.
+ C-c C-t C-p <span class="roman">Print the DVI file.</span>
+ C-c C-t C-q <span class="roman">Show the print queue.</span>
+ C-c C-t C-d <span class="roman">Delete a job from the print queue.</span>
+ C-c C-t C-k <span class="roman">Kill the current TeX formatting job.</span>
+ C-c C-t C-x <span class="roman">Quit a currently stopped TeX formatting job.</span>
+ C-c C-t C-l <span class="roman">Recenter the output buffer.</span>
+</pre>
+ <h4 class="subheading">Other Updating Commands</h4>
+
+<p>The remaining updating commands do not have standard keybindings because
+they are rarely used.
+
+<pre class="example"> M-x texinfo-insert-node-lines
+ <span class="roman">Insert missing </span><code>@node</code><span class="roman"> lines in region.</span>
+ <span class="roman">With </span><kbd>C-u</kbd><span class="roman"> as a prefix argument,</span>
+ <span class="roman">use section titles as node names.</span>
+
+ M-x texinfo-multiple-files-update
+ <span class="roman">Update a multi-file document.</span>
+ <span class="roman">With </span><kbd>C-u 2</kbd><span class="roman"> as a prefix argument,</span>
+ <span class="roman">create or update all nodes and menus</span>
+ <span class="roman">in all included files first.</span>
+
+ M-x texinfo-indent-menu-description
+ <span class="roman">Indent descriptions.</span>
+
+ M-x texinfo-sequential-node-update
+ <span class="roman">Insert node pointers in strict sequence.</span>
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Beginning-a-File"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Ending-a-File">Ending a File</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Texinfo-Mode">Texinfo Mode</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">3 Beginning a Texinfo File</h2>
+
+<p><a name="index-Beginning-a-Texinfo-file-156"></a><a name="index-Texinfo-file-beginning-157"></a><a name="index-File-beginning-158"></a>
+Certain pieces of information must be provided at the beginning of a
+Texinfo file, such as the name for the output file(s), the title of the
+document, and the Top node. A table of contents is also generally
+produced here.
+
+ <p>This chapter expands on the minimal complete Texinfo source file
+previously given (see <a href="#Six-Parts">Six Parts</a>). It describes the numerous
+commands for handling the traditional frontmatter items in Texinfo.
+
+ <p><a name="index-Frontmatter_002c-text-in-159"></a>Straight text outside of any command before the Top node should be
+avoided. Such text is treated differently in the different output
+formats: visible in TeX and HTML, by default not shown in Info
+readers, and so on.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Sample-Beginning">Sample Beginning</a>: A sample beginning for a Texinfo file.
+<li><a accesskey="2" href="#Texinfo-File-Header">Texinfo File Header</a>: The first lines.
+<li><a accesskey="3" href="#Document-Permissions">Document Permissions</a>: Ensuring your manual is free.
+<li><a accesskey="4" href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>: Creating the title and copyright pages.
+<li><a accesskey="5" href="#Contents">Contents</a>: How to create a table of contents.
+<li><a accesskey="6" href="#The-Top-Node">The Top Node</a>: Creating the `Top' node and master menu.
+<li><a accesskey="7" href="#Global-Document-Commands">Global Document Commands</a>: Affecting formatting throughout.
+<li><a accesskey="8" href="#Software-Copying-Permissions">Software Copying Permissions</a>: Ensure that you and others continue to
+ have the right to use and share software.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Sample-Beginning"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Texinfo-File-Header">Texinfo File Header</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Beginning-a-File">Beginning a File</a>
+<br>
+</div>
+
+<h3 class="section">3.1 Sample Texinfo File Beginning</h3>
+
+<p><a name="index-Example-beginning-of-Texinfo-file-160"></a>
+The following sample shows what is needed. The elements given here are
+explained in more detail in the following sections. Other commands are
+often included at the beginning of Texinfo files, but the ones here are
+the most critical.
+
+ <p>See <a href="#GNU-Sample-Texts">GNU Sample Texts</a>, for the full texts to be used in GNU manuals.
+
+<pre class="example"> \input texinfo @c -*-texinfo-*-
+ @c %**start of header
+ @setfilename <var>infoname</var>.info
+ @settitle <var>name-of-manual</var> <var>version</var>
+ @c %**end of header
+
+ @copying
+ This manual is for <var>program</var>, version <var>version</var>.
+
+ Copyright @copyright{} <var>years</var> <var>copyright-owner</var>.
+
+ @quotation
+ Permission is granted to ...
+ @end quotation
+ @end copying
+
+ @titlepage
+ @title <var>name-of-manual-when-printed</var>
+ @subtitle <var>subtitle-if-any</var>
+ @subtitle <var>second-subtitle</var>
+ @author <var>author</var>
+
+ @c The following two commands
+ @c start the copyright page.
+ @page
+ @vskip 0pt plus 1filll
+ @insertcopying
+
+ Published by ...
+ @end titlepage
+
+ @c So the toc is printed at the start.
+ @contents
+
+ @ifnottex
+ @node Top
+ @top <var>title</var>
+
+ @insertcopying
+ @end ifnottex
+
+ @menu
+ * First Chapter:: Getting started ...
+ * Second Chapter:: ...
+ ...
+ * Copying:: Your rights and freedoms.
+ @end menu
+
+ @node First Chapter
+ @chapter First Chapter
+
+ @cindex first chapter
+ @cindex chapter, first
+ ...
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Texinfo-File-Header"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Document-Permissions">Document Permissions</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Sample-Beginning">Sample Beginning</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Beginning-a-File">Beginning a File</a>
+<br>
+</div>
+
+<h3 class="section">3.2 Texinfo File Header</h3>
+
+<p><a name="index-Header-for-Texinfo-files-161"></a><a name="index-Texinfo-file-header-162"></a>
+Texinfo files start with at least three lines that provide Info and
+TeX with necessary information. These are the <code>\input texinfo</code>
+line, the <code>@settitle</code> line, and the <code>@setfilename</code> line.
+
+ <p>Also, if you want to format just part of the Texinfo file, you must
+write the <code>@settitle</code> and <code>@setfilename</code> lines between
+start-of-header and end-of-header lines. The start- and end-of-header
+lines are optional, but they do no harm, so you might as well always
+include them.
+
+ <p>Any command that affects document formatting as a whole makes sense to
+include in the header. <code>@synindex</code> (see <a href="#synindex">synindex</a>), for
+instance, is another command often included in the header. See <a href="#GNU-Sample-Texts">GNU Sample Texts</a>, for complete sample texts.
+
+ <p>Thus, the beginning of a Texinfo file generally looks like this:
+
+<pre class="example"> \input texinfo @c -*-texinfo-*-
+ @c %**start of header
+ @setfilename sample.info
+ @settitle Sample Manual 1.0
+ @c %**end of header
+</pre>
+ <ul class="menu">
+<li><a accesskey="1" href="#First-Line">First Line</a>: The first line of a Texinfo file.
+<li><a accesskey="2" href="#Start-of-Header">Start of Header</a>: Formatting a region requires this.
+<li><a accesskey="3" href="#setfilename">setfilename</a>: Tell Info the name of the Info file.
+<li><a accesskey="4" href="#settitle">settitle</a>: Create a title for the printed work.
+<li><a accesskey="5" href="#End-of-Header">End of Header</a>: Formatting a region requires this.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="First-Line"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Start-of-Header">Start of Header</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-File-Header">Texinfo File Header</a>
+<br>
+</div>
+
+<h4 class="subsection">3.2.1 The First Line of a Texinfo File</h4>
+
+<p><a name="index-First-line-of-a-Texinfo-file-163"></a><a name="index-Beginning-line-of-a-Texinfo-file-164"></a><a name="index-Header-of-a-Texinfo-file-165"></a>
+Every Texinfo file that is to be the top-level input to TeX must begin
+with a line that looks like this:
+
+<pre class="example"> \input texinfo @c -*-texinfo-*-
+</pre>
+ <p class="noindent">This line serves two functions:
+
+ <ol type=1 start=1>
+<li>When the file is processed by TeX, the <span class="samp">\input texinfo</span> command
+tells TeX to load the macros needed for processing a Texinfo file.
+These are in a file called <span class="file">texinfo.tex</span>, which should have been
+installed on your system along with either the TeX or Texinfo
+software. TeX uses the backslash, <span class="samp">\</span>, to mark the beginning of
+a command, exactly as Texinfo uses <span class="samp">@</span>. The <span class="file">texinfo.tex</span>
+file causes the switch from <span class="samp">\</span> to <span class="samp">@</span>; before the switch
+occurs, TeX requires <span class="samp">\</span>, which is why it appears at the
+beginning of the file.
+
+ <li>When the file is edited in GNU Emacs, the <span class="samp">-*-texinfo-*-</span> mode
+specification tells Emacs to use Texinfo mode.
+ </ol>
+
+<div class="node">
+<p><hr>
+<a name="Start-of-Header"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#setfilename">setfilename</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#First-Line">First Line</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-File-Header">Texinfo File Header</a>
+<br>
+</div>
+
+<h4 class="subsection">3.2.2 Start of Header</h4>
+
+<p><a name="index-Start-of-header-line-166"></a>
+A start-of-header line is a Texinfo comment that looks like this:
+
+<pre class="example"> @c %**start of header
+</pre>
+ <p>Write the start-of-header line on the second line of a Texinfo file.
+Follow the start-of-header line with <code>@setfilename</code> and
+<code>@settitle</code> lines and, optionally, with other commands that
+globally affect the document formatting, such as <code>@synindex</code> or
+<code>@footnotestyle</code>; and then by an end-of-header line (see <a href="#End-of-Header">End of Header</a>).
+
+ <p>The start- and end-of-header lines allow you to format only part of a
+Texinfo file for Info or printing. See <a href="#texinfo_002dformat-commands">texinfo-format commands</a>.
+
+ <p>The odd string of characters, <span class="samp">%**</span>, is to ensure that no other
+comment is accidentally taken for a start-of-header line. You can
+change it if you wish by setting the <code>tex-start-of-header</code> and/or
+<code>tex-end-of-header</code> Emacs variables. See <a href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a>.
+
+<div class="node">
+<p><hr>
+<a name="setfilename"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#settitle">settitle</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Start-of-Header">Start of Header</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-File-Header">Texinfo File Header</a>
+<br>
+</div>
+
+<h4 class="subsection">3.2.3 <code>@setfilename</code>: Set the output file name</h4>
+
+<p><a name="index-setfilename-167"></a><a name="index-Texinfo-requires-_0040code_007b_0040_0040setfilename_007d-168"></a>
+In order to serve as the primary input file for either <code>makeinfo</code>
+or TeX, a Texinfo file must contain a line that looks like this:
+
+<pre class="example"> @setfilename <var>info-file-name</var>
+</pre>
+ <p>Write the <code>@setfilename</code> command at the beginning of a line and
+follow it on the same line by the Info file name. Do not write anything
+else on the line; anything on the line after the command is considered
+part of the file name, including what would otherwise be a
+comment.
+
+ <p><a name="index-Ignored-before-_0040code_007b_0040_0040setfilename_007d-169"></a><a name="index-_0040samp_007b_005cinput_007d-source-line-ignored-170"></a>The Info formatting commands ignore everything written before the
+<code>@setfilename</code> line, which is why the very first line of
+the file (the <code>\input</code> line) does not show up in the output.
+
+ <p>The <code>@setfilename</code> line specifies the name of the output file to
+be generated. This name must be different from the name of the Texinfo
+file. There are two conventions for choosing the name: you can either
+remove the extension (such as <span class="samp">.texi</span>) entirely from the input file
+name, or, preferably, replace it with the <span class="samp">.info</span> extension.
+
+ <p><a name="index-Length-of-file-names-171"></a><a name="index-File-name-collision-172"></a><a name="index-Info-file-name_002c-choosing-173"></a>Although an explicit <span class="samp">.info</span> extension is preferable, some
+operating systems cannot handle long file names. You can run into a
+problem even when the file name you specify is itself short enough.
+This occurs because the Info formatters split a long Info file into
+short indirect subfiles, and name them by appending <span class="samp">-1</span>,
+<span class="samp">-2</span>, <small class="dots">...</small>, <span class="samp">-10</span>, <span class="samp">-11</span>, and so on, to the original
+file name. (See <a href="#Tag-and-Split-Files">Tag and Split Files</a>.) The subfile name
+<span class="file">texinfo.info-10</span>, for example, is too long for old systems with a
+14-character limit on filenames; so the Info file name for this document
+is <span class="file">texinfo</span> rather than <span class="file">texinfo.info</span>. When <code>makeinfo</code>
+is running on operating systems such as MS-DOS which impose severe
+limits on file names, it may remove some characters from the original
+file name to leave enough space for the subfile suffix, thus producing
+files named <span class="file">texin-10</span>, <span class="file">gcc.i12</span>, etc.
+
+ <p>When producing HTML output, <code>makeinfo</code> will replace any extension
+with <span class="samp">html</span>, or add <span class="samp">.html</span> if the given name has no
+extension.
+
+ <p><a name="index-texinfo_002ecnf-174"></a>The <code>@setfilename</code> line produces no output when you typeset a
+manual with TeX, but it is nevertheless essential: it opens the
+index, cross-reference, and other auxiliary files used by Texinfo, and
+also reads <span class="file">texinfo.cnf</span> if that file is present on your system
+(see <a href="#Preparing-for-TeX">Preparing for TeX</a>).
+
+<div class="node">
+<p><hr>
+<a name="settitle"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#End-of-Header">End of Header</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#setfilename">setfilename</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-File-Header">Texinfo File Header</a>
+<br>
+</div>
+
+<h4 class="subsection">3.2.4 <code>@settitle</code>: Set the document title</h4>
+
+<p><a name="index-settitle-175"></a>
+In order to be made into a printed manual, a Texinfo file must contain
+a line that looks like this:
+
+<pre class="example"> @settitle <var>title</var>
+</pre>
+ <p>Write the <code>@settitle</code> command at the beginning of a line and
+follow it on the same line by the title. This tells TeX the title to
+use in a header or footer. Do not write anything else on the line;
+anything on the line after the command is considered part of the title,
+including what would otherwise be a comment.
+
+ <p>The <code>@settitle</code> command should precede everything that generates
+actual output. The best place for it is right after the
+<code>@setfilename</code> command (see the previous section).
+
+ <p><a name="index-_003ctitle_003e-HTML-tag-176"></a>In the HTML file produced by <span class="command">makeinfo</span>, <var>title</var> serves as
+the document <span class="samp">&lt;title&gt;</span>. It also becomes the default document
+description in the <span class="samp">&lt;head&gt;</span> part (see <a href="#documentdescription">documentdescription</a>).
+
+ <p>The title in the <code>@settitle</code> command does not affect the title as
+it appears on the title page. Thus, the two do not need not match
+exactly. A practice we recommend is to include the version or edition
+number of the manual in the <code>@settitle</code> title; on the title page,
+the version number generally appears as a <code>@subtitle</code> so it would
+be omitted from the <code>@title</code>. See <a href="#titlepage">titlepage</a>.
+
+ <p>Conventionally, when TeX formats a Texinfo file for double-sided
+output, the title is printed in the left-hand (even-numbered) page
+headings and the current chapter title is printed in the right-hand
+(odd-numbered) page headings. (TeX learns the title of each chapter
+from each <code>@chapter</code> command.) By default, no page footer is
+printed.
+
+ <p>Even if you are printing in a single-sided style, TeX looks for an
+<code>@settitle</code> command line, in case you include the manual title
+in the heading.
+
+ <p>TeX prints page headings only for that text that comes after the
+<code>@end titlepage</code> command in the Texinfo file, or that comes
+after an <code>@headings</code> command that turns on headings.
+(See <a href="#headings-on-off">The <code>@headings</code> Command</a>, for more
+information.)
+
+ <p>You may, if you wish, create your own, customized headings and footings.
+See <a href="#Headings">Headings</a>, for a detailed discussion of this.
+
+<div class="node">
+<p><hr>
+<a name="End-of-Header"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#settitle">settitle</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Texinfo-File-Header">Texinfo File Header</a>
+<br>
+</div>
+
+<h4 class="subsection">3.2.5 End of Header</h4>
+
+<p><a name="index-End-of-header-line-177"></a>
+Follow the header lines with an end-of-header<!-- /@w --> line, which is a
+Texinfo comment that looks like this:
+
+<pre class="example"> @c %**end of header
+</pre>
+ <p>See <a href="#Start-of-Header">Start of Header</a>.
+
+<div class="node">
+<p><hr>
+<a name="Document-Permissions"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Texinfo-File-Header">Texinfo File Header</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Beginning-a-File">Beginning a File</a>
+<br>
+</div>
+
+<h3 class="section">3.3 Document Permissions</h3>
+
+<p><a name="index-Document-Permissions-178"></a><a name="index-Copying-Permissions-179"></a>
+The copyright notice and copying permissions for a document need to
+appear in several places in the various Texinfo output formats.
+Therefore, Texinfo provides a command (<code>@copying</code>) to declare
+this text once, and another command (<code>@insertcopying</code>) to
+insert the text at appropriate points.
+
+<ul class="menu">
+<li><a accesskey="1" href="#copying">copying</a>: Declare the document's copying permissions.
+<li><a accesskey="2" href="#insertcopying">insertcopying</a>: Where to insert the permissions.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="copying"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#insertcopying">insertcopying</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Document-Permissions">Document Permissions</a>
+<br>
+</div>
+
+<h4 class="subsection">3.3.1 <code>@copying</code>: Declare Copying Permissions</h4>
+
+<p><a name="index-copying-180"></a>
+The <code>@copying</code> command should be given very early in the document;
+the recommended location is right after the header material
+(see <a href="#Texinfo-File-Header">Texinfo File Header</a>). It conventionally consists of a sentence
+or two about what the program is, identification of the documentation
+itself, the legal copyright line, and the copying permissions. Here is
+a skeletal example:
+
+<pre class="example"> @copying
+ This manual is for <var>program</var> (version <var>version</var>, updated
+ <var>date</var>), which ...
+
+ Copyright @copyright{} <var>years</var> <var>copyright-owner</var>.
+
+ @quotation
+ Permission is granted to ...
+ @end quotation
+ @end copying
+</pre>
+ <p>The <code>@quotation</code> has no legal significance; it's there to improve
+readability in some contexts.
+
+ <p>See <a href="#GNU-Sample-Texts">GNU Sample Texts</a>, for the full text to be used in GNU manuals.
+See <a href="#GNU-Free-Documentation-License">GNU Free Documentation License</a>, for the license itself under
+which GNU and other free manuals are distributed. You need to include
+the license as an appendix to your document.
+
+ <p>The text of <code>@copying</code> is output as a comment at the beginning of
+Info, HTML, and XML output files. It is <em>not</em> output implicitly in
+plain text or TeX; it's up to you to use <code>@insertcopying</code> to
+emit the copying information. See the next section for details.
+
+ <p><a name="index-copyright-181"></a>The <code>@copyright{}</code> command generates a <span class="samp">c</span> inside a circle
+in output formats that support this (print and HTML). In the other
+formats (Info and plain text), it generates <span class="samp">(C)</span>. The copyright
+notice itself has the following legally defined sequence:
+
+<pre class="example"> Copyright &copy; <var>years</var> <var>copyright-owner</var>.
+</pre>
+ <p><a name="index-Copyright-word_002c-always-in-English-182"></a>The word `Copyright' must always be written in English, even if the
+document is otherwise written in another language. This is due to
+international law.
+
+ <p><a name="index-Years_002c-in-copyright-line-183"></a>The list of years should include all years in which a version was
+completed (even if it was released in a subsequent year). Ranges are
+not allowed; each year must be written out individually and in full,
+separated by commas.
+
+ <p><a name="index-Copyright-holder-for-FSF-works-184"></a><a name="index-Holder-of-copyright-for-FSF-works-185"></a><a name="index-Owner-of-copyright-for-FSF-works-186"></a>The copyright owner (or owners) is whoever holds legal copyright on the
+work. In the case of works assigned to the FSF, the owner is `Free
+Software Foundation, Inc.'.
+
+ <p>The copyright `line' may actually be split across multiple
+lines, both in the source document and in the output. This often
+happens for documents with a long history, having many different years
+of publication.
+
+ <p>See <a href="maintain.html#Copyright-Notices">Copyright Notices (GNU Maintenance Instructions)</a>, for
+additional information.
+
+<div class="node">
+<p><hr>
+<a name="insertcopying"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#copying">copying</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Document-Permissions">Document Permissions</a>
+<br>
+</div>
+
+<h4 class="subsection">3.3.2 <code>@insertcopying</code>: Include Permissions Text</h4>
+
+<p><a name="index-insertcopying-187"></a><a name="index-Copying-text_002c-including-188"></a><a name="index-Permissions-text_002c-including-189"></a><a name="index-Including-permissions-text-190"></a>
+The <code>@insertcopying</code> command is simply written on a line by
+itself, like this:
+
+<pre class="example"> @insertcopying
+</pre>
+ <p>This inserts the text previously defined by <code>@copying</code>. To meet
+legal requirements, it must be used on the copyright page in the printed
+manual (see <a href="#Copyright">Copyright</a>).
+
+ <p>We also strongly recommend using <code>@insertcopying</code> in the Top node
+of your manual (see <a href="#The-Top-Node">The Top Node</a>), although it is not required
+legally. Here's why:
+
+ <p>The <code>@copying</code> command itself causes the permissions text to
+appear in an Info file <em>before</em> the first node. The text is also
+copied into the beginning of each split Info output file, as is legally
+necessary. This location implies a human reading the manual using Info
+does <em>not</em> see this text (except when using the advanced Info
+command <kbd>g *</kbd>). Therefore, an explicit <code>@insertcopying</code>
+in the Top node makes it apparent to readers that the manual is free.
+
+ <p>Similarly, the <code>@copying</code> text is automatically included at the
+beginning of each HTML output file, as an HTML comment. Again, this
+text is not visible (unless the reader views the HTML source). And
+therefore again, the <code>@insertcopying</code> in the Top node is valuable
+because it makes the copying permissions visible and thus promotes
+freedom.
+
+ <p>The permissions text defined by <code>@copying</code> also appears
+automatically at the beginning of the XML output file.
+
+<div class="node">
+<p><hr>
+<a name="Titlepage-_0026-Copyright-Page"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Contents">Contents</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Document-Permissions">Document Permissions</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Beginning-a-File">Beginning a File</a>
+<br>
+</div>
+
+<h3 class="section">3.4 Title and Copyright Pages</h3>
+
+<p>In hard copy output, the manual's name and author are usually printed on
+a title page. Copyright information is usually printed on the back of
+the title page.
+
+ <p>The title and copyright pages appear in the printed manual, but not in
+the Info file. Because of this, it is possible to use several slightly
+obscure TeX typesetting commands that cannot be used in an Info file.
+In addition, this part of the beginning of a Texinfo file contains the
+text of the copying permissions that appears in the printed manual.
+
+ <p><a name="index-Title-page_002c-for-plain-text-191"></a><a name="index-Copyright-page_002c-for-plain-text-192"></a>You may wish to include titlepage-like information for plain text
+output. Simply place any such leading material between
+<code>@ifplaintext</code> and <code>@end ifplaintext</code>; <span class="command">makeinfo</span>
+includes this when writing plain text (<span class="samp">--no-headers</span>), along with
+an <code>@insertcopying</code>.
+
+<ul class="menu">
+<li><a accesskey="1" href="#titlepage">titlepage</a>: Create a title for the printed document.
+<li><a accesskey="2" href="#titlefont-center-sp">titlefont center sp</a>: The <code>@titlefont</code>, <code>@center</code>,
+ and <code>@sp</code> commands.
+<li><a accesskey="3" href="#title-subtitle-author">title subtitle author</a>: The <code>@title</code>, <code>@subtitle</code>,
+ and <code>@author</code> commands.
+<li><a accesskey="4" href="#Copyright">Copyright</a>: How to write the copyright notice and
+ include copying permissions.
+<li><a accesskey="5" href="#end-titlepage">end titlepage</a>: Turn on page headings after the title and
+ copyright pages.
+<li><a accesskey="6" href="#headings-on-off">headings on off</a>: An option for turning headings on and off
+ and double or single sided printing.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="titlepage"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#titlefont-center-sp">titlefont center sp</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>
+<br>
+</div>
+
+<h4 class="subsection">3.4.1 <code>@titlepage</code></h4>
+
+<p><a name="index-Title-page-193"></a><a name="index-titlepage-194"></a>
+Start the material for the title page and following copyright page
+with <code>@titlepage</code> on a line by itself and end it with
+<code>@end titlepage</code> on a line by itself.
+
+ <p>The <code>@end titlepage</code> command starts a new page and turns on page
+numbering. (See <a href="#Headings">Page Headings</a>, for details about how to
+generate page headings.) All the material that you want to appear on
+unnumbered pages should be put between the <code>@titlepage</code> and
+<code>@end titlepage</code> commands. You can force the table of contents to
+appear there with the <code>@setcontentsaftertitlepage</code> command
+(see <a href="#Contents">Contents</a>).
+
+ <p><a name="index-page_0040r_007b_002c-within-_0040code_007b_0040_0040titlepage_007d_007d-195"></a>By using the <code>@page</code> command you can force a page break within the
+region delineated by the <code>@titlepage</code> and <code>@end titlepage</code>
+commands and thereby create more than one unnumbered page. This is how
+the copyright page is produced. (The <code>@titlepage</code> command might
+perhaps have been better named the <code>@titleandadditionalpages</code>
+command, but that would have been rather long!)
+
+ <p>When you write a manual about a computer program, you should write the
+version of the program to which the manual applies on the title page.
+If the manual changes more frequently than the program or is independent
+of it, you should also include an edition number<a rel="footnote" href="#fn-5" name="fnd-5"><sup>5</sup></a> for the manual.
+This helps readers keep track of which manual is for which version of
+the program. (The `Top' node should also contain this information; see
+<a href="#The-Top-Node">The Top Node</a>.)
+
+ <p>Texinfo provides two main methods for creating a title page. One method
+uses the <code>@titlefont</code>, <code>@sp</code>, and <code>@center</code> commands
+to generate a title page in which the words on the page are
+centered.
+
+ <p>The second method uses the <code>@title</code>, <code>@subtitle</code>, and
+<code>@author</code> commands to create a title page with black rules under
+the title and author lines and the subtitle text set flush to the
+right hand side of the page. With this method, you do not specify any
+of the actual formatting of the title page. You specify the text
+you want, and Texinfo does the formatting.
+
+ <p>You may use either method, or you may combine them; see the examples in
+the sections below.
+
+ <p><a name="index-shorttitlepage-196"></a><a name="index-Bastard-title-page-197"></a><a name="index-Title-page_002c-bastard-198"></a>For extremely simple documents, and for the bastard title page in
+traditional book frontmatter, Texinfo also provides a command
+<code>@shorttitlepage</code> which takes the rest of the line as the title.
+The argument is typeset on a page by itself and followed by a blank
+page.
+
+<div class="node">
+<p><hr>
+<a name="titlefont-center-sp"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#title-subtitle-author">title subtitle author</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#titlepage">titlepage</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>
+<br>
+</div>
+
+<h4 class="subsection">3.4.2 <code>@titlefont</code>, <code>@center</code>, and <code>@sp</code></h4>
+
+<p><a name="index-titlefont-199"></a><a name="index-center-200"></a><a name="index-sp-_0040r_007b_0028titlepage-line-spacing_0029_007d-201"></a>
+You can use the <code>@titlefont</code>, <code>@sp</code>, and <code>@center</code>
+commands to create a title page for a printed document. (This is the
+first of the two methods for creating a title page in Texinfo.)
+
+ <p>Use the <code>@titlefont</code> command to select a large font suitable for
+the title itself. You can use <code>@titlefont</code> more than once if you
+have an especially long title.
+
+ <p>For HTML output, each <code>@titlefont</code> command produces an
+<code>&lt;h1&gt;</code> heading, but the HTML document <code>&lt;title&gt;</code> is not
+affected. For that, you must put an <code>@settitle</code> command before
+the <code>@titlefont</code> command (see <a href="#settitle">settitle</a>).
+
+ <p>For example:
+
+<pre class="example"> @titlefont{Texinfo}
+</pre>
+ <p>Use the <code>@center</code> command at the beginning of a line to center
+the remaining text on that line. Thus,
+
+<pre class="example"> @center @titlefont{Texinfo}
+</pre>
+ <p class="noindent">centers the title, which in this example is &ldquo;Texinfo&rdquo; printed
+in the title font.
+
+ <p>Use the <code>@sp</code> command to insert vertical space. For example:
+
+<pre class="example"> @sp 2
+</pre>
+ <p class="noindent">This inserts two blank lines on the printed page. (See <a href="#sp"><code>@sp</code></a>, for more information about the <code>@sp</code>
+command.)
+
+ <p>A template for this method looks like this:
+
+<pre class="example"> @titlepage
+ @sp 10
+ @center @titlefont{<var>name-of-manual-when-printed</var>}
+ @sp 2
+ @center <var>subtitle-if-any</var>
+ @sp 2
+ @center <var>author</var>
+ ...
+ @end titlepage
+</pre>
+ <p>The spacing of the example fits an 8.5 by 11 inch manual.
+
+ <p>You can in fact use these commands anywhere, not just on a title page,
+but since they are not logical markup commands, we don't recommend
+them.
+
+<div class="node">
+<p><hr>
+<a name="title-subtitle-author"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Copyright">Copyright</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#titlefont-center-sp">titlefont center sp</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>
+<br>
+</div>
+
+<h4 class="subsection">3.4.3 <code>@title</code>, <code>@subtitle</code>, and <code>@author</code></h4>
+
+<p><a name="index-title-202"></a><a name="index-subtitle-203"></a><a name="index-author-204"></a>
+You can use the <code>@title</code>, <code>@subtitle</code>, and <code>@author</code>
+commands to create a title page in which the vertical and horizontal
+spacing is done for you automatically. This contrasts with the method
+described in the previous section, in which the <code>@sp</code> command is
+needed to adjust vertical spacing.
+
+ <p>Write the <code>@title</code>, <code>@subtitle</code>, or <code>@author</code>
+commands at the beginning of a line followed by the title, subtitle,
+or author. These commands are only effective in TeX output; it's
+an error to use them anywhere except within <code>@titlepage</code>.
+
+ <p>The <code>@title</code> command produces a line in which the title is set
+flush to the left-hand side of the page in a larger than normal font.
+The title is underlined with a black rule. Only a single line is
+allowed; the <code>@*</code> command may not be used to break the title into
+two lines. To handle very long titles, you may find it profitable to
+use both <code>@title</code> and <code>@titlefont</code>; see the final example in
+this section.
+
+ <p>The <code>@subtitle</code> command sets subtitles in a normal-sized font
+flush to the right-hand side of the page.
+
+ <p>The <code>@author</code> command sets the names of the author or authors in
+a middle-sized font flush to the left-hand side of the page on a line
+near the bottom of the title page. The names are underlined with a
+black rule that is thinner than the rule that underlines the title.
+(The black rule only occurs if the <code>@author</code> command line is
+followed by an <code>@page</code> command line.)
+
+ <p>There are two ways to use the <code>@author</code> command: you can write
+the name or names on the remaining part of the line that starts with
+an <code>@author</code> command:
+
+<pre class="example"> @author by Jane Smith and John Doe
+</pre>
+ <p class="noindent">or you can write the names one above each other by using two (or more)
+<code>@author</code> commands:
+
+<pre class="example"> @author Jane Smith
+ @author John Doe
+</pre>
+ <p class="noindent">(Only the bottom name is underlined with a black rule.)
+
+ <p>A template for this method looks like this:
+
+<pre class="example"> @titlepage
+ @title <var>name-of-manual-when-printed</var>
+ @subtitle <var>subtitle-if-any</var>
+ @subtitle <var>second-subtitle</var>
+ @author <var>author</var>
+ @page
+ ...
+ @end titlepage
+</pre>
+ <p>You may also combine the <code>@titlefont</code> method described in the
+previous section and <code>@title</code> method described in this one. This
+may be useful if you have a very long title. Here is a real-life example:
+
+<pre class="example"> @titlepage
+ @titlefont{GNU Software}
+ @sp 1
+ @title for MS-Windows and MS-DOS
+ @subtitle Edition @value{e} for Release @value{cde}
+ @author by Daniel Hagerty, Melissa Weisshaus
+ @author and Eli Zaretskii
+</pre>
+ <p class="noindent">(The use of <code>@value</code> here is explained in <a href="#value-Example">value Example</a>.
+
+<div class="node">
+<p><hr>
+<a name="Copyright"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#end-titlepage">end titlepage</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#title-subtitle-author">title subtitle author</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>
+<br>
+</div>
+
+<h4 class="subsection">3.4.4 Copyright Page</h4>
+
+<p><a name="index-Copyright-page-205"></a><a name="index-Printed-permissions-206"></a><a name="index-Permissions_002c-printed-207"></a>
+By international treaty, the copyright notice for a book must be either
+on the title page or on the back of the title page. When the copyright
+notice is on the back of the title page, that page is customarily not
+numbered. Therefore, in Texinfo, the information on the copyright page
+should be within <code>@titlepage</code> and <code>@end titlepage</code>
+commands.
+
+ <p><a name="index-vskip-_0040r_007b_0040TeX_007b_007d-vertical-skip_007d-208"></a><a name="index-filll-_0040r_007b_0040TeX_007b_007d-dimension_007d-209"></a>Use the <code>@page</code> command to cause a page break. To push the
+copyright notice and the other text on the copyright page towards the
+bottom of the page, use the following incantantion after <code>@page</code>:
+
+<pre class="example"> @vskip 0pt plus 1filll
+</pre>
+ <p class="noindent">This is a TeX command that is not supported by the Info formatting
+commands. The <code>@vskip</code> command inserts whitespace. The <span class="samp">0pt
+plus 1filll</span> means to put in zero points of mandatory whitespace, and as
+much optional whitespace as needed to push the following text to the
+bottom of the page. Note the use of three <span class="samp">l</span>s in the word
+<span class="samp">filll</span>; this is correct.
+
+ <p>To insert the copyright text itself, write <code>@insertcopying</code>
+next (see <a href="#Document-Permissions">Document Permissions</a>):
+
+<pre class="example"> @insertcopying
+</pre>
+ <p>Follow the copying text by the publisher, ISBN numbers, cover art
+credits, and other such information.
+
+ <p>Here is an example putting all this together:
+
+<pre class="example"> @titlepage
+ ...
+ @page
+ @vskip 0pt plus 1filll
+ @insertcopying
+
+ Published by ...
+
+ Cover art by ...
+ @end titlepage
+</pre>
+ <div class="node">
+<p><hr>
+<a name="end-titlepage"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#headings-on-off">headings on off</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Copyright">Copyright</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>
+<br>
+</div>
+
+<h4 class="subsection">3.4.5 Heading Generation</h4>
+
+<p><a name="index-end-titlepage-210"></a><a name="index-Headings_002c-page_002c-begin-to-appear-211"></a><a name="index-Titlepage-end-starts-headings-212"></a><a name="index-End-titlepage-starts-headings-213"></a>
+The <code>@end titlepage</code> command must be written on a line by itself.
+It not only marks the end of the title and copyright pages, but also
+causes TeX to start generating page headings and page numbers.
+
+ <p>To repeat what is said elsewhere, Texinfo has two standard page heading
+formats, one for documents which are printed on one side of each sheet of paper
+(single-sided printing), and the other for documents which are printed on both
+sides of each sheet (double-sided printing).
+You can specify these formats in different ways:
+
+ <ul>
+<li>The conventional way is to write an <code>@setchapternewpage</code> command
+before the title page commands, and then have the <code>@end
+titlepage</code> command start generating page headings in the manner desired.
+(See <a href="#setchapternewpage">setchapternewpage</a>.)
+
+ <li>Alternatively, you can use the <code>@headings</code> command to prevent page
+headings from being generated or to start them for either single or
+double-sided printing. (Write an <code>@headings</code> command immediately
+after the <code>@end titlepage</code> command. See <a href="#headings-on-off">The <code>@headings</code> Command</a>, for more information.)
+
+ <li>Or, you may specify your own page heading and footing format.
+See <a href="#Headings">Page Headings</a>, for detailed
+information about page headings and footings.
+</ul>
+
+ <p>Most documents are formatted with the standard single-sided or
+double-sided format, using <code>@setchapternewpage odd</code> for
+double-sided printing and no <code>@setchapternewpage</code> command for
+single-sided printing.
+
+<div class="node">
+<p><hr>
+<a name="headings-on-off"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#end-titlepage">end titlepage</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>
+<br>
+</div>
+
+<h4 class="subsection">3.4.6 The <code>@headings</code> Command</h4>
+
+<p><a name="index-headings-214"></a>
+The <code>@headings</code> command is rarely used. It specifies what kind of
+page headings and footings to print on each page. Usually, this is
+controlled by the <code>@setchapternewpage</code> command. You need the
+<code>@headings</code> command only if the <code>@setchapternewpage</code> command
+does not do what you want, or if you want to turn off pre-defined page
+headings prior to defining your own. Write an <code>@headings</code> command
+immediately after the <code>@end titlepage</code> command.
+
+ <p>You can use <code>@headings</code> as follows:
+
+ <dl>
+<dt><code>@headings off</code><dd>Turn off printing of page headings.
+
+ <br><dt><code>@headings single</code><dd>Turn on page headings appropriate for single-sided printing.
+
+ <br><dt><code>@headings double</code><dt><code>@headings on</code><dd>Turn on page headings appropriate for double-sided printing. The two
+commands, <code>@headings on</code> and <code>@headings double</code>, are
+synonymous.
+
+ <br><dt><code>@headings singleafter</code><dt><code>@headings doubleafter</code><dd>Turn on <code>single</code> or <code>double</code> headings, respectively, after the
+current page is output.
+
+ <br><dt><code>@headings on</code><dd>Turn on page headings: <code>single</code> if <span class="samp">@setchapternewpage
+on</span>, <code>double</code> otherwise.
+</dl>
+
+ <p>For example, suppose you write <code>@setchapternewpage off</code> before the
+<code>@titlepage</code> command to tell TeX to start a new chapter on the
+same page as the end of the last chapter. This command also causes
+TeX to typeset page headers for single-sided printing. To cause
+TeX to typeset for double sided printing, write <code>@headings
+double</code> after the <code>@end titlepage</code> command.
+
+ <p>You can stop TeX from generating any page headings at all by
+writing <code>@headings off</code> on a line of its own immediately after the
+line containing the <code>@end titlepage</code> command, like this:
+
+<pre class="example"> @end titlepage
+ @headings off
+</pre>
+ <p class="noindent">The <code>@headings off</code> command overrides the <code>@end titlepage</code>
+command, which would otherwise cause TeX to print page
+headings.
+
+ <p>You can also specify your own style of page heading and footing.
+See <a href="#Headings">Page Headings</a>, for more information.
+
+<div class="node">
+<p><hr>
+<a name="Contents"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#The-Top-Node">The Top Node</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Beginning-a-File">Beginning a File</a>
+<br>
+</div>
+
+<h3 class="section">3.5 Generating a Table of Contents</h3>
+
+<p><a name="index-Table-of-contents-215"></a><a name="index-Contents_002c-Table-of-216"></a><a name="index-Short-table-of-contents-217"></a><a name="index-contents-218"></a><a name="index-summarycontents-219"></a><a name="index-shortcontents-220"></a>
+The <code>@chapter</code>, <code>@section</code>, and other structuring commands
+(see <a href="#Structuring">Structuring</a>) supply the information to make up a
+table of contents, but they do not cause an actual table to appear in
+the manual. To do this, you must use the <code>@contents</code> and/or
+<code>@summarycontents</code> command(s).
+
+ <dl>
+<dt><code>@contents</code><dd>Generates a table of contents in a printed manual, including all
+chapters, sections, subsections, etc., as well as appendices and
+unnumbered chapters. Headings generated by <code>@majorheading</code>,
+<code>@chapheading</code>, and the other <code>@...heading</code> commands
+do not appear in the table of contents (see <a href="#Structuring-Command-Types">Structuring Command Types</a>).
+
+ <br><dt><code>@shortcontents</code><dt><code>@summarycontents</code><dd>(<code>@summarycontents</code> is a synonym for <code>@shortcontents</code>.)
+
+ <p>Generates a short or summary table of contents that lists only the
+chapters, appendices, and unnumbered chapters. Sections, subsections
+and subsubsections are omitted. Only a long manual needs a short
+table of contents in addition to the full table of contents.
+
+ </dl>
+
+ <p>Both contents commands should be written on a line by themselves, and
+are best placed near the beginning of the file, after the <code>@end
+titlepage</code> (see <a href="#titlepage">titlepage</a>). The contents commands automatically
+generate a chapter-like heading at the top of the first table of
+contents page, so don't include any sectioning command such as
+<code>@unnumbered</code> before them.
+
+ <p>Since an Info file uses menus instead of tables of contents, the Info
+formatting commands ignore the contents commands. But the contents are
+included in plain text output (generated by <code>makeinfo
+--no-headers</code>), unless <code>makeinfo</code> is writing its output to standard
+output.
+
+ <p>When <code>makeinfo</code> writes a short table of contents while producing
+html output, the links in the short table of contents point to
+corresponding entries in the full table of contents rather than the text
+of the document. The links in the full table of contents point to the
+main text of the document.
+
+ <p>In the past, the contents commands were sometimes placed at the end of
+the file, after any indices and just before the <code>@bye</code>, but we
+no longer recommend this.
+
+ <p><a name="index-setcontentsaftertitlepage-221"></a><a name="index-setshortcontentsaftertitlepage-222"></a><a name="index-Contents_002c-after-title-page-223"></a><a name="index-Table-of-contents_002c-after-title-page-224"></a>However, since many existing Texinfo documents still do have the
+<code>@contents</code> at the end of the manual, if you are a user printing
+a manual, you may wish to force the contents to be printed after the
+title page. You can do this by specifying
+<code>@setcontentsaftertitlepage</code> and/or
+<code>@setshortcontentsaftertitlepage</code>. The first prints only the
+main contents after the <code>@end titlepage</code>; the second prints both
+the short contents and the main contents. In either case, any
+subsequent <code>@contents</code> or <code>@shortcontents</code> is ignored
+(unless, erroneously, no <code>@end titlepage</code> is ever encountered).
+
+ <p>You need to include the <code>@set...contentsaftertitlepage</code>
+commands early in the document (just after <code>@setfilename</code>, for
+example). We recommend using <span class="command">texi2dvi</span> (see <a href="#Format-with-texi2dvi">Format with texi2dvi</a>) to specify this without altering the source file at all. For
+example:
+<pre class="example"> texi2dvi --texinfo=@setcontentsaftertitlepage foo.texi
+</pre>
+ <div class="node">
+<p><hr>
+<a name="The-Top-Node"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Global-Document-Commands">Global Document Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Contents">Contents</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Beginning-a-File">Beginning a File</a>
+<br>
+</div>
+
+<h3 class="section">3.6 The `Top' Node and Master Menu</h3>
+
+<p><a name="index-Top-node-225"></a><a name="index-Node_002c-_0060Top_0027-226"></a>
+The `Top' node is the node in which a reader enters an Info manual. As
+such, it should begin with the <code>@insertcopying</code> command
+(see <a href="#Document-Permissions">Document Permissions</a>) to provide a brief description of the
+manual (including the version number) and copying permissions, and end
+with a master menu for the whole manual. Of course you should include
+any other general information you feel a reader would find helpful.
+
+ <p><a name="index-top-227"></a>It is also conventional to write an <code>@top</code> sectioning command line
+containing the title of the document immediately after the <code>@node
+Top</code> line (see <a href="#makeinfo-top-command">The <code>@top</code> Sectioning Command</a>).
+
+ <p>The contents of the `Top' node should appear only in the online output;
+none of it should appear in printed output, so enclose it between
+<code>@ifnottex</code> and <code>@end ifnottex</code> commands. (TeX does not
+print either an <code>@node</code> line or a menu; they appear only in Info;
+strictly speaking, you are not required to enclose these parts between
+<code>@ifnottex</code> and <code>@end ifnottext</code>, but it is simplest to do
+so. See <a href="#Conditionals">Conditionally Visible Text</a>.)
+
+<ul class="menu">
+<li><a accesskey="1" href="#Top-Node-Example">Top Node Example</a>
+<li><a accesskey="2" href="#Master-Menu-Parts">Master Menu Parts</a>
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Top-Node-Example"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Master-Menu-Parts">Master Menu Parts</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#The-Top-Node">The Top Node</a>
+<br>
+</div>
+
+<h4 class="subsection">3.6.1 Top Node Example</h4>
+
+<p><a name="index-Top-node-example-228"></a>
+Here is an example of a Top node.
+
+<pre class="example"> @ifnottex
+ @node Top
+ @top Sample Title
+
+ @insertcopying
+
+ Additional general information.
+
+ @menu
+ * First Chapter::
+ * Second Chapter::
+ ...
+ * Index::
+ @end menu
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Master-Menu-Parts"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Top-Node-Example">Top Node Example</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#The-Top-Node">The Top Node</a>
+<br>
+</div>
+
+<h4 class="subsection">3.6.2 Parts of a Master Menu</h4>
+
+<p><a name="index-Master-menu-229"></a><a name="index-Menu_002c-master-230"></a><a name="index-Parts-of-a-master-menu-231"></a>
+A <dfn>master menu</dfn> is a detailed main menu listing all the nodes in a
+file.
+
+ <p>A master menu is enclosed in <code>@menu</code> and <code>@end menu</code>
+commands and does not appear in the printed document.
+
+ <p>Generally, a master menu is divided into parts.
+
+ <ul>
+<li>The first part contains the major nodes in the Texinfo file: the nodes
+for the chapters, chapter-like sections, and the appendices.
+
+ <li>The second part contains nodes for the indices.
+
+ <li>The third and subsequent parts contain a listing of the other, lower
+level nodes, often ordered by chapter. This way, rather than go
+through an intermediary menu, an inquirer can go directly to a
+particular node when searching for specific information. These menu
+items are not required; add them if you think they are a
+convenience. If you do use them, put <code>@detailmenu</code> before the
+first one, and <code>@end detailmenu</code> after the last; otherwise,
+<code>makeinfo</code> will get confused.
+</ul>
+
+ <p>Each section in the menu can be introduced by a descriptive line. So
+long as the line does not begin with an asterisk, it will not be
+treated as a menu entry. (See <a href="#Writing-a-Menu">Writing a Menu</a>, for more
+information.)
+
+ <p>For example, the master menu for this manual looks like the following
+(but has many more entries):
+
+<pre class="example"> @menu
+ * Copying Conditions:: Your rights.
+ * Overview:: Texinfo in brief.
+ ...
+ * Command and Variable Index::
+ * Concept Index::
+
+ @detailmenu
+ --- The Detailed Node Listing ---
+
+ Overview of Texinfo
+
+ * Reporting Bugs:: ...
+ ...
+
+ Beginning a Texinfo File
+
+ * Sample Beginning:: ...
+ ...
+ @end detailmenu
+ @end menu
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Global-Document-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Software-Copying-Permissions">Software Copying Permissions</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#The-Top-Node">The Top Node</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Beginning-a-File">Beginning a File</a>
+<br>
+</div>
+
+<h3 class="section">3.7 Global Document Commands</h3>
+
+<p><a name="index-Global-Document-Commands-232"></a>
+Besides the basic commands mentioned in the previous sections, here are
+additional commands which affect the document as a whole. They are
+generally all given before the Top node, if they are given at all.
+
+<ul class="menu">
+<li><a accesskey="1" href="#documentdescription">documentdescription</a>: Document summary for the HTML output.
+<li><a accesskey="2" href="#setchapternewpage">setchapternewpage</a>: Start chapters on right-hand pages.
+<li><a accesskey="3" href="#paragraphindent">paragraphindent</a>: Specify paragraph indentation.
+<li><a accesskey="4" href="#firstparagraphindent">firstparagraphindent</a>: Suppress indentation of the first paragraph.
+<li><a accesskey="5" href="#exampleindent">exampleindent</a>: Specify environment indentation.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="documentdescription"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#setchapternewpage">setchapternewpage</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Global-Document-Commands">Global Document Commands</a>
+<br>
+</div>
+
+<h4 class="subsection">3.7.1 <code>@documentdescription</code>: Summary Text</h4>
+
+<p><a name="index-Document-description-233"></a><a name="index-Description-of-document-234"></a><a name="index-Summary-of-document-235"></a><a name="index-Abstract-of-document-236"></a><a name="index-_003cmeta_003e-HTML-tag_002c-and-document-description-237"></a><a name="index-documentdescription-238"></a>
+When producing HTML output for a document, <span class="command">makeinfo</span> writes a
+<span class="samp">&lt;meta&gt;</span> element in the <span class="samp">&lt;head&gt;</span> to give some idea of the
+content of the document. By default, this <dfn>description</dfn> is the title
+of the document, taken from the <code>@settitle</code> command
+(see <a href="#settitle">settitle</a>). To change this, use the <code>@documentdescription</code>
+environment, as in:
+
+<pre class="example"> @documentdescription
+ descriptive text.
+ @end documentdescription
+</pre>
+ <p class="noindent">This will produce the following output in the <span class="samp">&lt;head&gt;</span> of the HTML:
+
+<pre class="example"> &lt;meta name=description content="descriptive text."&gt;
+</pre>
+ <p><code>@documentdescription</code> must be specified before the first node of
+the document.
+
+<div class="node">
+<p><hr>
+<a name="setchapternewpage"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#paragraphindent">paragraphindent</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#documentdescription">documentdescription</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Global-Document-Commands">Global Document Commands</a>
+<br>
+</div>
+
+<h4 class="subsection">3.7.2 <code>@setchapternewpage</code>:</h4>
+
+<p><a name="index-Starting-chapters-239"></a><a name="index-Pages_002c-starting-odd-240"></a><a name="index-setchapternewpage-241"></a>
+In an officially bound book, text is usually printed on both sides of
+the paper, chapters start on right-hand pages, and right-hand pages have
+odd numbers. But in short reports, text often is printed only on one
+side of the paper. Also in short reports, chapters sometimes do not
+start on new pages, but are printed on the same page as the end of the
+preceding chapter, after a small amount of vertical whitespace.
+
+ <p>You can use the <code>@setchapternewpage</code> command with various
+arguments to specify how TeX should start chapters and whether it
+should format headers for printing on one or both sides of the paper
+(single-sided or double-sided printing).
+
+ <p>Write the <code>@setchapternewpage</code> command at the beginning of a
+line followed by its argument.
+
+ <p>For example, you would write the following to cause each chapter to
+start on a fresh odd-numbered page:
+
+<pre class="example"> @setchapternewpage odd
+</pre>
+ <p>You can specify one of three alternatives with the
+<code>@setchapternewpage</code> command:
+
+ <dl>
+<dt><code>@setchapternewpage off</code><dd>Cause TeX to typeset a new chapter on the same page as the last
+chapter, after skipping some vertical whitespace. Also, cause TeX to
+format page headers for single-sided printing.
+
+ <br><dt><code>@setchapternewpage on</code><dd>Cause TeX to start new chapters on new pages and to format page
+headers for single-sided printing. This is the form most often used for
+short reports or personal printing. This is the default.
+
+ <br><dt><code>@setchapternewpage odd</code><dd>Cause TeX to start new chapters on new, odd-numbered pages
+(right-handed pages) and to typeset for double-sided printing. This is
+the form most often used for books and manuals.
+</dl>
+
+ <p>Texinfo does not have an <code>@setchapternewpage even</code> command,
+because there is no printing tradition of starting chapters or books on
+an even-numbered page.
+
+ <p>If you don't like the default headers that <code>@setchapternewpage</code>
+sets, you can explicit control them with the <code>@headings</code> command.
+See <a href="#headings-on-off">The <code>@headings</code> Command</a>.
+
+ <p>At the beginning of a manual or book, pages are not numbered&mdash;for
+example, the title and copyright pages of a book are not numbered. By
+convention, table of contents and frontmatter pages are numbered with
+roman numerals and not in sequence with the rest of the document.
+
+ <p>Since an Info file does not have pages, the <code>@setchapternewpage</code>
+command has no effect on it.
+
+ <p>We recommend not including any <code>@setchapternewpage</code> command in
+your manual sources at all, since the desired output is not intrinsic to
+the document. For a particular hard copy run, if you don't want the
+default option (no blank pages, same headers on all pages) use the
+<span class="option">--texinfo</span> option to <span class="command">texi2dvi</span> to specify the output
+you want.
+
+<div class="node">
+<p><hr>
+<a name="paragraphindent"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#firstparagraphindent">firstparagraphindent</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#setchapternewpage">setchapternewpage</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Global-Document-Commands">Global Document Commands</a>
+<br>
+</div>
+
+<h4 class="subsection">3.7.3 <code>@paragraphindent</code>: Paragraph Indenting</h4>
+
+<p><a name="index-Indenting-paragraphs_002c-control-of-242"></a><a name="index-Paragraph-indentation-control-243"></a><a name="index-paragraphindent-244"></a>
+The Texinfo processors may insert whitespace at the beginning of the
+first line of each paragraph, thereby indenting that paragraph. You can
+use the <code>@paragraphindent</code> command to specify this indentation.
+Write an <code>@paragraphindent</code> command at the beginning of a line
+followed by either <span class="samp">asis</span> or a number:
+
+<pre class="example"> @paragraphindent <var>indent</var>
+</pre>
+ <p>The indentation is according to the value of <var>indent</var>:
+
+ <dl>
+<dt><code>asis</code><dd>Do not change the existing indentation (not implemented in TeX).
+
+ <br><dt><code>none</code><dt>0<dd>Omit all indentation.
+
+ <br><dt><var>n</var><dd>Indent by <var>n</var> space characters in Info output, by <var>n</var> ems in
+TeX.
+
+ </dl>
+
+ <p>The default value of <var>indent</var> is 3. <code>@paragraphindent</code> is
+ignored for HTML output.
+
+ <p>It is best to write the <code>@paragraphindent</code> command before the
+end-of-header line at the beginning of a Texinfo file, so the region
+formatting commands indent paragraphs as specified. See <a href="#Start-of-Header">Start of Header</a>.
+
+ <p>A peculiarity of the <code>texinfo-format-buffer</code> and
+<code>texinfo-format-region</code> commands is that they do not indent (nor
+fill) paragraphs that contain <code>@w</code> or <code>@*</code> commands.
+
+<div class="node">
+<p><hr>
+<a name="firstparagraphindent"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#exampleindent">exampleindent</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#paragraphindent">paragraphindent</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Global-Document-Commands">Global Document Commands</a>
+<br>
+</div>
+
+<h4 class="subsection">3.7.4 <code>@firstparagraphindent</code>: Indenting After Headings</h4>
+
+<p><a name="index-First-paragraph_002c-suppressing-indentation-of-245"></a><a name="index-Suppressing-first-paragraph-indentation-246"></a><a name="index-Preventing-first-paragraph-indentation-247"></a><a name="index-Indenting_002c-suppressing-of-first-paragraph-248"></a><a name="index-Headings_002c-indentation-after-249"></a><a name="index-firstparagraphindent-250"></a>
+As you can see in the present manual, the first paragraph in any
+section is not indented by default. Typographically, indentation is a
+paragraph separator, which means that it is unnecessary when a new
+section begins. This indentation is controlled with the
+<code>@firstparagraphindent</code> command:
+
+<pre class="example"> @firstparagraphindent <var>word</var>
+</pre>
+ <p>The first paragraph after a heading is indented according to the value
+of <var>word</var>:
+
+ <dl>
+<dt><code>none</code><dd>Prevents the first paragraph from being indented (default).
+This option is ignored by <span class="command">makeinfo</span> if
+<code>@paragraphindent asis</code> is in effect.
+
+ <br><dt><code>insert</code><dd>Include normal paragraph indentation. This respects the paragraph
+indentation set by a <code>@paragraphindent</code> command
+(see <a href="#paragraphindent">paragraphindent</a>).
+</dl>
+
+ <p>For HTML and XML output, the <code>@firstparagraphindent</code> setting is
+ignored.
+
+ <p>It is best to write the <code>@paragraphindent</code> command before the
+end-of-header line at the beginning of a Texinfo file, so the region
+formatting commands indent paragraphs as specified. See <a href="#Start-of-Header">Start of Header</a>.
+
+<div class="node">
+<p><hr>
+<a name="exampleindent"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#firstparagraphindent">firstparagraphindent</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Global-Document-Commands">Global Document Commands</a>
+<br>
+</div>
+
+<h4 class="subsection">3.7.5 <code>@exampleindent</code>: Environment Indenting</h4>
+
+<p><a name="index-Indenting-environments-251"></a><a name="index-Environment-indentation-252"></a><a name="index-Example-indentation-253"></a><a name="index-exampleindent-254"></a>
+The Texinfo processors indent each line of <code>@example</code> and similar
+environments. You can use the <code>@exampleindent</code> command to specify
+this indentation. Write an <code>@exampleindent</code> command at the
+beginning of a line followed by either <span class="samp">asis</span> or a number:
+
+<pre class="example"> @exampleindent <var>indent</var>
+</pre>
+ <p>The indentation is according to the value of <var>indent</var>:
+
+ <dl>
+<dt><code>asis</code><dd>Do not change the existing indentation (not implemented in TeX).
+
+ <br><dt>0<dd>Omit all indentation.
+
+ <br><dt><var>n</var><dd>Indent environments by <var>n</var> space characters in Info output, by
+<var>n</var> ems in TeX.
+
+ </dl>
+
+ <p>The default value of <var>indent</var> is 5. <code>@exampleindent</code> is
+ignored for HTML output.
+
+ <p>It is best to write the <code>@exampleindent</code> command before the
+end-of-header line at the beginning of a Texinfo file, so the region
+formatting commands indent paragraphs as specified. See <a href="#Start-of-Header">Start of Header</a>.
+
+<div class="node">
+<p><hr>
+<a name="Software-Copying-Permissions"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Global-Document-Commands">Global Document Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Beginning-a-File">Beginning a File</a>
+<br>
+</div>
+
+<h3 class="section">3.8 Software Copying Permissions</h3>
+
+<p><a name="index-Software-copying-permissions-255"></a><a name="index-Copying-software-256"></a><a name="index-Distribution-257"></a><a name="index-License-agreement-258"></a>
+If the Texinfo file has a section containing the &ldquo;General Public
+License&rdquo; and the distribution information and a warranty disclaimer for
+the software that is documented, we recommend placing this right after
+the `Top' node. The General Public License is very important to Project
+GNU software. It ensures that you and others will continue to have a
+right to use and share the software.
+
+ <p>The copying and distribution information and the disclaimer are followed
+by an introduction or else by the first chapter of the manual.
+
+ <p><a name="index-Introduction_002c-as-part-of-file-259"></a>Although an introduction is not a required part of a Texinfo file, it
+is very helpful. Ideally, it should state clearly and concisely what
+the file is about and who would be interested in reading it. In
+general, an introduction would follow the licensing and distribution
+information, although sometimes people put it earlier in the document.
+
+<div class="node">
+<p><hr>
+<a name="Ending-a-File"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Structuring">Structuring</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Beginning-a-File">Beginning a File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">4 Ending a Texinfo File</h2>
+
+<p><a name="index-Ending-a-Texinfo-file-260"></a><a name="index-Texinfo-file-ending-261"></a><a name="index-File-ending-262"></a><a name="index-bye-263"></a>
+The end of a Texinfo file should include commands to create indices,
+and the <code>@bye</code> command to mark the last line to be processed.
+
+ <p>For example:
+
+<pre class="example"> @node Index
+ @unnumbered Index
+
+ @printindex cp
+
+ @bye
+</pre>
+ <ul class="menu">
+<li><a accesskey="1" href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>: How to print an index in hardcopy and
+ generate index menus in Info.
+<li><a accesskey="2" href="#File-End">File End</a>: How to mark the end of a file.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Printing-Indices-_0026-Menus"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#File-End">File End</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Ending-a-File">Ending a File</a>
+<br>
+</div>
+
+<h3 class="section">4.1 Printing Indices and Menus</h3>
+
+<p><a name="index-Printing-an-index-264"></a><a name="index-Indices_002c-printing-and-menus-265"></a><a name="index-Generating-menus-with-indices-266"></a><a name="index-Menus-generated-with-indices-267"></a>
+To print an index means to include it as part of a manual or Info file.
+This does not happen automatically just because you use <code>@cindex</code>
+or other index-entry generating commands in the Texinfo file; those just
+cause the raw data for the index to be accumulated. To generate an
+index, you must include the <code>@printindex</code> command at the place in
+the document where you want the index to appear. Also, as part of the
+process of creating a printed manual, you must run a program called
+<code>texindex</code> (see <a href="#Hardcopy">Hardcopy</a>) to sort the raw data to produce a
+sorted index file. The sorted index file is what is actually used to
+print the index.
+
+ <p>Texinfo offers six separate types of predefined index, which suffice
+in most cases. See <a href="#Indices">Indices</a>, for information on this, as well
+defining your own new indices, combining indices, and, most
+importantly advice on writing the actual index entries. This section
+focuses on printing indices, which is done with the
+<code>@printindex</code> command.
+
+ <p><a name="index-printindex-268"></a><code>@printindex</code> takes one argument, a two-letter index
+abbreviation. It reads the corresponding sorted index file (for
+printed output), and formats it appropriately into an index.
+
+ <p>The <code>@printindex</code> command does not generate a chapter heading
+for the index, since different manuals have different needs.
+Consequently, you should precede the <code>@printindex</code> command with
+a suitable section or chapter command (usually <code>@appendix</code> or
+<code>@unnumbered</code>) to supply the chapter heading and put the index
+into the table of contents. Precede the chapter heading with an
+<code>@node</code> line as usual.
+
+ <p>For example:
+
+<pre class="smallexample"> @node Variable Index
+ @unnumbered Variable Index
+
+ @printindex vr
+
+ @node Concept Index
+ @unnumbered Concept Index
+
+ @printindex cp
+</pre>
+ <p>If you have more than one index, we recommend placing the concept index last.
+
+ <ul>
+<li>In printed output, <code>@printindex</code> produces a traditional
+two-column index, with dot leaders between the index terms and page
+numbers.
+
+ <li>In Info output, <code>@printindex</code> produces a special menu containing
+the line number of the entry, relative to the start of the node. Info
+readers can use this to go to the exact line of an entry, not just the
+containing node. (Older Info readers will just go to the node.)
+Here's an example:
+
+ <pre class="smallexample"> * First index entry: Top. (line 7)
+ </pre>
+ <p class="noindent">The actual number of spaces is variable, to right-justify
+the line number; it's been reduced here to make the line fit in the
+printed manual.
+
+ <li>In plain text output, <code>@printindex</code> produces the same menu, but
+the line numbers are relative to the start of the file, since that's
+more convenient for that format.
+
+ <li>In HTML and Docbook output, <code>@printindex</code> produces links
+to the index entries.
+
+ <li>In XML output, it simply records the index to be printed.
+</ul>
+
+ <p>It's not possible to generate an index when writing to standard
+output; <span class="command">makeinfo</span> generates a warning in this case.
+
+<div class="node">
+<p><hr>
+<a name="File-End"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Ending-a-File">Ending a File</a>
+<br>
+</div>
+
+<h3 class="section">4.2 <code>@bye</code> File Ending</h3>
+
+<p><a name="index-bye-269"></a>
+An <code>@bye</code> command terminates Texinfo processing. None of the
+formatters read anything following <code>@bye</code>. The <code>@bye</code>
+command should be on a line by itself.
+
+ <p>If you wish, you may follow the <code>@bye</code> line with notes. These
+notes will not be formatted and will not appear in either Info or a
+printed manual; it is as if text after <code>@bye</code> were within
+<code>@ignore</code> <small class="dots">...</small> <code>@end ignore</code>. Also, you may follow the
+<code>@bye</code> line with a local variables list for Emacs.
+See <a href="#Compile_002dCommand">Using Local Variables and the Compile Command</a>,
+for more information.
+
+<div class="node">
+<p><hr>
+<a name="Structuring"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Nodes">Nodes</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Ending-a-File">Ending a File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">5 Chapter Structuring</h2>
+
+<p><a name="index-Chapter-structuring-270"></a><a name="index-Structuring-of-chapters-271"></a>
+The <dfn>chapter structuring</dfn> commands divide a document into a hierarchy of
+chapters, sections, subsections, and subsubsections. These commands
+generate large headings; they also provide information for the table
+of contents of a printed manual (see <a href="#Contents">Generating a Table of Contents</a>).
+
+ <p>The chapter structuring commands do not create an Info node structure,
+so normally you should put an <code>@node</code> command immediately before
+each chapter structuring command (see <a href="#Nodes">Nodes</a>). The only time you
+are likely to use the chapter structuring commands without using the
+node structuring commands is if you are writing a document that
+contains no cross references and will never be transformed into Info
+format.
+
+ <p>It is unlikely that you will ever write a Texinfo file that is
+intended only as an Info file and not as a printable document. If you
+do, you might still use chapter structuring commands to create a
+heading at the top of each node&mdash;but you don't need to.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Tree-Structuring">Tree Structuring</a>: A manual is like an upside down tree ...
+<li><a accesskey="2" href="#Structuring-Command-Types">Structuring Command Types</a>: How to divide a manual into parts.
+<li><a accesskey="3" href="#makeinfo-top">makeinfo top</a>: The <code>@top</code> command, part of the `Top' node.
+<li><a accesskey="4" href="#chapter">chapter</a>
+<li><a accesskey="5" href="#unnumbered-_0026-appendix">unnumbered &amp; appendix</a>
+<li><a accesskey="6" href="#majorheading-_0026-chapheading">majorheading &amp; chapheading</a>
+<li><a accesskey="7" href="#section">section</a>
+<li><a accesskey="8" href="#unnumberedsec-appendixsec-heading">unnumberedsec appendixsec heading</a>
+<li><a accesskey="9" href="#subsection">subsection</a>
+<li><a href="#unnumberedsubsec-appendixsubsec-subheading">unnumberedsubsec appendixsubsec subheading</a>
+<li><a href="#subsubsection">subsubsection</a>: Commands for the lowest level sections.
+<li><a href="#Raise_002flower-sections">Raise/lower sections</a>: How to change commands' hierarchical level.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Tree-Structuring"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Structuring-Command-Types">Structuring Command Types</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<h3 class="section">5.1 Tree Structure of Sections</h3>
+
+<p><a name="index-Tree-structuring-272"></a>
+A Texinfo file is usually structured like a book with chapters,
+sections, subsections, and the like. This structure can be visualized
+as a tree (or rather as an upside-down tree) with the root at the top
+and the levels corresponding to chapters, sections, subsection, and
+subsubsections.
+
+ <p>Here is a diagram that shows a Texinfo file with three chapters,
+each of which has two sections.
+
+<pre class="example"> Top
+ |
+ -------------------------------------
+ | | |
+ Chapter 1 Chapter 2 Chapter 3
+ | | |
+ -------- -------- --------
+ | | | | | |
+ Section Section Section Section Section Section
+ 1.1 1.2 2.1 2.2 3.1 3.2
+</pre>
+ <p>In a Texinfo file that has this structure, the beginning of Chapter 2
+looks like this:
+
+<pre class="example"> @node Chapter 2, Chapter 3, Chapter 1, top
+ @chapter Chapter 2
+</pre>
+ <p>The chapter structuring commands are described in the sections that
+follow; the <code>@node</code> and <code>@menu</code> commands are described in
+following chapters. (See <a href="#Nodes">Nodes</a>, and see <a href="#Menus">Menus</a>.)
+
+<div class="node">
+<p><hr>
+<a name="Structuring-Command-Types"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#makeinfo-top">makeinfo top</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Tree-Structuring">Tree Structuring</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<h3 class="section">5.2 Structuring Command Types</h3>
+
+<p>The chapter structuring commands fall into four groups or series, each
+of which contains structuring commands corresponding to the
+hierarchical levels of chapters, sections, subsections, and
+subsubsections.
+
+ <p>The four groups are the <code>@chapter</code> series, the
+<code>@unnumbered</code> series, the <code>@appendix</code> series, and the
+<code>@heading</code> series.
+
+ <p>Each command produces titles that have a different appearance on the
+printed page or Info file; only some of the commands produce
+titles that are listed in the table of contents of a printed book or
+manual.
+
+ <ul>
+<li>The <code>@chapter</code> and <code>@appendix</code> series of commands produce
+numbered or lettered entries both in the body of a printed work and in
+its table of contents.
+
+ <li>The <code>@unnumbered</code> series of commands produce unnumbered entries
+both in the body of a printed work and in its table of contents. The
+<code>@top</code> command, which has a special use, is a member of this
+series (see <a href="#makeinfo-top"><code>@top</code></a>). An <code>@unnumbered</code>
+section should be associated with a node and be a normal part of the
+document structure.
+
+ <li>The <code>@heading</code> series of commands produce simple unnumbered
+headings that do not appear in a table of contents, are not associated
+with nodes, and cannot be cross-referenced. The heading commands
+never start a new page.
+
+ <li>The <code>@majorheading</code> command is similar to <code>@chapheading</code>,
+except that it generates a larger vertical whitespace before the
+heading.
+
+ <li>When an <code>@setchapternewpage</code> command says to do so, the
+<code>@chapter</code>, <code>@unnumbered</code>, and <code>@appendix</code> commands
+start new pages in the printed manual; the <code>@heading</code> commands
+do not.
+</ul>
+
+ <p>Here are the four groups of chapter structuring commands:
+
+ <p><table summary=""><tr align="left"><td valign="top" width="19%"></td><td valign="top" width="30%"></td><td valign="top" width="29%"></td><td valign="top" width="22%">No new page
+<br></td></tr><tr align="left"><td valign="top" width="19%"><i>Numbered</i> </td><td valign="top" width="30%"><i>Unnumbered</i> </td><td valign="top" width="29%"><i>Lettered/numbered</i> </td><td valign="top" width="22%"><i>Unnumbered</i>
+<br></td></tr><tr align="left"><td valign="top" width="19%">In contents </td><td valign="top" width="30%">In contents </td><td valign="top" width="29%">In contents </td><td valign="top" width="22%">Not in contents
+<br></td></tr><tr align="left"><td valign="top" width="19%"></td><td valign="top" width="30%"><code>@top</code> </td><td valign="top" width="29%"></td><td valign="top" width="22%"><code>@majorheading</code>
+<br></td></tr><tr align="left"><td valign="top" width="19%"><code>@chapter</code> </td><td valign="top" width="30%"><code>@unnumbered</code> </td><td valign="top" width="29%"><code>@appendix</code> </td><td valign="top" width="22%"><code>@chapheading</code>
+<br></td></tr><tr align="left"><td valign="top" width="19%"><code>@section</code> </td><td valign="top" width="30%"><code>@unnumberedsec</code> </td><td valign="top" width="29%"><code>@appendixsec</code> </td><td valign="top" width="22%"><code>@heading</code>
+<br></td></tr><tr align="left"><td valign="top" width="19%"><code>@subsection</code> </td><td valign="top" width="30%"><code>@unnumberedsubsec</code> </td><td valign="top" width="29%"><code>@appendixsubsec</code> </td><td valign="top" width="22%"><code>@subheading</code>
+<br></td></tr><tr align="left"><td valign="top" width="19%"><code>@subsubsection</code> </td><td valign="top" width="30%"><code>@unnumberedsubsubsec</code> </td><td valign="top" width="29%"><code>@appendixsubsubsec</code> </td><td valign="top" width="22%"><code>@subsubheading</code>
+ <br></td></tr></table>
+
+<div class="node">
+<p><hr>
+<a name="makeinfo-top"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#chapter">chapter</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Structuring-Command-Types">Structuring Command Types</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<h3 class="section">5.3 <code>@top</code></h3>
+
+<p>The <code>@top</code> command is a special sectioning command that you use
+only after an <span class="samp">@node Top</span> line at the beginning of a Texinfo file.
+The <code>@top</code> command tells the <code>makeinfo</code> formatter which node
+is the `Top' node, so it can use it as the root of the node tree if your
+manual uses implicit node pointers. It has the same typesetting effect as
+<code>@unnumbered</code> (see <a href="#unnumbered-_0026-appendix"><code>@unnumbered</code> and <code>@appendix</code></a>). For detailed information, see <a href="#makeinfo-top-command">The <code>@top</code> Command</a>.
+
+ <p>The <code>@top</code> node and its menu (if any) is conventionally wrapped in
+an <code>@ifnottex</code> conditional so that it will appear only in Info and
+HTML output, not TeX.
+
+<div class="node">
+<p><hr>
+<a name="chapter"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#unnumbered-_0026-appendix">unnumbered &amp; appendix</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#makeinfo-top">makeinfo top</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">5.4 <code>@chapter</code></h3>
+
+<p><a name="index-chapter-273"></a>
+<code>@chapter</code> identifies a chapter in the document. Write the
+command at the beginning of a line and follow it on the same line by
+the title of the chapter.
+
+ <p>For example, this chapter in this manual is entitled &ldquo;Chapter
+Structuring&rdquo;; the <code>@chapter</code> line looks like this:
+
+<pre class="example"> @chapter Chapter Structuring
+</pre>
+ <p>In TeX, the <code>@chapter</code> command creates a chapter in the
+document, specifying the chapter title. The chapter is numbered
+automatically.
+
+ <p>In Info, the <code>@chapter</code> command causes the title to appear on a
+line by itself, with a line of asterisks inserted underneath. Thus,
+in Info, the above example produces the following output:
+
+<pre class="example"> Chapter Structuring
+ *******************
+</pre>
+ <p><a name="index-centerchap-274"></a>Texinfo also provides a command <code>@centerchap</code>, which is analogous
+to <code>@unnumbered</code>, but centers its argument in the printed output.
+This kind of stylistic choice is not usually offered by Texinfo.
+<!-- but the Hacker's Dictionary wanted it ... -->
+
+<div class="node">
+<p><hr>
+<a name="unnumbered-_0026-appendix"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#majorheading-_0026-chapheading">majorheading &amp; chapheading</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#chapter">chapter</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<h3 class="section">5.5 <code>@unnumbered</code> and <code>@appendix</code></h3>
+
+<p><a name="index-unnumbered-275"></a><a name="index-appendix-276"></a>
+Use the <code>@unnumbered</code> command to create a chapter that appears
+in a printed manual without chapter numbers of any kind. Use the
+<code>@appendix</code> command to create an appendix in a printed manual
+that is labelled by letter instead of by number.
+
+ <p>For Info file output, the <code>@unnumbered</code> and <code>@appendix</code>
+commands are equivalent to <code>@chapter</code>: the title is printed on a
+line by itself with a line of asterisks underneath. (See <a href="#chapter"><code>@chapter</code></a>.)
+
+ <p>To create an appendix or an unnumbered chapter, write an
+<code>@appendix</code> or <code>@unnumbered</code> command at the beginning of a
+line and follow it on the same line by the title, as you would if you
+were creating a chapter.
+
+<div class="node">
+<p><hr>
+<a name="majorheading-_0026-chapheading"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#section">section</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#unnumbered-_0026-appendix">unnumbered &amp; appendix</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<h3 class="section">5.6 <code>@majorheading</code>, <code>@chapheading</code></h3>
+
+<p><a name="index-majorheading-277"></a><a name="index-chapheading-278"></a>
+The <code>@majorheading</code> and <code>@chapheading</code> commands put
+chapter-like headings in the body of a document.
+
+ <p>However, neither command causes TeX to produce a numbered heading
+or an entry in the table of contents; and neither command causes
+TeX to start a new page in a printed manual.
+
+ <p>In TeX, an <code>@majorheading</code> command generates a larger vertical
+whitespace before the heading than an <code>@chapheading</code> command but
+is otherwise the same.
+
+ <p>In Info,
+the <code>@majorheading</code> and
+<code>@chapheading</code> commands are equivalent to
+<code>@chapter</code>: the title is printed on a line by itself with a line
+of asterisks underneath. (See <a href="#chapter"><code>@chapter</code></a>.)
+
+<div class="node">
+<p><hr>
+<a name="section"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#unnumberedsec-appendixsec-heading">unnumberedsec appendixsec heading</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#majorheading-_0026-chapheading">majorheading &amp; chapheading</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">5.7 <code>@section</code></h3>
+
+<p><a name="index-section-279"></a>
+In a printed manual, an <code>@section</code> command identifies a
+numbered section within a chapter. The section title appears in the
+table of contents. In Info, an <code>@section</code> command provides a
+title for a segment of text, underlined with <span class="samp">=</span>.
+
+ <p>This section is headed with an <code>@section</code> command and looks like
+this in the Texinfo file:
+
+<pre class="example"> @section @code{@@section}
+</pre>
+ <p>To create a section, write the <code>@section</code> command at the
+beginning of a line and follow it on the same line by the section
+title.
+
+ <p>Thus,
+
+<pre class="example"> @section This is a section
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> This is a section
+ =================
+</pre>
+ <p class="noindent">in Info.
+
+<div class="node">
+<p><hr>
+<a name="unnumberedsec-appendixsec-heading"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#subsection">subsection</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#section">section</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">5.8 <code>@unnumberedsec</code>, <code>@appendixsec</code>, <code>@heading</code></h3>
+
+<p><a name="index-unnumberedsec-280"></a><a name="index-appendixsec-281"></a><a name="index-heading-282"></a>
+The <code>@unnumberedsec</code>, <code>@appendixsec</code>, and <code>@heading</code>
+commands are, respectively, the unnumbered, appendix-like, and
+heading-like equivalents of the <code>@section</code> command.
+(See <a href="#section"><code>@section</code></a>.)
+
+ <dl>
+<dt><code>@unnumberedsec</code><dd>The <code>@unnumberedsec</code> command may be used within an
+unnumbered chapter or within a regular chapter or appendix to
+provide an unnumbered section.
+
+ <br><dt><code>@appendixsec</code><dt><code>@appendixsection</code><dd><code>@appendixsection</code> is a longer spelling of the
+<code>@appendixsec</code> command; the two are synonymous.
+<a name="index-appendixsection-283"></a>
+Conventionally, the <code>@appendixsec</code> or <code>@appendixsection</code>
+command is used only within appendices.
+
+ <br><dt><code>@heading</code><dd>You may use the <code>@heading</code> command anywhere you wish for a
+section-style heading that will not appear in the table of contents.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="subsection"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#unnumberedsubsec-appendixsubsec-subheading">unnumberedsubsec appendixsubsec subheading</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#unnumberedsec-appendixsec-heading">unnumberedsec appendixsec heading</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">5.9 The <code>@subsection</code> Command</h3>
+
+<p><a name="index-subsection-284"></a>
+Subsections are to sections as sections are to chapters.
+(See <a href="#section"><code>@section</code></a>.) In Info, subsection titles are
+underlined with <span class="samp">-</span>. For example,
+
+<pre class="example"> @subsection This is a subsection
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> This is a subsection
+ --------------------
+</pre>
+ <p>In a printed manual, subsections are listed in the table of contents
+and are numbered three levels deep.
+
+<div class="node">
+<p><hr>
+<a name="unnumberedsubsec-appendixsubsec-subheading"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#subsubsection">subsubsection</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#subsection">subsection</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">5.10 The <code>@subsection</code>-like Commands</h3>
+
+<p><a name="index-Subsection_002dlike-commands-285"></a><a name="index-unnumberedsubsec-286"></a><a name="index-appendixsubsec-287"></a><a name="index-subheading-288"></a>
+The <code>@unnumberedsubsec</code>, <code>@appendixsubsec</code>, and
+<code>@subheading</code> commands are, respectively, the unnumbered,
+appendix-like, and heading-like equivalents of the <code>@subsection</code>
+command. (See <a href="#subsection"><code>@subsection</code></a>.)
+
+ <p>In Info, the <code>@subsection</code>-like commands generate a title
+underlined with hyphens. In a printed manual, an <code>@subheading</code>
+command produces a heading like that of a subsection except that it is
+not numbered and does not appear in the table of contents. Similarly,
+an <code>@unnumberedsubsec</code> command produces an unnumbered heading like
+that of a subsection and an <code>@appendixsubsec</code> command produces a
+subsection-like heading labelled with a letter and numbers; both of
+these commands produce headings that appear in the table of
+contents.
+
+<div class="node">
+<p><hr>
+<a name="subsubsection"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Raise_002flower-sections">Raise/lower sections</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#unnumberedsubsec-appendixsubsec-subheading">unnumberedsubsec appendixsubsec subheading</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<h3 class="section">5.11 The `subsub' Commands</h3>
+
+<p><a name="index-Subsub-commands-289"></a><a name="index-subsubsection-290"></a><a name="index-unnumberedsubsubsec-291"></a><a name="index-appendixsubsubsec-292"></a><a name="index-subsubheading-293"></a>
+The fourth and lowest level sectioning commands in Texinfo are the
+`subsub' commands. They are:
+
+ <dl>
+<dt><code>@subsubsection</code><dd>Subsubsections are to subsections as subsections are to sections.
+(See <a href="#subsection"><code>@subsection</code></a>.) In a printed manual,
+subsubsection titles appear in the table of contents and are numbered
+four levels deep.
+
+ <br><dt><code>@unnumberedsubsubsec</code><dd>Unnumbered subsubsection titles appear in the table of contents of a
+printed manual, but lack numbers. Otherwise, unnumbered
+subsubsections are the same as subsubsections. In Info, unnumbered
+subsubsections look exactly like ordinary subsubsections.
+
+ <br><dt><code>@appendixsubsubsec</code><dd>Conventionally, appendix commands are used only for appendices and are
+lettered and numbered appropriately in a printed manual. They also
+appear in the table of contents. In Info, appendix subsubsections look
+exactly like ordinary subsubsections.
+
+ <br><dt><code>@subsubheading</code><dd>The <code>@subsubheading</code> command may be used anywhere that you need
+a small heading that will not appear in the table of contents. In
+Info, subsubheadings look exactly like ordinary subsubsection
+headings.
+</dl>
+
+ <p>In Info, `subsub' titles are underlined with periods.
+For example,
+
+<pre class="example"> @subsubsection This is a subsubsection
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> This is a subsubsection
+ .......................
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Raise_002flower-sections"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#subsubsection">subsubsection</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Structuring">Structuring</a>
+<br>
+</div>
+
+<h3 class="section">5.12 <code>@raisesections</code> and <code>@lowersections</code></h3>
+
+<p><a name="index-raisesections-294"></a><a name="index-lowersections-295"></a><a name="index-Raising-and-lowering-sections-296"></a><a name="index-Lowering-and-raising-sections-297"></a><a name="index-Sections_002c-raising-and-lowering-298"></a>
+The <code>@raisesections</code> and <code>@lowersections</code> commands
+implicitly raise and lower the hierarchical level of following
+chapters, sections and the other sectioning commands.
+
+ <p>That is, the <code>@raisesections</code> command changes sections to
+chapters, subsections to sections, and so on. Conversely, the
+<code>@lowersections</code> command changes chapters to sections, sections
+to subsections, and so on. Thus, an <code>@lowersections</code> command
+cancels an <code>@raisesections</code> command, and vice versa.
+
+ <p><a name="index-Include-files_002c-and-section-levels-299"></a>You can use <code>@lowersections</code> to include text written as an outer
+or standalone Texinfo file in another Texinfo file as an inner,
+included file. Typical usage looks like this:
+
+<pre class="example"> @lowersections
+ @include somefile.texi
+ @raisesections
+</pre>
+ <p class="noindent">(Without the <code>@raisesections</code>, all the subsequent
+sections in the document would be lowered.)
+
+ <p>If the included file being lowered has a <code>@top</code> node, you'll
+need to conditionalize its inclusion with a flag (see <a href="#set-value">set value</a>).
+
+ <p>Another difficulty can arise with documents that use the (recommended)
+feature of <span class="command">makeinfo</span> for implicitly determining node
+pointers. Since <span class="command">makeinfo</span> must assume a hierarchically
+organized document to determine the pointers, you cannot just
+arbitrarily sprinkle <code>@raisesections</code> and <code>@lowersections</code>
+commands in the document. The final result has to have menus that
+take the raising and lowering into account. Therefore, as a practical
+matter, you generally only want to raise or lower large chunks,
+usually in external files as shown above.
+
+ <p>Repeated use of the commands continue to raise or lower the
+hierarchical level a step at a time. An attempt to raise above
+`chapter' reproduces chapter commands; an attempt to lower below
+`subsubsection' reproduces subsubsection commands. Also, lowered
+subsubsections and raised chapters will not work with
+<span class="command">makeinfo</span>'s feature of implicitly determining node pointers,
+since the menu structure won't be correct.
+
+ <p>Write each <code>@raisesections</code> and <code>@lowersections</code> command
+on a line of its own.
+
+<div class="node">
+<p><hr>
+<a name="Nodes"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Menus">Menus</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Structuring">Structuring</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">6 Nodes</h2>
+
+<p><dfn>Nodes</dfn> are the primary segments of a Texinfo file. They do not
+in and of themselves impose a hierarchical or any other kind of
+structure on a file. Nodes contain <dfn>node pointers</dfn> that name
+other nodes, and can contain <dfn>menus</dfn> which are lists of nodes. In
+Info, the movement commands can carry you to a pointed-to node or to a
+node listed in a menu.
+
+ <p>Node pointers and menus provide structure for Info files just as
+chapters, sections, subsections, and the like, provide structure for
+printed books.
+
+ <p>Because node names are used in cross-references, it is not desirable
+to casually change them. Such name changes invalidate references from
+other manuals, from mail archives, and so on.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Two-Paths">Two Paths</a>: Different commands to structure
+ Info output and printed output.
+<li><a accesskey="2" href="#Node-Menu-Illustration">Node Menu Illustration</a>: A diagram, and sample nodes and menus.
+<li><a accesskey="3" href="#node">node</a>: Creating nodes, in detail.
+<li><a accesskey="4" href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a>: Letting makeinfo determine node pointers.
+<li><a accesskey="5" href="#anchor">anchor</a>: Defining arbitrary cross-reference targets.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Two-Paths"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Node-Menu-Illustration">Node Menu Illustration</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Nodes">Nodes</a>
+<br>
+</div>
+
+<h3 class="section">6.1 Two Paths</h3>
+
+<p>The node and menu commands and the chapter structuring commands are
+technically independent of each other:
+
+ <ul>
+<li>In Info, node and menu commands provide structure. The chapter
+structuring commands generate headings with different kinds of
+underlining&mdash;asterisks for chapters, hyphens for sections, and so on;
+they do nothing else.
+
+ <li>In TeX, the chapter structuring commands generate chapter and section
+numbers and tables of contents. The node and menu commands provide
+information for cross references; they do nothing else.
+</ul>
+
+ <p>You can use node pointers and menus to structure an Info file any way
+you want; and you can write a Texinfo file so that its Info output has a
+different structure than its printed output. However, virtually all
+Texinfo files are written such that the structure for the Info output
+corresponds to the structure for the printed output. It is neither
+convenient nor understandable to the reader to do otherwise.
+
+ <p>Generally, printed output is structured in a tree-like hierarchy in
+which the chapters are the major limbs from which the sections branch
+out. Similarly, node pointers and menus are organized to create a
+matching structure in the Info output.
+
+<div class="node">
+<p><hr>
+<a name="Node-Menu-Illustration"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#node">node</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Two-Paths">Two Paths</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Nodes">Nodes</a>
+<br>
+</div>
+
+<h3 class="section">6.2 Node and Menu Illustration</h3>
+
+<p>Here is a copy of the diagram shown earlier that illustrates a Texinfo
+file with three chapters, each of which contains two sections.
+
+ <p>The &ldquo;root&rdquo; is at the top of the diagram and the &ldquo;leaves&rdquo; are at the
+bottom. This is how such a diagram is drawn conventionally; it
+illustrates an upside-down tree. For this reason, the root node is
+called the `Top' node, and `Up' node pointers carry you closer to the
+root.
+
+<pre class="example"> Top
+ |
+ -------------------------------------
+ | | |
+ Chapter 1 Chapter 2 Chapter 3
+ | | |
+ -------- -------- --------
+ | | | | | |
+ Section Section Section Section Section Section
+ 1.1 1.2 2.1 2.2 3.1 3.2
+</pre>
+ <p>The fully-written command to start Chapter 2 would be this:
+
+<pre class="example"> @node Chapter 2, Chapter 3, Chapter 1, Top
+ @comment node-name, next, previous, up
+</pre>
+ <p class="noindent">This <code>@node</code> line says that the name of this node is &ldquo;Chapter
+2&rdquo;, the name of the `Next' node is &ldquo;Chapter 3&rdquo;, the name of the
+`Previous' node is &ldquo;Chapter 1&rdquo;, and the name of the `Up' node is
+&ldquo;Top&rdquo;. You can omit writing out these node names if your document is
+hierarchically organized (see <a href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a>), but the
+pointer relationships still obtain.
+
+ <blockquote>
+<b>Note:</b> <strong>Please Note:</strong> `Next' refers to the next node at the same
+hierarchical level in the manual, not necessarily to the next node
+within the Texinfo file. In the Texinfo file, the subsequent node may
+be at a lower level&mdash;a section-level node most often follows a
+chapter-level node, for example. `Next' and `Previous' refer to nodes
+at the <em>same</em> hierarchical level. (The `Top' node contains the
+exception to this rule. Since the `Top' node is the only node at that
+level, `Next' refers to the first following node, which is almost always
+a chapter or chapter-level node.)
+</blockquote>
+
+ <p>To go to Sections 2.1 and 2.2 using Info, you need a menu inside Chapter
+2. (See <a href="#Menus">Menus</a>.) You would write the menu just
+before the beginning of Section 2.1, like this:
+
+<pre class="example"> @menu
+ * Sect. 2.1:: Description of this section.
+ * Sect. 2.2::
+ @end menu
+</pre>
+ <p>Write the node for Sect. 2.1 like this:
+
+<pre class="example"> @node Sect. 2.1, Sect. 2.2, Chapter 2, Chapter 2
+ @comment node-name, next, previous, up
+</pre>
+ <p>In Info format, the `Next' and `Previous' pointers of a node usually
+lead to other nodes at the same level&mdash;from chapter to chapter or from
+section to section (sometimes, as shown, the `Previous' pointer points
+up); an `Up' pointer usually leads to a node at the level above (closer
+to the `Top' node); and a `Menu' leads to nodes at a level below (closer
+to `leaves'). (A cross reference can point to a node at any level;
+see <a href="#Cross-References">Cross References</a>.)
+
+ <p>Usually, an <code>@node</code> command and a chapter structuring command are
+used in sequence, along with indexing commands. (You may follow the
+<code>@node</code> line with a comment line that reminds you which pointer is
+which.)
+
+ <p>Here is the beginning of the chapter in this manual called &ldquo;Ending a
+Texinfo File&rdquo;. This shows an <code>@node</code> line followed by a comment
+line, an <code>@chapter</code> line, and then by indexing lines.
+
+<pre class="example"> @node Ending a File, Structuring, Beginning a File, Top
+ @comment node-name, next, previous, up
+ @chapter Ending a Texinfo File
+ @cindex Ending a Texinfo file
+ @cindex Texinfo file ending
+ @cindex File ending
+</pre>
+ <div class="node">
+<p><hr>
+<a name="node"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Node-Menu-Illustration">Node Menu Illustration</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Nodes">Nodes</a>
+<br>
+</div>
+
+<h3 class="section">6.3 The <code>@node</code> Command</h3>
+
+<p><a name="index-Node_002c-defined-300"></a><a name="index-node-301"></a>
+A <dfn>node</dfn> is a segment of text that begins at an <code>@node</code>
+command and continues until the next <code>@node</code> command. The
+definition of node is different from that for chapter or section. A
+chapter may contain sections and a section may contain subsections;
+but a node cannot contain subnodes; the text of a node continues only
+until the next <code>@node</code> command in the file. A node usually
+contains only one chapter structuring command, the one that follows
+the <code>@node</code> line. On the other hand, in printed output nodes
+are used only for cross references, so a chapter or section may
+contain any number of nodes. Indeed, a chapter usually contains
+several nodes, one for each section, subsection, and
+subsubsection.
+
+ <p>To create a node, write an <code>@node</code> command at the beginning of a
+line, and follow it with up to four arguments, separated by commas, on
+the rest of the same line. The first argument is required; it is the
+name of this node. The subsequent arguments are the names of the
+`Next', `Previous', and `Up' pointers, in that order, and may be omitted
+if your Texinfo document is hierarchically organized (see <a href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a>).
+
+ <p>You may insert spaces before each name if you wish; the spaces are
+ignored. You must write the name of the node and (if present) the names
+of the `Next', `Previous', and `Up' pointers all on the same line.
+Otherwise, the formatters fail. (see <a href="info.html#Top">info</a>, for more
+information about nodes in Info.)
+
+ <p>Usually, you write one of the chapter-structuring command lines
+immediately after an <code>@node</code> line&mdash;for example, an
+<code>@section</code> or <code>@subsection</code> line. (See <a href="#Structuring-Command-Types">Structuring Command Types</a>.)
+
+ <blockquote>
+<b>Note:</b> The GNU Emacs Texinfo mode updating commands work
+only with Texinfo files in which <code>@node</code> lines are followed by chapter
+structuring lines. See <a href="#Updating-Requirements">Updating Requirements</a>.
+</blockquote>
+
+ <p>TeX uses <code>@node</code> lines to identify the names to use for cross
+references. For this reason, you must write <code>@node</code> lines in a
+Texinfo file that you intend to format for printing, even if you do not
+intend to format it for Info. (Cross references, such as the one at the
+end of this sentence, are made with <code>@xref</code> and related commands;
+see <a href="#Cross-References">Cross References</a>.)
+
+<ul class="menu">
+<li><a accesskey="1" href="#Node-Names">Node Names</a>: How to choose node and pointer names.
+<li><a accesskey="2" href="#Writing-a-Node">Writing a Node</a>: How to write an <code>@node</code> line.
+<li><a accesskey="3" href="#Node-Line-Tips">Node Line Tips</a>: Keep names short.
+<li><a accesskey="4" href="#Node-Line-Requirements">Node Line Requirements</a>: Keep names unique, without @-commands.
+<li><a accesskey="5" href="#First-Node">First Node</a>: How to write a `Top' node.
+<li><a accesskey="6" href="#makeinfo-top-command">makeinfo top command</a>: How to use the <code>@top</code> command.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Node-Names"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Writing-a-Node">Writing a Node</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#node">node</a>
+<br>
+</div>
+
+<h4 class="subsection">6.3.1 Choosing Node and Pointer Names</h4>
+
+<p><a name="index-Node-names_002c-choosing-302"></a>The name of a node identifies the node. The pointers enable
+you to reach other nodes and consist simply of the names of those nodes.
+
+ <p>Normally, a node's `Up' pointer contains the name of the node whose menu
+mentions that node. The node's `Next' pointer contains the name of the
+node that follows that node in that menu and its `Previous' pointer
+contains the name of the node that precedes it in that menu. When a
+node's `Previous' node is the same as its `Up' node, both node pointers
+name the same node.
+
+ <p>Usually, the first node of a Texinfo file is the `Top' node, and its
+`Up' and `Previous' pointers point to the <span class="file">dir</span> file, which
+contains the main menu for all of Info.
+
+ <p>The `Top' node itself contains the main or master menu for the manual.
+Also, it is helpful to include a brief description of the manual in the
+`Top' node. See <a href="#First-Node">First Node</a>, for information on how to write the
+first node of a Texinfo file.
+
+ <p>Even when you explicitly specify all pointers, that does not mean you
+can write the nodes in the Texinfo source file in an arbitrary order!
+Because TeX processes the file sequentially, irrespective of node
+pointers, you must write the nodes in the order you wish them to appear
+in the printed output.
+
+<div class="node">
+<p><hr>
+<a name="Writing-a-Node"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Node-Line-Tips">Node Line Tips</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Node-Names">Node Names</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#node">node</a>
+<br>
+</div>
+
+<h4 class="subsection">6.3.2 How to Write an <code>@node</code> Line</h4>
+
+<p><a name="index-Writing-an-_0040code_007b_0040_0040node_007d-line-303"></a><a name="index-_0040code_007b_0040_0040node_007d-line-writing-304"></a><a name="index-Node-line-writing-305"></a>
+The easiest way to write an <code>@node</code> line is to write <code>@node</code>
+at the beginning of a line and then the name of the node, like
+this:
+
+<pre class="example"> @node <var>node-name</var>
+</pre>
+ <p>If you are using GNU Emacs, you can use the update node commands
+provided by Texinfo mode to insert the names of the pointers; or you
+can leave the pointers out of the Texinfo file and let <code>makeinfo</code>
+insert node pointers into the Info file it creates. (See <a href="#Texinfo-Mode">Texinfo Mode</a>, and <a href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a>.)
+
+ <p>Alternatively, you can insert the `Next', `Previous', and `Up'
+pointers yourself. If you do this, you may find it helpful to use the
+Texinfo mode keyboard command <kbd>C-c C-c n</kbd>. This command inserts
+<span class="samp">@node</span> and a comment line listing the names of the pointers in
+their proper order. The comment line helps you keep track of which
+arguments are for which pointers. This comment line is especially useful
+if you are not familiar with Texinfo.
+
+ <p>The template for a fully-written-out node line with `Next', `Previous',
+and `Up' pointers looks like this:
+
+<pre class="example"> @node <var>node-name</var>, <var>next</var>, <var>previous</var>, <var>up</var>
+</pre>
+ <p>If you wish, you can ignore <code>@node</code> lines altogether in your first
+draft and then use the <code>texinfo-insert-node-lines</code> command to
+create <code>@node</code> lines for you. However, we do not recommend this
+practice. It is better to name the node itself at the same time that
+you write a segment so you can easily make cross references. A large
+number of cross references are an especially important feature of a good
+Info file.
+
+ <p>After you have inserted an <code>@node</code> line, you should immediately
+write an @-command for the chapter or section and insert its name.
+Next (and this is important!), put in several index entries. Usually,
+you will find at least two and often as many as four or five ways of
+referring to the node in the index. Use them all. This will make it
+much easier for people to find the node.
+
+<div class="node">
+<p><hr>
+<a name="Node-Line-Tips"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Node-Line-Requirements">Node Line Requirements</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Writing-a-Node">Writing a Node</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#node">node</a>
+<br>
+</div>
+
+<h4 class="subsection">6.3.3 <code>@node</code> Line Tips</h4>
+
+<p>Here are three suggestions:
+
+ <ul>
+<li>Try to pick node names that are informative but short.
+
+ <p>In the Info file, the file name, node name, and pointer names are all
+inserted on one line, which may run into the right edge of the window.
+(This does not cause a problem with Info, but is ugly.)
+
+ <li>Try to pick node names that differ from each other near the beginnings
+of their names. This way, it is easy to use automatic name completion in
+Info.
+
+ <li>By convention, node names are capitalized just as they would be for
+section or chapter titles&mdash;initial and significant words are
+capitalized; others are not.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Node-Line-Requirements"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#First-Node">First Node</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Node-Line-Tips">Node Line Tips</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#node">node</a>
+<br>
+</div>
+
+<h4 class="subsection">6.3.4 <code>@node</code> Line Requirements</h4>
+
+<p><a name="index-Node-line-requirements-306"></a><a name="index-Restrictions-on-node-names-307"></a>Here are several requirements for <code>@node</code> lines:
+
+
+<a name="index-Unique-nodename-requirement-308"></a>
+<a name="index-Node-name-must-be-unique-309"></a>
+<ul><li>All the node names for a single Info file must be unique.
+
+ <p>Duplicates confuse the Info movement commands. This means, for
+example, that if you end every chapter with a summary, you must name
+each summary node differently. You cannot just call each one
+&ldquo;Summary&rdquo;. You may, however, duplicate the titles of chapters, sections,
+and the like. Thus you can end each chapter in a book with a section
+called &ldquo;Summary&rdquo;, so long as the node names for those sections are all
+different.
+
+ <li>A pointer name must be the name of a node.
+
+ <p>The node to which a pointer points may come before or after the
+node containing the pointer.
+
+ <p><a name="index-_0040_0040_002dcommands-in-nodename-310"></a><a name="index-Node-name_002c-should-not-contain-_0040_0040_002dcommands-311"></a><li>@-commands in node names are not allowed. This includes punctuation
+characters that are escaped with a <span class="samp">@</span>, such as <code>@</code> and
+<code>{</code>, and accent commands such as <span class="samp">@'</span>. (For a few cases
+when this is useful, Texinfo has limited support for using
+@-commands<!-- /@w --> in node names; see <a href="#Pointer-Validation">Pointer Validation</a>.) Perhaps
+this limitation will be removed some day.
+
+ <li><a name="index-Colon-in-nodename-312"></a><a name="index-Comma-in-nodename-313"></a><a name="index-Parentheses-in-nodename-314"></a><a name="index-Period-in-nodename-315"></a><a name="index-Characters_002c-invalid-in-node-name-316"></a><a name="index-Invalid-characters-in-node-names-317"></a><a name="index-Node-names_002c-invalid-characters-in-318"></a>Unfortunately, you cannot use periods, commas, colons or parentheses
+within a node name; these confuse the Texinfo processors. Perhaps
+this limitation will be removed some day, too.
+
+ <p>For example, the following is a section title in this manual:
+
+ <pre class="smallexample"> @code{@@unnumberedsec}, @code{@@appendixsec}, @code{@@heading}
+ </pre>
+ <p class="noindent">But the corresponding node name lacks the commas and the @'s:
+
+ <pre class="smallexample"> unnumberedsec appendixsec heading
+ </pre>
+ <p><a name="index-Case-in-node-name-319"></a><li>Case is significant in node names.
+
+ <p><a name="index-White-space-in-node-name-320"></a><a name="index-Spaces-in-node-name-321"></a>Spaces before and after names on the <span class="samp">@node</span> line are ignored,
+but spaces &ldquo;inside&rdquo; a name are significant. For example:
+
+ <pre class="example"> @node foo bar,
+ @node foo bar ,
+ @node foo bar ,
+ </pre>
+ <p class="noindent">all define the same node, <span class="samp">foo bar</span>. References to the
+node should all use that name, without the leading or trailing spaces,
+but with the internal spaces.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="First-Node"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#makeinfo-top-command">makeinfo top command</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Node-Line-Requirements">Node Line Requirements</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#node">node</a>
+<br>
+</div>
+
+<h4 class="subsection">6.3.5 The First Node</h4>
+
+<p><a name="index-Top-node-is-first-322"></a><a name="index-First-node-323"></a>
+The first node of a Texinfo file is the <dfn>Top</dfn> node, except in an
+included file (see <a href="#Include-Files">Include Files</a>). The Top node should contain a
+short summary, copying permissions, and a master menu. See <a href="#The-Top-Node">The Top Node</a>, for more information on the Top node contents and examples.
+
+ <p>Here is a description of the node pointers to be used in the Top node:
+
+ <ul>
+<li><a name="index-Up-node-of-Top-node-324"></a><a name="index-_0028dir_0029-as-Up-node-of-Top-node-325"></a>The Top node (which must be named <span class="samp">top</span> or <span class="samp">Top</span>) should have
+as its `Up' node the name of a node in another file, where there is a
+menu that leads to this file. Specify the file name in parentheses.
+
+ <p>Usually, all Info files are installed in the same Info directory tree;
+in this case, use <span class="samp">(dir)</span> as the parent of the Top node; this is
+short for <span class="samp">(dir)top</span>, and specifies the Top node in the <span class="file">dir</span>
+file, which contains the main menu for the Info system as a whole.
+
+ <li><a name="index-Previous-node-of-Top-node-326"></a>On the other hand, do not define the `Previous' node of the Top node to
+be <span class="samp">(dir)</span>, as it causes confusing behavior for users: if you are
+in the Top node and hits &lt;DEL&gt; to go backwards, you wind up in the
+middle of the some other entry in the <span class="file">dir</span> file, which has nothing
+to do with what you were reading.
+
+ <li><a name="index-Next-node-of-Top-node-327"></a>The `Next' node of the Top node should be the first chapter in your
+document.
+
+ </ul>
+
+ <p>See <a href="#Installing-an-Info-File">Installing an Info File</a>, for more information about installing
+an Info file in the <span class="file">info</span> directory.
+
+ <p>For concreteness, here is an example with explicit pointers (which you
+can maintain automatically with the texinfo mode commands):
+
+ <p>Or you can leave the pointers off entirely and let the tools implicitly
+define them. This is recommended. Thus:
+
+<pre class="example"> @node Top
+</pre>
+ <div class="node">
+<p><hr>
+<a name="makeinfo-top-command"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#First-Node">First Node</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#node">node</a>
+<br>
+</div>
+
+<h4 class="subsection">6.3.6 The <code>@top</code> Sectioning Command</h4>
+
+<p><a name="index-top-_0040r_007b_0028_0040_0040_002dcommand_0029_007d-328"></a>
+A special sectioning command, <code>@top</code> should be used with the
+<code>@node Top</code> line. The <code>@top</code> sectioning command tells
+<code>makeinfo</code> that it marks the `Top' node in the file. It provides
+the information that <code>makeinfo</code> needs to insert node pointers
+automatically. Write the <code>@top</code> command at the beginning of the
+line immediately following the <code>@node Top</code> line. Write the title
+on the remaining part of the same line as the <code>@top</code> command.
+
+ <p>In Info, the <code>@top</code> sectioning command causes the title to appear
+on a line by itself, with a line of asterisks inserted underneath, as
+other sectioning commands do.
+
+ <p>In TeX and <code>texinfo-format-buffer</code>, the <code>@top</code>
+sectioning command is merely a synonym for <code>@unnumbered</code>.
+Neither of these formatters require an <code>@top</code> command, and do
+nothing special with it. You can use <code>@chapter</code> or
+<code>@unnumbered</code> after the <code>@node Top</code> line when you use
+these formatters. Also, you can use <code>@chapter</code> or
+<code>@unnumbered</code> when you use the Texinfo updating commands to
+create or update pointers and menus.
+
+ <p>Thus, in practice, a Top node starts like this:
+
+<pre class="example"> @node Top
+ @top Your Manual Title
+</pre>
+ <div class="node">
+<p><hr>
+<a name="makeinfo-Pointer-Creation"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#anchor">anchor</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#node">node</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Nodes">Nodes</a>
+<br>
+</div>
+
+<h3 class="section">6.4 Creating Pointers with <code>makeinfo</code></h3>
+
+<p><a name="index-Creating-pointers-with-_0040code_007bmakeinfo_007d-329"></a><a name="index-Pointer-creation-with-_0040code_007bmakeinfo_007d-330"></a><a name="index-Automatic-pointer-creation-with-_0040code_007bmakeinfo_007d-331"></a>
+The <code>makeinfo</code> program has a feature for automatically determining
+node pointers for a hierarchically organized document.
+
+ <p>When you take advantage of this feature, you do not need to write the
+`Next', `Previous', and `Up' pointers after the name of a node.
+However, you must write a sectioning command, such as <code>@chapter</code>
+or <code>@section</code>, on the line immediately following each truncated
+<code>@node</code> line (except that comment lines may intervene).
+
+ <p>In addition, you must follow the `Top' <code>@node</code> line with a line
+beginning with <code>@top</code> to mark the `Top' node in the
+file. See <a href="#makeinfo-top"><code>@top</code></a>.
+
+ <p>Finally, you must write the name of each node (except for the `Top'
+node) in a menu that is one or more hierarchical levels above the
+node's hierarchical level.
+
+ <p>This implicit node pointer insertion feature in <code>makeinfo</code>
+relieves you from the need to update menus and pointers manually or
+with Texinfo mode commands. (See <a href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a>.)
+
+ <p>In most cases, you will want to take advantage of this feature and not
+redundantly specify node pointers. However, Texinfo documents are not
+required to be organized hierarchically or in fact to contain
+sectioning commands at all (for example, if you never intend the
+document to be printed). The special procedure for handling the short
+text before a menu (see <a href="#Menus">Menus</a>) also disables this
+feature, for that group of nodes. In those cases, you will need to
+explicitly specify the pointers.
+
+<div class="node">
+<p><hr>
+<a name="anchor"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Nodes">Nodes</a>
+<br>
+</div>
+
+<h3 class="section">6.5 <code>@anchor</code>: Defining Arbitrary Cross-reference Targets</h3>
+
+<p><a name="index-anchor-332"></a><a name="index-Anchors-333"></a><a name="index-Cross_002dreference-targets_002c-arbitrary-334"></a><a name="index-Targets-for-cross_002dreferences_002c-arbitrary-335"></a>
+An <dfn>anchor</dfn> is a position in your document, labeled so that
+cross-references can refer to it, just as they can to nodes. You create
+an anchor with the <code>@anchor</code> command, and give the label as a
+normal brace-delimited argument. For example:
+
+<pre class="example"> This marks the @anchor{x-spot}spot.
+ ...
+ @xref{x-spot,,the spot}.
+</pre>
+ <p class="noindent">produces:
+
+<pre class="example"> This marks the spot.
+ ...
+ See [the spot], page 1.
+</pre>
+ <p>As you can see, the <code>@anchor</code> command itself produces no output.
+This example defines an anchor `x-spot' just before the word `spot'.
+You can refer to it later with an <code>@xref</code> or other cross-reference
+command, as shown. See <a href="#Cross-References">Cross References</a>, for details on the
+cross-reference commands.
+
+ <p>It is best to put <code>@anchor</code> commands just before the position you
+wish to refer to; that way, the reader's eye is led on to the correct
+text when they jump to the anchor. You can put the <code>@anchor</code>
+command on a line by itself if that helps readability of the source.
+Spaces are always ignored after <code>@anchor</code>.
+
+ <p>Anchor names and node names may not conflict. Anchors and nodes are
+given similar treatment in some ways; for example, the <code>goto-node</code>
+command in standalone Info takes either an anchor name or a node name as
+an argument. (See <a href="info-stnd.html#goto_002dnode">goto-node (GNU Info)</a>.)
+
+<div class="node">
+<p><hr>
+<a name="Menus"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Cross-References">Cross References</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Nodes">Nodes</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">7 Menus</h2>
+
+<p><a name="index-Menus-336"></a><a name="index-menu-337"></a>
+<dfn>Menus</dfn> contain pointers to subordinate nodes. In online output,
+you use menus to go to such nodes. Menus have no effect in printed
+manuals and do not appear in them.
+
+ <p>A node with a menu should not contain much text. If you find yourself
+writing a lot of before a menu, we generally recommend moving most of
+the text into a new subnode&mdash;all but a paragraph or two. Otherwise,
+a reader with a terminal that displays only a few lines may miss the
+menu and its associated text. As a practical matter, it is best to
+locate a menu within 20 or so lines of the beginning of the node.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Menu-Location">Menu Location</a>: Menus go at the ends of short nodes.
+<li><a accesskey="2" href="#Writing-a-Menu">Writing a Menu</a>: What is a menu?
+<li><a accesskey="3" href="#Menu-Parts">Menu Parts</a>: A menu entry has three parts.
+<li><a accesskey="4" href="#Less-Cluttered-Menu-Entry">Less Cluttered Menu Entry</a>: Two part menu entry.
+<li><a accesskey="5" href="#Menu-Example">Menu Example</a>: Two and three part menu entries.
+<li><a accesskey="6" href="#Other-Info-Files">Other Info Files</a>: How to refer to a different Info file.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Menu-Location"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Writing-a-Menu">Writing a Menu</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Menus">Menus</a>
+<br>
+</div>
+
+<h3 class="section">7.1 Menu Location</h3>
+
+<p><a name="index-Menu-location-338"></a><a name="index-Location-of-menus-339"></a>
+A menu must be located at the end of a node, without any regular text
+or additional commands between the <code>@end menu</code> and the beginning
+of the next node. (As a consequence, there may be at most one menu in
+a node.)
+
+ <p><a name="index-Info-format_002c-and-menus-340"></a>This is actually a useful restriction, since a reader who uses the
+menu could easily miss any such text. Technically, it is necessary
+because in Info format, there is no marker for the end of a menu, so
+Info-reading programs would have no way to know when the menu ends and
+normal text resumes.
+
+ <p><a name="index-Hierarchical-documents_002c-and-menus-341"></a>Technically, menus can carry you to any node, regardless of the
+structure of the document; even to nodes in a different Info file.
+However, we do not recommend ever making use of this, because the
+<span class="command">makeinfo</span> implicit pointer creation feature (see <a href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a>) and GNU Emacs Texinfo mode updating commands work
+only to create menus of subordinate nodes in a hierarchically
+structured document. Instead, use cross references to refer to
+arbitrary nodes.
+
+ <p>In the past, we recommended using a <span class="samp">@heading</span> command within an
+<code>@ifinfo</code> conditional instead of the normal sectioning commands
+after a very short node with a menu. This had the advantage of making
+the printed output look better, because there was no very short text
+between two headings on the page. But aside from not working with
+<span class="command">makeinfo</span>'s implicit pointer creation, it also makes the XML
+output incorrect, since it does not reflect the true document
+structure. So, unfortunately we can no longer recommend this.
+
+<div class="node">
+<p><hr>
+<a name="Writing-a-Menu"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Menu-Parts">Menu Parts</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Menu-Location">Menu Location</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Menus">Menus</a>
+<br>
+</div>
+
+<h3 class="section">7.2 Writing a Menu</h3>
+
+<p><a name="index-Writing-a-menu-342"></a><a name="index-Menu-writing-343"></a>
+A menu consists of an <code>@menu</code> command on a line by itself
+followed by menu entry lines or menu comment lines and then by an
+<code>@end menu</code> command on a line by itself.
+
+ <p>A menu looks like this:
+
+<pre class="example"> @menu
+ Larger Units of Text
+
+ * Files:: All about handling files.
+ * Multiples: Buffers. Multiple buffers; editing
+ several files at once.
+ @end menu
+</pre>
+ <p>In a menu, every line that begins with an <span class="samp">*&nbsp;</span><!-- /@w --> is a <dfn>menu
+entry</dfn>. (Note the space after the asterisk.) A line that does not
+start with an <span class="samp">*&nbsp;</span><!-- /@w --> may also appear in a menu. Such a line is
+not a menu entry but is a menu comment line that appears in the Info
+file. In the example above, the line <span class="samp">Larger Units of Text</span> is a
+menu comment line; the two lines starting with <span class="samp">*&nbsp;</span><!-- /@w --> are menu
+<a name="index-Spaces_002c-in-menus-344"></a>entries. Space characters in a menu are preserved as-is; this allows
+you to format the menu as you wish.
+
+<div class="node">
+<p><hr>
+<a name="Menu-Parts"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Less-Cluttered-Menu-Entry">Less Cluttered Menu Entry</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Writing-a-Menu">Writing a Menu</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Menus">Menus</a>
+<br>
+</div>
+
+<h3 class="section">7.3 The Parts of a Menu</h3>
+
+<p><a name="index-Parts-of-a-menu-345"></a><a name="index-Menu-parts-346"></a><a name="index-_0040code_007b_0040_0040menu_007d-parts-347"></a>
+A menu entry has three parts, only the second of which is required:
+
+ <ol type=1 start=1>
+<li>The menu entry name (optional).
+
+ <li>The name of the node (required).
+
+ <li>A description of the item (optional).
+ </ol>
+
+ <p>The template for a menu entry looks like this:
+
+<pre class="example"> * <var>menu-entry-name</var>: <var>node-name</var>. <var>description</var>
+</pre>
+ <p>Follow the menu entry name with a single colon and follow the node name
+with tab, comma, period, or newline.
+
+ <p>In Info, a user selects a node with the <kbd>m</kbd> (<code>Info-menu</code>)
+command. The menu entry name is what the user types after the <kbd>m</kbd>
+command.
+
+ <p>The third part of a menu entry is a descriptive phrase or sentence.
+Menu entry names and node names are often short; the description
+explains to the reader what the node is about. A useful description
+complements the node name rather than repeats it. The description,
+which is optional, can spread over two or more lines; if it does, some
+authors prefer to indent the second line while others prefer to align it
+with the first (and all others). It's up to you.
+
+<div class="node">
+<p><hr>
+<a name="Less-Cluttered-Menu-Entry"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Menu-Example">Menu Example</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Menu-Parts">Menu Parts</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Menus">Menus</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">7.4 Less Cluttered Menu Entry</h3>
+
+<p><a name="index-Two-part-menu-entry-348"></a><a name="index-Double_002dcolon-menu-entries-349"></a><a name="index-Menu-entries-with-two-colons-350"></a><a name="index-Less-cluttered-menu-entry-351"></a><a name="index-Uncluttered-menu-entry-352"></a>
+When the menu entry name and node name are the same, you can write
+the name immediately after the asterisk and space at the beginning of
+the line and follow the name with two colons.
+
+ <p>For example, write
+
+<pre class="example"> * Name:: <var>description</var>
+</pre>
+ <p class="noindent">instead of
+
+<pre class="example"> * Name: Name. <var>description</var>
+</pre>
+ <p>You should use the node name for the menu entry name whenever possible,
+since it reduces visual clutter in the menu.
+
+<div class="node">
+<p><hr>
+<a name="Menu-Example"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Other-Info-Files">Other Info Files</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Less-Cluttered-Menu-Entry">Less Cluttered Menu Entry</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Menus">Menus</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">7.5 A Menu Example</h3>
+
+<p><a name="index-Menu-example-353"></a><a name="index-Example-menu-354"></a>
+A menu looks like this in Texinfo:
+
+<pre class="example"> @menu
+ * menu entry name: Node name. A short description.
+ * Node name:: This form is preferred.
+ @end menu
+</pre>
+ <p class="noindent">This produces:
+
+<pre class="example"> * menu:
+
+ * menu entry name: Node name. A short description.
+ * Node name:: This form is preferred.
+</pre>
+ <p>Here is an example as you might see it in a Texinfo file:
+
+<pre class="example"> @menu
+ Larger Units of Text
+
+ * Files:: All about handling files.
+ * Multiples: Buffers. Multiple buffers; editing
+ several files at once.
+ @end menu
+</pre>
+ <p class="noindent">This produces:
+
+<pre class="example"> * menu:
+ Larger Units of Text
+
+ * Files:: All about handling files.
+ * Multiples: Buffers. Multiple buffers; editing
+ several files at once.
+</pre>
+ <p>In this example, the menu has two entries. <span class="samp">Files</span> is both a menu
+entry name and the name of the node referred to by that name.
+<span class="samp">Multiples</span> is the menu entry name; it refers to the node named
+<span class="samp">Buffers</span>. The line <span class="samp">Larger Units of Text</span> is a comment; it
+appears in the menu, but is not an entry.
+
+ <p>Since no file name is specified with either <span class="samp">Files</span> or
+<span class="samp">Buffers</span>, they must be the names of nodes in the same Info file
+(see <a href="#Other-Info-Files">Referring to Other Info Files</a>).
+
+<div class="node">
+<p><hr>
+<a name="Other-Info-Files"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Menu-Example">Menu Example</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Menus">Menus</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">7.6 Referring to Other Info Files</h3>
+
+<p><a name="index-Referring-to-other-Info-files-355"></a><a name="index-Nodes-in-other-Info-files-356"></a><a name="index-Other-Info-files_0027-nodes-357"></a><a name="index-Going-to-other-Info-files_0027-nodes-358"></a><a name="index-Info_003b-other-files_0027-nodes-359"></a>
+You can create a menu entry that enables a reader in Info to go to a
+node in another Info file by writing the file name in parentheses just
+before the node name. In this case, you should use the three-part menu
+entry format, which saves the reader from having to type the file
+name.
+
+ <p>The format looks like this:
+
+<pre class="example"> @menu
+ * <var>first-entry-name</var>:(<var>filename</var>)<var>nodename</var>. <var>description</var>
+ * <var>second-entry-name</var>:(<var>filename</var>)<var>second-node</var>. <var>description</var>
+ @end menu
+</pre>
+ <p>For example, to refer directly to the <span class="samp">Outlining</span> and
+<span class="samp">Rebinding</span> nodes in the <cite>Emacs Manual</cite>, you would write a
+menu like this:
+
+<pre class="example"> @menu
+ * Outlining: (emacs)Outline Mode. The major mode for
+ editing outlines.
+ * Rebinding: (emacs)Rebinding. How to redefine the
+ meaning of a key.
+ @end menu
+</pre>
+ <p>If you do not list the node name, but only name the file, then Info
+presumes that you are referring to the `Top' node.
+
+ <p>The <span class="file">dir</span> file that contains the main menu for Info has menu
+entries that list only file names. These take you directly to the `Top'
+nodes of each Info document. (See <a href="#Installing-an-Info-File">Installing an Info File</a>.)
+
+ <p>For example:
+
+<pre class="example"> * Info: (info). Documentation browsing system.
+ * Emacs: (emacs). The extensible, self-documenting
+ text editor.
+</pre>
+ <p class="noindent">(The <span class="file">dir</span> top level directory for the Info system is an Info file,
+not a Texinfo file, but a menu entry looks the same in both types of
+file.)
+
+ <p>The GNU Emacs Texinfo mode menu updating commands only work with nodes
+within the current buffer, so you cannot use them to create menus that
+refer to other files. You must write such menus by hand.
+
+<div class="node">
+<p><hr>
+<a name="Cross-References"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Marking-Text">Marking Text</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Menus">Menus</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">8 Cross References</h2>
+
+<p><a name="index-Making-cross-references-360"></a><a name="index-Cross-references-361"></a><a name="index-References-362"></a>
+<dfn>Cross references</dfn> are used to refer the reader to other parts of the
+same or different Texinfo files. In Texinfo, nodes and anchors are the
+places to which cross references can refer.
+
+<ul class="menu">
+<li><a accesskey="1" href="#References">References</a>: What cross references are for.
+<li><a accesskey="2" href="#Cross-Reference-Commands">Cross Reference Commands</a>: A summary of the different commands.
+<li><a accesskey="3" href="#Cross-Reference-Parts">Cross Reference Parts</a>: A cross reference has several parts.
+<li><a accesskey="4" href="#xref">xref</a>: Begin a reference with `See' ...
+<li><a accesskey="5" href="#Top-Node-Naming">Top Node Naming</a>: How to refer to the beginning of another file.
+<li><a accesskey="6" href="#ref">ref</a>: A reference for the last part of a sentence.
+<li><a accesskey="7" href="#pxref">pxref</a>: How to write a parenthetical cross reference.
+<li><a accesskey="8" href="#inforef">inforef</a>: How to refer to an Info-only file.
+<li><a accesskey="9" href="#uref">uref</a>: How to refer to a uniform resource locator.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="References"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Cross-Reference-Commands">Cross Reference Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Cross-References">Cross References</a>
+<br>
+</div>
+
+<h3 class="section">8.1 What References Are For</h3>
+
+<p>Often, but not always, a printed document should be designed so that
+it can be read sequentially. People tire of flipping back and forth
+to find information that should be presented to them as they need
+it.
+
+ <p>However, in any document, some information will be too detailed for
+the current context, or incidental to it; use cross references to
+provide access to such information. Also, an online help system or a
+reference manual is not like a novel; few read such documents in
+sequence from beginning to end. Instead, people look up what they
+need. For this reason, such creations should contain many cross
+references to help readers find other information that they may not
+have read.
+
+ <p>In a printed manual, a cross reference results in a page reference,
+unless it is to another manual altogether, in which case the cross
+reference names that manual.
+
+ <p>In Info, a cross reference results in an entry that you can follow
+using the Info <span class="samp">f</span> command. (see <a href="info.html#Help_002dXref">Following cross-references</a>.)
+
+ <p>The various cross reference commands use nodes (or anchors,
+see <a href="#anchor"><code>@anchor</code></a>) to define cross reference locations.
+This is evident in Info, in which a cross reference takes you to the
+specified location. TeX also uses nodes to define cross reference
+locations, but the action is less obvious. When TeX generates a DVI
+file, it records each node's page number and uses the page numbers in making
+references. Thus, if you are writing a manual that will only be
+printed, and will not be used online, you must nonetheless write
+<code>@node</code> lines to name the places to which you make cross
+references.
+
+<div class="node">
+<p><hr>
+<a name="Cross-Reference-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Cross-Reference-Parts">Cross Reference Parts</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#References">References</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Cross-References">Cross References</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">8.2 Different Cross Reference Commands</h3>
+
+<p><a name="index-Different-cross-reference-commands-363"></a>
+There are four different cross reference commands:
+
+ <dl>
+<dt><code>@xref</code><dd>Used to start a sentence in the printed manual saying `See&nbsp;<small class="dots">...</small>'<!-- /@w -->
+or an Info cross-reference saying <span class="samp">*Note </span><var>name</var><span class="samp">: </span><var>node</var><span class="samp">.</span>.
+
+ <br><dt><code>@ref</code><dd>Used within or, more often, at the end of a sentence; same as
+<code>@xref</code> for Info; produces just the reference in the printed
+manual without a preceding `See'.
+
+ <br><dt><code>@pxref</code><dd>Used within parentheses to make a reference that suits both an Info
+file and a printed book. Starts with a lower case `see' within the
+printed manual. (<span class="samp">p</span> is for `parenthesis'.)
+
+ <br><dt><code>@inforef</code><dd>Used to make a reference to an Info file for which there is no printed
+manual.
+</dl>
+
+<p class="noindent">(The <code>@cite</code> command is used to make references to books and
+manuals for which there is no corresponding Info file and, therefore,
+no node to which to point. See <a href="#cite"><code>@cite</code></a>.)
+
+<div class="node">
+<p><hr>
+<a name="Cross-Reference-Parts"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#xref">xref</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Cross-Reference-Commands">Cross Reference Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Cross-References">Cross References</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">8.3 Parts of a Cross Reference</h3>
+
+<p><a name="index-Cross-reference-parts-364"></a><a name="index-Parts-of-a-cross-reference-365"></a>
+A cross reference command requires only one argument, which is the
+name of the node to which it refers. But a cross reference command
+may contain up to four additional arguments. By using these
+arguments, you can provide a cross reference name for Info, a topic
+description or section title for the printed output, the name of a
+different Info file, and the name of a different printed
+manual.
+
+ <p>Here is a simple cross reference example:
+
+<pre class="example"> @xref{Node name}.
+</pre>
+ <p class="noindent">which produces
+
+<pre class="example"> *Note Node name::.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See Section <var>nnn</var> [Node name], page <var>ppp</var>.
+</blockquote>
+
+ <p>Here is an example of a full five-part cross reference:
+
+<pre class="example"> @xref{Node name, Cross Reference Name, Particular Topic,
+ info-file-name, A Printed Manual}, for details.
+</pre>
+ <p class="noindent">which produces
+
+<pre class="example"> *Note Cross Reference Name: (info-file-name)Node name,
+ for details.
+</pre>
+ <p class="noindent">in Info and
+
+ <blockquote>
+See section &ldquo;Particular Topic&rdquo; in <i>A Printed Manual</i>, for details.
+</blockquote>
+
+<p class="noindent">in a printed book.
+
+ <p>The five possible arguments for a cross reference are:
+
+ <ol type=1 start=1>
+<li>The node or anchor name (required). This is the location to which the
+cross reference takes you. In a printed document, the location of the
+node provides the page reference only for references within the same
+document.
+
+ <li>The cross reference name for the Info reference, if it is to be different
+from the node name. If you include this argument, it becomes
+the first part of the cross reference. It is usually omitted.
+
+ <li>A topic description or section name. Often, this is the title of the
+section. This is used as the name of the reference in the printed
+manual. If omitted, the node name is used.
+
+ <li>The name of the Info file in which the reference is located, if it is
+different from the current file. You need not include any <span class="samp">.info</span>
+suffix on the file name, since Info readers try appending it
+automatically.
+
+ <li>The name of a printed manual from a different Texinfo file.
+ </ol>
+
+ <p>The template for a full five argument cross reference looks like
+this:
+
+<pre class="example"> @xref{<var>node-name</var>, <var>cross-reference-name</var>, <var>title-or-topic</var>,
+ <var>info-file-name</var>, <var>printed-manual-title</var>}.
+</pre>
+ <p>Cross references with one, two, three, four, and five arguments are
+described separately following the description of <code>@xref</code>.
+
+ <p>Write a node name in a cross reference in exactly the same way as in
+the <code>@node</code> line, including the same capitalization; otherwise, the
+formatters may not find the reference.
+
+ <p>You can write cross reference commands within a paragraph, but note
+how Info and TeX format the output of each of the various commands:
+write <code>@xref</code> at the beginning of a sentence; write
+<code>@pxref</code> only within parentheses, and so on.
+
+<div class="node">
+<p><hr>
+<a name="xref"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Top-Node-Naming">Top Node Naming</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Cross-Reference-Parts">Cross Reference Parts</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Cross-References">Cross References</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">8.4 <code>@xref</code></h3>
+
+<p><a name="index-xref-366"></a><a name="index-Cross-references-using-_0040code_007b_0040_0040xref_007d-367"></a><a name="index-References-using-_0040code_007b_0040_0040xref_007d-368"></a>
+The <code>@xref</code> command generates a cross reference for the
+beginning of a sentence. The Info formatting commands convert it into
+an Info cross reference, which the Info <span class="samp">f</span> command can use to
+bring you directly to another node. The TeX typesetting commands
+convert it into a page reference, or a reference to another book or
+manual.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Reference-Syntax">Reference Syntax</a>: What a reference looks like and requires.
+<li><a accesskey="2" href="#One-Argument">One Argument</a>: <code>@xref</code> with one argument.
+<li><a accesskey="3" href="#Two-Arguments">Two Arguments</a>: <code>@xref</code> with two arguments.
+<li><a accesskey="4" href="#Three-Arguments">Three Arguments</a>: <code>@xref</code> with three arguments.
+<li><a accesskey="5" href="#Four-and-Five-Arguments">Four and Five Arguments</a>: <code>@xref</code> with four and five arguments.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Reference-Syntax"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#One-Argument">One Argument</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#xref">xref</a>
+<br>
+</div>
+
+<h4 class="subsection">8.4.1 What a Reference Looks Like and Requires</h4>
+
+<p>Most often, an Info cross reference looks like this:
+
+<pre class="example"> *Note <var>node-name</var>::.
+</pre>
+ <p class="noindent">or like this
+
+<pre class="example"> *Note <var>cross-reference-name</var>: <var>node-name</var>.
+</pre>
+ <p class="noindent">In TeX, a cross reference looks like this:
+
+ <blockquote>
+See Section <var>section-number</var> [<var>node-name</var>], page <var>page</var>.
+</blockquote>
+
+<p class="noindent">or like this
+
+ <blockquote>
+See Section <var>section-number</var> [<var>title-or-topic</var>], page <var>page</var>.
+</blockquote>
+
+ <p>The <code>@xref</code> command does not generate a period or comma to end
+the cross reference in either the Info file or the printed output.
+You must write that period or comma yourself; otherwise, Info will not
+recognize the end of the reference. (The <code>@pxref</code> command works
+differently. See <a href="#pxref"><code>@pxref</code></a>.)
+
+ <blockquote>
+<b>Caution:</b> A period or comma <strong>must</strong> follow the closing
+brace of an <code>@xref</code>. It is required to terminate the cross
+reference. This period or comma will appear in the output, both in
+the Info file and in the printed manual.
+</blockquote>
+
+ <p><code>@xref</code> must refer to an Info node by name. Use <code>@node</code>
+to define the node (see <a href="#Writing-a-Node">Writing a Node</a>).
+
+ <p><code>@xref</code> is followed by several arguments inside braces, separated by
+commas. Whitespace before and after these commas is ignored.
+
+ <p>A cross reference requires only the name of a node; but it may contain
+up to four additional arguments. Each of these variations produces a
+cross reference that looks somewhat different.
+
+ <blockquote>
+<b>Note:</b> Commas separate arguments in a cross reference;
+avoid including them in the title or other part lest the formatters
+mistake them for separators.
+</blockquote>
+
+<div class="node">
+<p><hr>
+<a name="One-Argument"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Two-Arguments">Two Arguments</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Reference-Syntax">Reference Syntax</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#xref">xref</a>
+<br>
+</div>
+
+<h4 class="subsection">8.4.2 <code>@xref</code> with One Argument</h4>
+
+<p>The simplest form of <code>@xref</code> takes one argument, the name of
+another node in the same Info file. The Info formatters produce
+output that the Info readers can use to jump to the reference; TeX
+produces output that specifies the page and section number for you.
+
+<p class="noindent">For example,
+
+<pre class="example"> @xref{Tropical Storms}.
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> *Note Tropical Storms::.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See Section 3.1 [Tropical Storms], page 24.
+</blockquote>
+
+<p class="noindent">(Note that in the preceding example the closing brace is followed by a
+period.)
+
+ <p>You can write a clause after the cross reference, like this:
+
+<pre class="example"> @xref{Tropical Storms}, for more info.
+</pre>
+ <p class="noindent">which produces
+
+<pre class="example"> *Note Tropical Storms::, for more info.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See Section 3.1 [Tropical Storms], page 24, for more info.
+</blockquote>
+
+<p class="noindent">(Note that in the preceding example the closing brace is followed by a
+comma, and then by the clause, which is followed by a period.)
+
+<div class="node">
+<p><hr>
+<a name="Two-Arguments"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Three-Arguments">Three Arguments</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#One-Argument">One Argument</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#xref">xref</a>
+<br>
+</div>
+
+<h4 class="subsection">8.4.3 <code>@xref</code> with Two Arguments</h4>
+
+<p>With two arguments, the second is used as the name of the Info cross
+reference, while the first is still the name of the node to which the
+cross reference points.
+
+<p class="noindent">The template is like this:
+
+<pre class="example"> @xref{<var>node-name</var>, <var>cross-reference-name</var>}.
+</pre>
+ <p class="noindent">For example,
+
+<pre class="example"> @xref{Electrical Effects, Lightning}.
+</pre>
+ <p class="noindent">produces:
+
+<pre class="example"> *Note Lightning: Electrical Effects.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See Section 5.2 [Electrical Effects], page 57.
+</blockquote>
+
+<p class="noindent">(Note that in the preceding example the closing brace is followed by a
+period; and that the node name is printed, not the cross reference name.)
+
+ <p>You can write a clause after the cross reference, like this:
+
+<pre class="example"> @xref{Electrical Effects, Lightning}, for more info.
+</pre>
+ <p class="noindent">which produces
+<pre class="example"> *Note Lightning: Electrical Effects, for more info.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See Section 5.2 [Electrical Effects], page 57, for more info.
+</blockquote>
+
+<p class="noindent">(Note that in the preceding example the closing brace is followed by a
+comma, and then by the clause, which is followed by a period.)
+
+<div class="node">
+<p><hr>
+<a name="Three-Arguments"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Four-and-Five-Arguments">Four and Five Arguments</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Two-Arguments">Two Arguments</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#xref">xref</a>
+<br>
+</div>
+
+<h4 class="subsection">8.4.4 <code>@xref</code> with Three Arguments</h4>
+
+<p>A third argument replaces the node name in the TeX output. The third
+argument should be the name of the section in the printed output, or
+else state the topic discussed by that section. Often, you will want to
+use initial upper case letters so it will be easier to read when the
+reference is printed. Use a third argument when the node name is
+unsuitable because of syntax or meaning.
+
+ <p>Remember to avoid placing a comma within the title or topic section of
+a cross reference, or within any other section. The formatters divide
+cross references into arguments according to the commas; a comma
+within a title or other section will divide it into two arguments. In
+a reference, you need to write a title such as &ldquo;Clouds, Mist, and
+Fog&rdquo; without the commas.
+
+ <p>Also, remember to write a comma or period after the closing brace of an
+<code>@xref</code> to terminate the cross reference. In the following
+examples, a clause follows a terminating comma.
+
+<p class="noindent">The template is like this:
+
+<pre class="example"> @xref{<var>node-name</var>, <var>cross-reference-name</var>, <var>title-or-topic</var>}.
+</pre>
+ <p class="noindent">For example,
+
+<pre class="example"> @xref{Electrical Effects, Lightning, Thunder and Lightning},
+ for details.
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> *Note Lightning: Electrical Effects, for details.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See Section 5.2 [Thunder and Lightning], page 57, for details.
+</blockquote>
+
+ <p>If a third argument is given and the second one is empty, then the
+third argument serves both. (Note how two commas, side by side, mark
+the empty second argument.)
+
+<pre class="example"> @xref{Electrical Effects, , Thunder and Lightning},
+ for details.
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> *Note Thunder and Lightning: Electrical Effects, for details.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See Section 5.2 [Thunder and Lightning], page 57, for details.
+</blockquote>
+
+ <p>As a practical matter, it is often best to write cross references with
+just the first argument if the node name and the section title are the
+same, and with the first and third arguments if the node name and title
+are different.
+
+ <p>Here are several examples from <cite>The GNU Awk User's Guide</cite>:
+
+<pre class="smallexample"> @xref{Sample Program}.
+ @xref{Glossary}.
+ @xref{Case-sensitivity, ,Case-sensitivity in Matching}.
+ @xref{Close Output, , Closing Output Files and Pipes},
+ for more information.
+ @xref{Regexp, , Regular Expressions as Patterns}.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Four-and-Five-Arguments"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Three-Arguments">Three Arguments</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#xref">xref</a>
+<br>
+</div>
+
+<h4 class="subsection">8.4.5 <code>@xref</code> with Four and Five Arguments</h4>
+
+<p>In a cross reference, a fourth argument specifies the name of another
+Info file, different from the file in which the reference appears, and
+a fifth argument specifies its title as a printed manual.
+
+ <p>Remember that a comma or period must follow the closing brace of an
+<code>@xref</code> command to terminate the cross reference. In the
+following examples, a clause follows a terminating comma.
+
+<p class="noindent">The template is:
+
+<pre class="example"> @xref{<var>node-name</var>, <var>cross-reference-name</var>, <var>title-or-topic</var>,
+ <var>info-file-name</var>, <var>printed-manual-title</var>}.
+</pre>
+ <p class="noindent">For example,
+
+<pre class="example"> @xref{Electrical Effects, Lightning, Thunder and Lightning,
+ weather, An Introduction to Meteorology}, for details.
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> *Note Lightning: (weather)Electrical Effects, for details.
+</pre>
+ <p class="noindent">The name of the Info file is enclosed in parentheses and precedes
+the name of the node.
+
+<p class="noindent">In a printed manual, the reference looks like this:
+
+ <blockquote>
+See section &ldquo;Thunder and Lightning&rdquo; in <i>An Introduction to
+Meteorology</i>, for details.
+</blockquote>
+
+<p class="noindent">The title of the printed manual is typeset in italics; and the
+reference lacks a page number since TeX cannot know to which page a
+reference refers when that reference is to another manual.
+
+ <p>Often, you will leave out the second argument when you use the long
+version of <code>@xref</code>. In this case, the third argument, the topic
+description, will be used as the cross reference name in Info.
+
+<p class="noindent">The template looks like this:
+
+<pre class="example"> @xref{<var>node-name</var>, , <var>title-or-topic</var>, <var>info-file-name</var>,
+ <var>printed-manual-title</var>}, for details.
+</pre>
+ <p class="noindent">which produces
+
+<pre class="example"> *Note <var>title-or-topic</var>: (<var>info-file-name</var>)<var>node-name</var>, for details.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See section <var>title-or-topic</var> in <var>printed-manual-title</var>, for details.
+</blockquote>
+
+<p class="noindent">For example,
+
+<pre class="example"> @xref{Electrical Effects, , Thunder and Lightning,
+ weather, An Introduction to Meteorology}, for details.
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> *Note Thunder and Lightning: (weather)Electrical Effects,
+ for details.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See section &ldquo;Thunder and Lightning&rdquo; in <i>An Introduction to
+Meteorology</i>, for details.
+</blockquote>
+
+ <p>On rare occasions, you may want to refer to another Info file that
+is within a single printed manual&mdash;when multiple Texinfo files are
+incorporated into the same TeX run but make separate Info files.
+In this case, you need to specify only the fourth argument, and not
+the fifth.
+
+<div class="node">
+<p><hr>
+<a name="Top-Node-Naming"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#ref">ref</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#xref">xref</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Cross-References">Cross References</a>
+<br>
+</div>
+
+<h3 class="section">8.5 Naming a `Top' Node</h3>
+
+<p><a name="index-Naming-a-_0060Top_0027-Node-in-references-369"></a><a name="index-_0040samp_007b_0040r_007bTop_007d_007d-node-naming-for-references-370"></a>
+In a cross reference, you must always name a node. This means that in
+order to refer to a whole manual, you must identify the `Top' node by
+writing it as the first argument to the <code>@xref</code> command. (This
+is different from the way you write a menu entry; see <a href="#Other-Info-Files">Referring to Other Info Files</a>.) At the same time, to
+provide a meaningful section topic or title in the printed cross
+reference (instead of the word `Top'), you must write an appropriate
+entry for the third argument to the <code>@xref</code> command.
+
+<p class="noindent">Thus, to make a cross reference to <cite>The GNU Make Manual</cite>,
+write:
+
+<pre class="example"> @xref{Top, , Overview, make, The GNU Make Manual}.
+</pre>
+ <p class="noindent">which produces
+
+<pre class="example"> *Note Overview: (make)Top.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See section &ldquo;Overview&rdquo; in <i>The GNU Make Manual</i>.
+</blockquote>
+
+<p class="noindent">In this example, <span class="samp">Top</span> is the name of the first node, and
+<span class="samp">Overview</span> is the name of the first section of the manual.
+
+<div class="node">
+<p><hr>
+<a name="ref"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#pxref">pxref</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Top-Node-Naming">Top Node Naming</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Cross-References">Cross References</a>
+<br>
+</div>
+
+<h3 class="section">8.6 <code>@ref</code></h3>
+
+<p><a name="index-Cross-references-using-_0040code_007b_0040_0040ref_007d-371"></a><a name="index-References-using-_0040code_007b_0040_0040ref_007d-372"></a><a name="index-ref-373"></a>
+<code>@ref</code> is nearly the same as <code>@xref</code> except that it does
+not generate a `See' in the printed output, just the reference itself.
+This makes it useful as the last part of a sentence.
+
+<p class="noindent">For example,
+
+ <p><a name="index-Hurricanes-374"></a>
+<pre class="example"> For more information, see @ref{Hurricanes}.
+</pre>
+ <p class="noindent">produces (in Info):
+
+<pre class="example"> For more information, see *Note Hurricanes::.
+</pre>
+ <p class="noindent">and (in printed output):
+
+ <blockquote>
+For more information, see Section 8.2 [Hurricanes], page 123.
+</blockquote>
+
+ <p>The <code>@ref</code> command sometimes tempts writers to express
+themselves in a manner that is suitable for a printed manual but looks
+awkward in the Info format. Bear in mind that your audience will be
+using both the printed and the Info format. For example:
+
+ <p><a name="index-Sea-surges-375"></a>
+<pre class="example"> Sea surges are described in @ref{Hurricanes}.
+</pre>
+ <p class="noindent">looks ok in the printed output:
+
+ <blockquote>
+Sea surges are described in Section 6.7 [Hurricanes], page 72.
+</blockquote>
+
+<p class="noindent">but is awkward to read in Info:
+
+<pre class="example"> Sea surges are described in *Note Hurricanes::.
+</pre>
+ <blockquote>
+<b>Caution:</b> You should write a period or comma immediately after an <code>@ref</code>
+command with two or more arguments. Otherwise, Info will generate a
+(grammatically incorrect) period, just so the cross-reference doesn't
+fail completely.
+</blockquote>
+
+ <p>As a general rule, you should write a period or comma after every
+<code>@ref</code> command. This works best in both the printed and the
+Info output.
+
+<div class="node">
+<p><hr>
+<a name="pxref"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#inforef">inforef</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#ref">ref</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Cross-References">Cross References</a>
+<br>
+</div>
+
+<h3 class="section">8.7 <code>@pxref</code></h3>
+
+<p><a name="index-Cross-references-using-_0040code_007b_0040_0040pxref_007d-376"></a><a name="index-References-using-_0040code_007b_0040_0040pxref_007d-377"></a><a name="index-pxref-378"></a>
+The parenthetical reference command, <code>@pxref</code>, is nearly the
+same as <code>@xref</code>, but you use it <em>only</em> inside parentheses
+and you do <em>not</em> type a comma or period after the command's
+closing brace. The command differs from <code>@xref</code> in two
+ways:
+
+ <ol type=1 start=1>
+<li>TeX typesets the reference for the printed manual with a lower case
+`see' rather than an upper case `See'.
+
+ <li>The Info formatting commands automatically end the reference with a
+closing colon or period.
+ </ol>
+
+ <p>Because one type of formatting automatically inserts closing
+punctuation and the other does not, you should use <code>@pxref</code>
+<em>only</em> inside parentheses as part of another sentence. Also, you
+yourself should not insert punctuation after the reference, as you do
+with <code>@xref</code>.
+
+ <p><code>@pxref</code> is designed so that the output looks right and works
+right between parentheses both in printed output and in an Info file.
+In a printed manual, a closing comma or period should not follow a
+cross reference within parentheses; such punctuation is wrong. But in
+an Info file, suitable closing punctuation must follow the cross
+reference so Info can recognize its end. <code>@pxref</code> spares you
+the need to use complicated methods to put a terminator into one form
+of the output and not the other.
+
+<p class="noindent">With one argument, a parenthetical cross reference looks like
+this:
+
+ <p><a name="index-Flooding-379"></a>
+<pre class="example"> ... storms cause flooding (@pxref{Hurricanes}) ...
+</pre>
+ <p class="noindent">which produces
+
+<pre class="example"> ... storms cause flooding (*Note Hurricanes::) ...
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+<small class="dots">...</small> storms cause flooding (see Section 6.7 [Hurricanes], page 72) <small class="dots">...</small>
+</blockquote>
+
+ <p>With two arguments, a parenthetical cross reference has this
+template:
+
+<pre class="example"> ... (@pxref{<var>node-name</var>, <var>cross-reference-name</var>}) ...
+</pre>
+ <p class="noindent">which produces
+
+<pre class="example"> ... (*Note <var>cross-reference-name</var>: <var>node-name</var>.) ...
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+<small class="dots">...</small> (see Section <var>nnn</var> [<var>node-name</var>], page <var>ppp</var>) <small class="dots">...</small>
+</blockquote>
+
+ <p><code>@pxref</code> can be used with up to five arguments just like
+<code>@xref</code> (see <a href="#xref"><code>@xref</code></a>).
+
+ <blockquote>
+<b>Caution:</b> Use <code>@pxref</code> only as a parenthetical
+reference. Do not try to use <code>@pxref</code> as a clause in a sentence.
+It will look bad in either the Info file, the printed output, or
+both.
+</blockquote>
+
+ <p>Parenthetical cross references look best at the ends of sentences.
+Although they technically work in the middle of a sentence, that
+location breaks up the flow of reading.
+
+<div class="node">
+<p><hr>
+<a name="inforef"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#uref">uref</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#pxref">pxref</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Cross-References">Cross References</a>
+<br>
+</div>
+
+<h3 class="section">8.8 <code>@inforef</code></h3>
+
+<p><a name="index-Cross-references-using-_0040code_007b_0040_0040inforef_007d-380"></a><a name="index-References-using-_0040code_007b_0040_0040inforef_007d-381"></a><a name="index-inforef-382"></a>
+<code>@inforef</code> is used for cross references to Info files for which
+there are no printed manuals. Even in a printed manual,
+<code>@inforef</code> generates a reference directing the user to look in
+an Info file.
+
+ <p>The command takes either two or three arguments, in the following
+order:
+
+ <ol type=1 start=1>
+<li>The node name.
+
+ <li>The cross reference name (optional).
+
+ <li>The Info file name.
+ </ol>
+
+<p class="noindent">Separate the arguments with commas, as with <code>@xref</code>. Also, you
+must terminate the reference with a comma or period after the
+<span class="samp">}</span>, as you do with <code>@xref</code>.
+
+<p class="noindent">The template is:
+
+<pre class="example"> @inforef{<var>node-name</var>, <var>cross-reference-name</var>, <var>info-file-name</var>},
+</pre>
+ <p class="noindent">Thus,
+
+<pre class="example"> @inforef{Advanced, Advanced Info commands, info},
+ for more information.
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> *Note Advanced Info commands: (info)Advanced,
+ for more information.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See Info file <span class="file">info</span>, node <span class="samp">Advanced</span>, for more information.
+</blockquote>
+
+<p class="noindent">Similarly,
+
+<pre class="example"> @inforef{Advanced, , info}, for more information.
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> *Note (info)Advanced::, for more information.
+</pre>
+ <p class="noindent">and
+
+ <blockquote>
+See Info file <span class="file">info</span>, node <span class="samp">Advanced</span>, for more information.
+</blockquote>
+
+ <p>The converse of <code>@inforef</code> is <code>@cite</code>, which is used to
+refer to printed works for which no Info form exists. See <a href="#cite"><code>@cite</code></a>.
+
+<div class="node">
+<p><hr>
+<a name="uref"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#inforef">inforef</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Cross-References">Cross References</a>
+<br>
+</div>
+
+<h3 class="section">8.9 <code>@url</code>, <code>@uref{</code><var>url</var><code>[, </code><var>text</var><code>][, </code><var>replacement</var><code>]}</code></h3>
+
+<p><a name="index-uref-383"></a><a name="index-Uniform-resource-locator_002c-referring-to-384"></a><a name="index-URL_002c-referring-to-385"></a>
+<a name="index-_0040code_007bhref_007d_002c-producing-HTML-386"></a><code>@uref</code> produces a reference to a uniform resource locator (url).
+It takes one mandatory argument, the url, and two optional arguments
+which control the text that is displayed. In HTML output, <code>@uref</code>
+produces a link you can follow.
+
+ <p><code>@url</code> is a synonym for <code>@uref</code>. Originally, <code>@url</code>
+had the meaning of <code>@indicateurl</code>
+(see <a href="#indicateurl"><code>@indicateurl</code></a>), but in actual practice it
+was misused the vast majority of the time. So we've changed the
+definitions.
+
+ <p>The second argument, if specified, is the text to display (the default
+is the url itself); in Info and DVI output, but not in HTML output, the
+url is also output.
+
+ <p><a name="index-Man-page_002c-reference-to-387"></a>The third argument, if specified, is the text to display, but in this
+case the url is <em>not</em> output in any format. This is useful when
+the text is already sufficiently referential, as in a man page. If
+the third argument is given, the second argument is ignored.
+
+ <p>If the url is long enough to cause problems with line breaking, you
+may find it useful to insert <code>@/</code> at places where a line break
+would be acceptable (after <span class="samp">/</span> characters, for instance). This
+tells TeX to allow (but not force) a line break at those places.
+See <a href="#Line-Breaks">Line Breaks</a>.
+
+ <p>Here is an example of the simple one argument form, where the url is
+both the target and the text of the link:
+
+<pre class="example"> The official GNU ftp site is @uref{ftp://ftp.gnu.org/gnu}.
+</pre>
+ <p class="noindent">produces:
+<pre class="display"> The official GNU ftp site is <a href="ftp://ftp.gnu.org/gnu">ftp://ftp.gnu.org/gnu</a>.
+</pre>
+ <p>An example of the two-argument form:
+<pre class="example"> The official @uref{ftp://ftp.gnu.org/gnu, GNU ftp site}
+ holds programs and texts.
+</pre>
+ <p class="noindent">produces:
+<pre class="display"> The official <a href="ftp://ftp.gnu.org/gnu">GNU ftp site</a>
+ holds programs and texts.
+</pre>
+ <p class="noindent">that is, the Info output is this:
+<pre class="example"> The official GNU ftp site (ftp://ftp.gnu.org/gnu)
+ holds programs and texts.
+</pre>
+ <p class="noindent">and the HTML output is this:
+<pre class="example"> The official &lt;a href="ftp://ftp.gnu.org/gnu"&gt;GNU ftp site&lt;/a&gt;
+ holds programs and texts.
+</pre>
+ <p>An example of the three-argument form:
+<pre class="example"> The @uref{/man.cgi/1/ls,,ls(1)} program ...
+</pre>
+ <p class="noindent">produces:
+<pre class="display"> The <a href="/man.cgi/1/ls">ls(1)</a> program <small class="dots">...</small>
+</pre>
+ <p class="noindent">but with HTML:
+<pre class="example"> The &lt;a href="/man.cgi/1/ls"&gt;ls(1)&lt;/a&gt; program ...
+</pre>
+ <p>To merely indicate a url without creating a link people can follow, use
+<code>@indicateurl</code> (see <a href="#indicateurl"><code>@indicateurl</code></a>).
+
+ <p>Some people prefer to display url's in the unambiguous format:
+
+<pre class="display"> &lt;URL:http://<var>host</var>/<var>path</var>&gt;
+</pre>
+ <p class="noindent"><a name="index-_003cURL_003a-convention_002c-not-used-388"></a>You can use this form in the input file if you wish. We feel it's not
+necessary to include the <span class="samp">&lt;URL:</span> and <span class="samp">&gt;</span> in the output,
+since any software that tries to detect url's in text already has to
+detect them without the <span class="samp">&lt;URL:</span> to be useful.
+
+<div class="node">
+<p><hr>
+<a name="Marking-Text"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Quotations-and-Examples">Quotations and Examples</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Cross-References">Cross References</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">9 Marking Words and Phrases</h2>
+
+<p><a name="index-Paragraph_002c-marking-text-within-389"></a><a name="index-Marking-words-and-phrases-390"></a><a name="index-Words-and-phrases_002c-marking-them-391"></a><a name="index-Marking-text-within-a-paragraph-392"></a><a name="index-Text_002c-marking-up-393"></a>
+In Texinfo, you can mark words and phrases in a variety of ways.
+The Texinfo formatters use this information to determine how to
+highlight the text.
+You can specify, for example, whether a word or phrase is a
+defining occurrence, a metasyntactic variable, or a symbol used in a
+program. Also, you can emphasize text, in several different ways.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Indicating">Indicating</a>: How to indicate definitions, files, etc.
+<li><a accesskey="2" href="#Emphasis">Emphasis</a>: How to emphasize text.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Indicating"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Emphasis">Emphasis</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Marking-Text">Marking Text</a>
+<br>
+</div>
+
+<h3 class="section">9.1 Indicating Definitions, Commands, etc.</h3>
+
+<p><a name="index-Highlighting-text-394"></a><a name="index-Indicating-commands_002c-definitions_002c-etc_002e-395"></a>
+Texinfo has commands for indicating just what kind of object a piece of
+text refers to. For example, metasyntactic variables are marked by
+<code>@var</code>, and code by <code>@code</code>. Since the pieces of text are
+labelled by commands that tell what kind of object they are, it is easy
+to change the way the Texinfo formatters prepare such text. (Texinfo is
+an <em>intentional</em> formatting language rather than a <em>typesetting</em>
+formatting language.)
+
+ <p>For example, in a printed manual,
+code is usually illustrated in a typewriter font;
+<code>@code</code> tells TeX to typeset this text in this font. But it
+would be easy to change the way TeX highlights code to use another
+font, and this change would not affect how keystroke examples are
+highlighted. If straight typesetting commands were used in the body
+of the file and you wanted to make a change, you would need to check
+every single occurrence to make sure that you were changing code and
+not something else that should not be changed.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Useful-Highlighting">Useful Highlighting</a>: Highlighting provides useful information.
+<li><a accesskey="2" href="#code">code</a>: Indicating program code.
+<li><a accesskey="3" href="#kbd">kbd</a>: Showing keyboard input.
+<li><a accesskey="4" href="#key">key</a>: Specifying keys.
+<li><a accesskey="5" href="#samp">samp</a>: A literal sequence of characters.
+<li><a accesskey="6" href="#verb">verb</a>: A verbatim sequence of characters.
+<li><a accesskey="7" href="#var">var</a>: Indicating metasyntactic variables.
+<li><a accesskey="8" href="#env">env</a>: Indicating environment variables.
+<li><a accesskey="9" href="#file">file</a>: Indicating file names.
+<li><a href="#command">command</a>: Indicating command names.
+<li><a href="#option">option</a>: Indicating option names.
+<li><a href="#dfn">dfn</a>: Specifying definitions.
+<li><a href="#cite">cite</a>: Referring to books not in the Info system.
+<li><a href="#acronym">acronym</a>: Indicating acronyms.
+<li><a href="#indicateurl">indicateurl</a>: Indicating a World Wide Web reference.
+<li><a href="#email">email</a>: Indicating an electronic mail address.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Useful-Highlighting"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#code">code</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.1 Highlighting Commands are Useful</h4>
+
+<p>The highlighting commands can be used to extract useful information
+from the file, such as lists of functions or file names. It is
+possible, for example, to write a program in Emacs Lisp (or a keyboard
+macro) to insert an index entry after every paragraph that contains
+words or phrases marked by a specified command. You could do this to
+construct an index of functions if you had not already made the
+entries.
+
+ <p>The commands serve a variety of purposes:
+
+ <dl>
+<dt><code>@code{</code><var>sample-code</var><code>}</code><dd>Indicate text that is a literal example of a piece of a program.
+
+ <br><dt><code>@kbd{</code><var>keyboard-characters</var><code>}</code><dd>Indicate keyboard input.
+
+ <br><dt><code>@key{</code><var>key-name</var><code>}</code><dd>Indicate the conventional name for a key on a keyboard.
+
+ <br><dt><code>@samp{</code><var>text</var><code>}</code><dd>Indicate text that is a literal example of a sequence of characters.
+
+ <br><dt><code>@var{</code><var>metasyntactic-variable</var><code>}</code><dd>Indicate a metasyntactic variable.
+
+ <br><dt><code>@env{</code><var>environment-variable</var><code>}</code><dd>Indicate an environment variable.
+
+ <br><dt><code>@file{</code><var>file-name</var><code>}</code><dd>Indicate the name of a file.
+
+ <br><dt><code>@command{</code><var>command-name</var><code>}</code><dd>Indicate the name of a command.
+
+ <br><dt><code>@option{</code><var>option</var><code>}</code><dd>Indicate a command-line option.
+
+ <br><dt><code>@dfn{</code><var>term</var><code>}</code><dd>Indicate the introductory or defining use of a term.
+
+ <br><dt><code>@cite{</code><var>reference</var><code>}</code><dd>Indicate the name of a book.
+
+ <br><dt><code>@acronym{</code><var>acronym</var><code>}</code><dd>Indicate an acronym.
+
+ <br><dt><code>@indicateurl{</code><var>uniform-resource-locator</var><code>}</code><dd>Indicate a uniform resource locator for the World Wide Web.
+
+ <br><dt><code>@email{</code><var>email-address</var><code>[, </code><var>displayed-text</var><code>]}</code><dd>Indicate an electronic mail address.
+
+ </dl>
+
+<div class="node">
+<p><hr>
+<a name="code"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#kbd">kbd</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Useful-Highlighting">Useful Highlighting</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.2 <code>@code</code>{<var>sample-code</var>}</h4>
+
+<p><a name="index-code-396"></a>
+<a name="index-Syntactic-tokens_002c-indicating-397"></a>Use the <code>@code</code> command to indicate text that is a piece of a
+program and which consists of entire syntactic tokens. Enclose the
+text in braces.
+
+ <p><a name="index-Expressions-in-a-program_002c-indicating-398"></a><a name="index-Keywords_002c-indicating-399"></a><a name="index-Reserved-words_002c-indicating-400"></a>Thus, you should use <code>@code</code> for an expression in a program, for
+the name of a variable or function used in a program, or for a
+keyword in a programming language.
+
+ <p>Use <code>@code</code> for command names in languages that resemble
+programming languages, such as Texinfo. For example, <code>@code</code> and
+<code>@samp</code> are produced by writing <span class="samp">@code{@@code}</span> and
+<span class="samp">@code{@@samp}</span> in the Texinfo source, respectively.
+
+ <p><a name="index-Case_002c-not-altering-in-_0040code_007b_0040_0040code_007d-401"></a>It is incorrect to alter the case of a word inside an <code>@code</code>
+command when it appears at the beginning of a sentence. Most computer
+languages are case sensitive. In C, for example, <code>Printf</code> is
+different from the identifier <code>printf</code>, and most likely is a
+misspelling of it. Even in languages which are not case sensitive, it
+is confusing to a human reader to see identifiers spelled in different
+ways. Pick one spelling and always use that. If you do not want to
+start a sentence with a command name written all in lower case, you
+should rearrange the sentence.
+
+ <p>In the printed manual, <code>@code</code> causes TeX to typeset the
+argument in a typewriter face. In the Info file, it causes the Info
+formatting commands to use single quotation marks around the text.
+
+ <p>For example,
+
+<pre class="example"> The function returns @code{nil}.
+</pre>
+ <p class="noindent">produces this in the printed manual:
+
+ <blockquote>
+The function returns <code>nil</code>.
+</blockquote>
+
+ <p>Here are some cases for which it is preferable not to use <code>@code</code>:
+
+ <ul>
+<li>For shell command names such as <span class="command">ls</span> (use <code>@command</code>).
+
+ <li>For shell options such as <span class="samp">-c</span> when such options stand alone (use
+<code>@option</code>).
+
+ <li>Also, an entire shell command often looks better if written using
+<code>@samp</code> rather than <code>@code</code>. In this case, the rule is to
+choose the more pleasing format.
+
+ <li>For environment variable such as <span class="env">TEXINPUTS</span> (use <code>@env</code>).
+
+ <li>For a string of characters shorter than a syntactic token. For example,
+if you are writing about <span class="samp">goto-ch</span>, which is just a part of the
+name for the <code>goto-char</code> Emacs Lisp function, you should use
+<code>@samp</code>.
+
+ <li>In general, when writing about the characters used in a token; for
+example, do not use <code>@code</code> when you are explaining what letters
+or printable symbols can be used in the names of functions. (Use
+<code>@samp</code>.) Also, you should not use <code>@code</code> to mark text
+that is considered input to programs unless the input is written in a
+language that is like a programming language. For example, you should
+not use <code>@code</code> for the keystroke commands of GNU Emacs (use
+<code>@kbd</code> instead) although you may use <code>@code</code> for the names
+of the Emacs Lisp functions that the keystroke commands invoke.
+
+ </ul>
+
+ <p>Since <code>@command</code>, <code>@option</code>, and <code>@env</code> were
+introduced relatively recently, it is acceptable to use <code>@code</code> or
+<code>@samp</code> for command names, options, and environment variables.
+The new commands allow you to express the markup more precisely, but
+there is no real harm in using the older commands, and of course the
+long-standing manuals do so.
+
+<div class="node">
+<p><hr>
+<a name="kbd"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#key">key</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#code">code</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.3 <code>@kbd</code>{<var>keyboard-characters</var>}</h4>
+
+<p><a name="index-kbd-402"></a><a name="index-Keyboard-input-403"></a>
+Use the <code>@kbd</code> command for characters of input to be typed by
+users. For example, to refer to the characters <kbd>M-a</kbd>, write:
+
+<pre class="example"> @kbd{M-a}
+</pre>
+ <p class="noindent">and to refer to the characters <kbd>M-x shell</kbd>, write:
+
+<pre class="example"> @kbd{M-x shell}
+</pre>
+ <p><a name="index-User-input-404"></a><a name="index-Slanted-typewriter-font_002c-for-_0040code_007b_0040_0040kbd_007d-405"></a>By default, the <code>@kbd</code> command produces a different font
+(slanted typewriter instead of normal typewriter) in the printed
+manual, so users can distinguish the characters that they are supposed
+to type from those that the computer outputs.
+
+ <p>In Info output, <code>@kbd</code> is usually the same as <code>@code</code>,
+producing `quotes' around its argument. However, in typewriter-like
+contexts such as the <code>@example</code> environment (see <a href="#example">example</a>)
+and <code>@code</code> command itself, the quotes are omitted, since Info
+format cannot use distinguishing fonts.
+
+ <p><a name="index-kbdinputstyle-406"></a>Since the usage of <code>@kbd</code> varies from manual to manual, you can
+control the font switching with the <code>@kbdinputstyle</code> command.
+This command has no effect on Info output. Write this command at the
+beginning of a line with a single word as an argument, one of the
+following:
+
+ <p><a name="index-distinct_0040r_007b_002c-value-for-_0040code_007b_0040_0040kbdinputstyle_007d_007d-407"></a><a name="index-example_0040r_007b_002c-value-for-_0040code_007b_0040_0040kbdinputstyle_007d_007d-408"></a><a name="index-code_0040r_007b_002c-value-for-_0040code_007b_0040_0040kbdinputstyle_007d_007d-409"></a>
+ <dl>
+<dt><span class="samp">code</span><dd>Always use the same font for <code>@kbd</code> as <code>@code</code>.
+<br><dt><span class="samp">example</span><dd>Use the distinguishing font for <code>@kbd</code> only in <code>@example</code>
+and similar environments.
+<br><dt><span class="samp">distinct</span><dd>(the default) Always use the distinguishing font for <code>@kbd</code>.
+</dl>
+
+ <p>You can embed another @-command inside the braces of an <code>@kbd</code>
+command. Here, for example, is the way to describe a command that
+would be described more verbosely as &ldquo;press the <span class="samp">r</span> key and then
+press the &lt;RETURN&gt; key&rdquo;:
+
+<pre class="example"> @kbd{r @key{RET}}
+</pre>
+ <p class="noindent">This produces: <kbd>r &lt;RET&gt;</kbd>. (The present manual accepts the
+default for <code>@kbdinputstyle</code>.)
+
+ <p>You also use the <code>@kbd</code> command if you are spelling out the letters
+you type; for example:
+
+<pre class="example"> To give the @code{logout} command,
+ type the characters @kbd{l o g o u t @key{RET}}.
+</pre>
+ <p class="noindent">This produces:
+
+ <blockquote>
+To give the <code>logout</code> command,
+type the characters <kbd>l o g o u t &lt;RET&gt;</kbd>.
+</blockquote>
+
+ <p>(Also, this example shows that you can add spaces for clarity. If you
+explicitly want to mention a space character as one of the characters of
+input, write <kbd>@key{SPC}</kbd> for it.)
+
+<div class="node">
+<p><hr>
+<a name="key"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#samp">samp</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#kbd">kbd</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h4 class="subsection">9.1.4 <code>@key</code>{<var>key-name</var>}</h4>
+
+<p><a name="index-key-410"></a>
+Use the <code>@key</code> command for the conventional name for a key on a
+keyboard, as in:
+
+<pre class="example"> @key{RET}
+</pre>
+ <p>You can use the <code>@key</code> command within the argument of an
+<code>@kbd</code> command when the sequence of characters to be typed
+includes one or more keys that are described by name.
+
+ <p>For example, to produce <kbd>C-x &lt;ESC&gt;</kbd> you would type:
+
+<pre class="example"> @kbd{C-x @key{ESC}}
+</pre>
+ <p>Here is a list of the recommended names for keys:
+<a name="index-Recommended-names-for-keys-411"></a><a name="index-Keys_002c-recommended-names-412"></a><a name="index-Names-recommended-for-keys-413"></a><a name="index-Abbreviations-for-keys-414"></a>
+<blockquote>
+ <dl>
+<dt><tt>SPC</tt><dd>Space
+<br><dt><tt>RET</tt><dd>Return
+<br><dt><tt>LFD</tt><dd>Linefeed (however, since most keyboards nowadays do not have a Linefeed key,
+it might be better to call this character <kbd>C-j</kbd>.
+<br><dt><tt>TAB</tt><dd>Tab
+<br><dt><tt>BS</tt><dd>Backspace
+<br><dt><tt>ESC</tt><dd>Escape
+<br><dt><tt>DEL</tt><dd>Delete
+<br><dt><tt>SHIFT</tt><dd>Shift
+<br><dt><tt>CTRL</tt><dd>Control
+<br><dt><tt>META</tt><dd>Meta
+</dl>
+ </blockquote>
+
+ <p><a name="index-META-key-415"></a>There are subtleties to handling words like `meta' or `ctrl' that are
+names of modifier keys. When mentioning a character in which the
+modifier key is used, such as <kbd>Meta-a</kbd>, use the <code>@kbd</code> command
+alone; do not use the <code>@key</code> command; but when you are referring
+to the modifier key in isolation, use the <code>@key</code> command. For
+example, write <span class="samp">@kbd{Meta-a}</span> to produce <kbd>Meta-a</kbd> and
+<span class="samp">@key{META}</span> to produce &lt;META&gt;.
+
+<!-- I don't think this is a good explanation. -->
+<!-- I think it will puzzle readers more than it clarifies matters. - rms. -->
+<!-- In other words, use @code{@@kbd} for what you do, and use @code{@@key} -->
+<!-- for what you talk about: ``Press @code{@@kbd@{M-a@}} to move point to -->
+<!-- the beginning of the sentence. The @code{@@key@{META@}} key is often in -->
+<!-- the lower left of the keyboard.''@refill -->
+<div class="node">
+<p><hr>
+<a name="samp"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#verb">verb</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#key">key</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.5 <code>@samp</code>{<var>text</var>}</h4>
+
+<p><a name="index-samp-416"></a>
+Use the <code>@samp</code> command to indicate text that is a literal example
+or `sample' of a sequence of characters in a file, string, pattern, etc.
+Enclose the text in braces. The argument appears within single
+quotation marks in both the Info file and the printed manual; in
+addition, it is printed in a fixed-width font.
+
+<pre class="example"> To match @samp{foo} at the end of the line,
+ use the regexp @samp{foo$}.
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+To match <span class="samp">foo</span> at the end of the line, use the regexp
+<span class="samp">foo$</span>.
+</blockquote>
+
+ <p>Any time you are referring to single characters, you should use
+<code>@samp</code> unless <code>@kbd</code> or <code>@key</code> is more appropriate.
+Also, you may use <code>@samp</code> for entire statements in C and for entire
+shell commands&mdash;in this case, <code>@samp</code> often looks better than
+<code>@code</code>. Basically, <code>@samp</code> is a catchall for whatever is
+not covered by <code>@code</code>, <code>@kbd</code>, or <code>@key</code>.
+
+ <p>Only include punctuation marks within braces if they are part of the
+string you are specifying. Write punctuation marks outside the braces
+if those punctuation marks are part of the English text that surrounds
+the string. In the following sentence, for example, the commas and
+period are outside of the braces:
+
+<pre class="example"> In English, the vowels are @samp{a}, @samp{e},
+ @samp{i}, @samp{o}, @samp{u}, and sometimes
+ @samp{y}.
+</pre>
+ <p class="noindent">This produces:
+
+ <blockquote>
+In English, the vowels are <span class="samp">a</span>, <span class="samp">e</span>,
+<span class="samp">i</span>, <span class="samp">o</span>, <span class="samp">u</span>, and sometimes
+<span class="samp">y</span>.
+</blockquote>
+
+<div class="node">
+<p><hr>
+<a name="verb"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#var">var</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#samp">samp</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.6 <code>@verb</code>{&lt;char&gt;<var>text</var>&lt;char&gt;}</h4>
+
+<p><a name="index-verb-417"></a><a name="index-Verbatim-in_002dline-text-418"></a>
+<a name="index-Delimiter-character_002c-for-verbatim-419"></a>Use the <code>@verb</code> command to print a verbatim sequence of
+characters.
+
+ <p>Like LaTeX's <code>\verb</code> command, the verbatim text can be quoted using
+any unique delimiter character. Enclose the verbatim text, including the
+delimiters, in braces. Text is printed in a fixed-width font:
+
+<pre class="example"> How many @verb{|@|}-escapes does one need to print this
+ @verb{.@a @b @c.} string or @verb{+@'e?`!`{}\+} this?
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> How many <tt>@</tt>-escapes does one need to print this
+ <tt>@a @b @c</tt> string or these <tt>@'e?`{}!`\</tt> this?
+</pre>
+ <p>This is in contrast to <code>@samp</code> (see the previous section),
+<code>@code</code>, and similar commands; in those cases, the argument is
+normal Texinfo text, where the three characters <code>@{}</code> are
+special. With <code>@verb</code>, nothing is special except the delimiter
+character you choose.
+
+ <p>It is not reliable to use <code>@verb</code> inside other Texinfo constructs.
+
+<div class="node">
+<p><hr>
+<a name="var"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#env">env</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#verb">verb</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.7 <code>@var</code>{<var>metasyntactic-variable</var>}</h4>
+
+<p><a name="index-var-420"></a>
+Use the <code>@var</code> command to indicate metasyntactic variables. A
+<dfn>metasyntactic variable</dfn> is something that stands for another piece of
+text. For example, you should use a metasyntactic variable in the
+documentation of a function to describe the arguments that are passed
+to that function.
+
+ <p>Do not use <code>@var</code> for the names of particular variables in
+programming languages. These are specific names from a program, so
+<code>@code</code> is correct for them (see <a href="#code">code</a>). For example, the
+Emacs Lisp variable <code>texinfo-tex-command</code> is not a metasyntactic
+variable; it is properly formatted using <code>@code</code>.
+
+ <p>Do not use <code>@var</code> for environment variables either; <code>@env</code>
+is correct for them (see the next section).
+
+ <p>The effect of <code>@var</code> in the Info file is to change the case of the
+argument to all upper case. In the printed manual and HTML output, the
+argument is printed in slanted type.
+
+ <p>For example,
+
+<pre class="example"> To delete file @var{filename},
+ type @samp{rm @var{filename}}.
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+To delete file <var>filename</var>, type <span class="samp">rm </span><var>filename</var>.
+</blockquote>
+
+<p class="noindent">(Note that <code>@var</code> may appear inside <code>@code</code>,
+<code>@samp</code>, <code>@file</code>, etc.)
+
+ <p>Write a metasyntactic variable all in lower case without spaces, and
+use hyphens to make it more readable. Thus, the Texinfo source for
+the illustration of how to begin a Texinfo manual looks like
+this:
+
+<pre class="example"> \input texinfo
+ @@setfilename @var{info-file-name}
+ @@settitle @var{name-of-manual}
+</pre>
+ <p class="noindent">This produces:
+
+<pre class="example"> \input texinfo
+ @setfilename <var>info-file-name</var>
+ @settitle <var>name-of-manual</var>
+</pre>
+ <p>In some documentation styles, metasyntactic variables are shown with
+angle brackets, for example:
+
+<pre class="example"> ..., type rm &lt;filename&gt;
+</pre>
+ <p class="noindent">However, that is not the style that Texinfo uses. (You can, of
+course, modify the sources to <span class="file">texinfo.tex</span> and the Info formatting commands
+to output the <code>&lt;...&gt;</code> format if you wish.)
+
+<div class="node">
+<p><hr>
+<a name="env"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#file">file</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#var">var</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.8 <code>@env</code>{<var>environment-variable</var>}</h4>
+
+<p><a name="index-env-421"></a>
+Use the <code>@env</code> command to indicate environment variables, as used
+by many operating systems, including GNU. Do not use it for
+metasyntactic variables; use <code>@var</code> instead (see the previous
+section).
+
+ <p><code>@env</code> is equivalent to <code>@code</code> in its effects.
+For example:
+
+<pre class="example"> The @env{PATH} environment variable ...
+</pre>
+ <p class="noindent">produces
+<blockquote>
+The <span class="env">PATH</span> environment variable <small class="dots">...</small>
+</blockquote>
+
+<div class="node">
+<p><hr>
+<a name="file"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#command">command</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#env">env</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.9 <code>@file</code>{<var>file-name</var>}</h4>
+
+<p><a name="index-file-422"></a>
+Use the <code>@file</code> command to indicate text that is the name of a
+file, buffer, or directory, or is the name of a node in Info. You can
+also use the command for file name suffixes. Do not use <code>@file</code>
+for symbols in a programming language; use <code>@code</code>.
+
+ <p>Currently, <code>@file</code> is equivalent to <code>@samp</code> in its effects.
+For example,
+
+<pre class="example"> The @file{.el} files are in
+ the @file{/usr/local/emacs/lisp} directory.
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+The <span class="file">.el</span> files are in
+the <span class="file">/usr/local/emacs/lisp</span> directory.
+</blockquote>
+
+<div class="node">
+<p><hr>
+<a name="command"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#option">option</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#file">file</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.10 <code>@command</code>{<var>command-name</var>}</h4>
+
+<p><a name="index-command-423"></a><a name="index-Command-names_002c-indicating-424"></a><a name="index-Program-names_002c-indicating-425"></a>
+Use the <code>@command</code> command to indicate command names, such as
+<span class="command">ls</span> or <span class="command">cc</span>.
+
+ <p><code>@command</code> is equivalent to <code>@code</code> in its effects.
+For example:
+
+<pre class="example"> The command @command{ls} lists directory contents.
+</pre>
+ <p class="noindent">produces
+<blockquote>
+The command <span class="command">ls</span> lists directory contents.
+</blockquote>
+
+ <p>You should write the name of a program in the ordinary text font, rather
+than using <code>@command</code>, if you regard it as a new English word,
+such as `Emacs' or `Bison'.
+
+ <p>When writing an entire shell command invocation, as in <span class="samp">ls -l</span>,
+you should use either <code>@samp</code> or <code>@code</code> at your discretion.
+
+<div class="node">
+<p><hr>
+<a name="option"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#dfn">dfn</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#command">command</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.11 <code>@option</code>{<var>option-name</var>}</h4>
+
+<p><a name="index-option-426"></a>
+Use the <code>@option</code> command to indicate a command-line option; for
+example, <span class="option">-l</span> or <span class="option">--version</span> or
+<span class="option">--output=</span><var>filename</var>.
+
+ <p><code>@option</code> is equivalent to <code>@samp</code> in its effects.
+For example:
+
+<pre class="example"> The option @option{-l} produces a long listing.
+</pre>
+ <p class="noindent">produces
+<blockquote>
+The option <span class="option">-l</span> produces a long listing.
+</blockquote>
+
+ <p>In tables, putting options inside <code>@code</code> produces a
+more pleasing effect.
+
+<div class="node">
+<p><hr>
+<a name="dfn"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#cite">cite</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#option">option</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h4 class="subsection">9.1.12 <code>@dfn</code>{<var>term</var>}</h4>
+
+<p><a name="index-dfn-427"></a>
+Use the <code>@dfn</code> command to identify the introductory or defining
+use of a technical term. Use the command only in passages whose
+purpose is to introduce a term which will be used again or which the
+reader ought to know. Mere passing mention of a term for the first
+time does not deserve <code>@dfn</code>. The command generates italics in
+the printed manual, and double quotation marks in the Info file. For
+example:
+
+<pre class="example"> Getting rid of a file is called @dfn{deleting} it.
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+Getting rid of a file is called <dfn>deleting</dfn> it.
+</blockquote>
+
+ <p>As a general rule, a sentence containing the defining occurrence of a
+term should be a definition of the term. The sentence does not need
+to say explicitly that it is a definition, but it should contain the
+information of a definition&mdash;it should make the meaning clear.
+
+<div class="node">
+<p><hr>
+<a name="cite"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#acronym">acronym</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#dfn">dfn</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.13 <code>@cite</code>{<var>reference</var>}</h4>
+
+<p><a name="index-cite-428"></a>
+Use the <code>@cite</code> command for the name of a book that lacks a
+companion Info file. The command produces italics in the printed
+manual, and quotation marks in the Info file.
+
+ <p>If a book is written in Texinfo, it is better to use a cross reference
+command since a reader can easily follow such a reference in Info.
+See <a href="#xref"><code>@xref</code></a>.
+
+<div class="node">
+<p><hr>
+<a name="acronym"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#indicateurl">indicateurl</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#cite">cite</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.14 <code>@acronym</code>{<var>acronym</var>[, <var>meaning</var>]}</h4>
+
+<p><a name="index-acronym-429"></a>
+<a name="index-NASA_002c-as-acronym-430"></a><a name="index-F_002eB_002eI_002e_002c-as-acronym-431"></a><a name="index-Abbreviations_002c-tagging-432"></a><a name="index-Acronyms_002c-tagging-433"></a>Use the <code>@acronym</code> command for abbreviations written in all
+capital letters, such as `<acronym>NASA</acronym>'. The abbreviation is given as
+the single argument in braces, as in <span class="samp">@acronym{NASA}</span>. As
+a matter of style, or for particular abbreviations, you may prefer to
+use periods, as in <span class="samp">@acronym{F.B.I.}</span>.
+
+ <p>If the acronym is at the end of a sentence, remember to use the
+special <code>@.</code> and similar commands (see <a href="#Ending-a-Sentence">Ending a Sentence</a>).
+
+ <p><a name="index-_003cacronym_003e-tag-434"></a>In TeX, the acronym is printed in slightly smaller font. In the
+Info output, the argument is printed as-is. In HTML, Docbook, and
+XML, the <code>&lt;acronym&gt;</code> tag is used.
+
+ <p><code>@acronym</code> accepts an optional second argument, intended to be
+used for the meaning of the acronym. If present, it is printed in
+parentheses after the acronym. For instance (since GNU is a recursive
+acronym, we use <code>@acronym</code> recursively):
+
+<pre class="example"> @acronym{GNU, @acronym{GNU}'s Not Unix}
+</pre>
+ <p class="noindent">produces:
+
+<pre class="display"> <acronym title="GNU's Not Unix">GNU</acronym> (@acronym{GNU}'s Not Unix)
+</pre>
+ <p>In some circumstances, it is conventional to print family names in all
+capitals. Don't use <code>@acronym</code> for this, since a name is not an
+acronym. Use <code>@sc</code> instead (see <a href="#Smallcaps">Smallcaps</a>).
+
+<div class="node">
+<p><hr>
+<a name="indicateurl"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#email">email</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#acronym">acronym</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.15 <code>@indicateurl</code>{<var>uniform-resource-locator</var>}</h4>
+
+<p><a name="index-indicateurl-435"></a><a name="index-Uniform-resource-locator_002c-indicating-436"></a><a name="index-URL_002c-indicating-437"></a>
+Use the <code>@indicateurl</code> command to indicate a uniform resource
+locator on the World Wide Web. This is analogous to <code>@file</code>,
+<code>@var</code>, etc., and is purely for markup purposes. It does not
+produce a link you can follow in HTML output (use the <code>@uref</code>
+command for that, see <a href="#uref"><code>@uref</code></a>). It is useful for
+url's which do not actually exist. For example:
+
+<pre class="example"> For example, the url might be @indicateurl{http://example.org/path}.
+</pre>
+ <p class="noindent">which produces:
+
+<pre class="display"> For example, the url might be &lt;<code>http://example.org/path</code>&gt;.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="email"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#indicateurl">indicateurl</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indicating">Indicating</a>
+<br>
+</div>
+
+<h4 class="subsection">9.1.16 <code>@email</code>{<var>email-address</var>[, <var>displayed-text</var>]}</h4>
+
+<p><a name="index-email-438"></a>
+Use the <code>@email</code> command to indicate an electronic mail address.
+It takes one mandatory argument, the address, and one optional argument, the
+text to display (the default is the address itself).
+
+ <p><a name="index-Mailto-link-439"></a>In Info, the address is shown in angle brackets, preceded by the text
+to display if any. In TeX, the angle brackets are omitted. In
+HTML output, <code>@email</code> produces a <span class="samp">mailto</span> link that usually
+brings up a mail composition window. For example:
+
+<pre class="example"> Send bug reports to @email{bug-texinfo@@gnu.org},
+ suggestions to the @email{bug-texinfo@@gnu.org, same place}.
+</pre>
+ <p class="noindent">produces
+<pre class="display"> Send bug reports to <a href="mailto:bug-texinfo@gnu.org">bug-texinfo@gnu.org</a>,
+ suggestions to the <a href="mailto:bug-texinfo@gnu.org">same place</a>.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Emphasis"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Indicating">Indicating</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Marking-Text">Marking Text</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">9.2 Emphasizing Text</h3>
+
+<p><a name="index-Emphasizing-text-440"></a>
+Usually, Texinfo changes the font to mark words in the text according to
+what category the words belong to; an example is the <code>@code</code> command.
+Most often, this is the best way to mark words.
+However, sometimes you will want to emphasize text without indicating a
+category. Texinfo has two commands to do this. Also, Texinfo has
+several commands that specify the font in which TeX will typeset
+text. These commands have no effect on Info and only one of them,
+the <code>@r</code> command, has any regular use.
+
+<ul class="menu">
+<li><a accesskey="1" href="#emph-_0026-strong">emph &amp; strong</a>: How to emphasize text in Texinfo.
+<li><a accesskey="2" href="#Smallcaps">Smallcaps</a>: How to use the small caps font.
+<li><a accesskey="3" href="#Fonts">Fonts</a>: Various font commands for printed output.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="emph-_0026-strong"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Smallcaps">Smallcaps</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Emphasis">Emphasis</a>
+<br>
+</div>
+
+<h4 class="subsection">9.2.1 <code>@emph</code>{<var>text</var>} and <code>@strong</code>{<var>text</var>}</h4>
+
+<p><a name="index-Emphasizing-text_002c-font-for-441"></a><a name="index-emph-442"></a><a name="index-strong-443"></a>
+The <code>@emph</code> and <code>@strong</code> commands are for emphasis;
+<code>@strong</code> is stronger. In printed output, <code>@emph</code> produces
+<em>italics</em> and <code>@strong</code> produces <strong>bold</strong>.
+
+ <p>For example,
+
+<pre class="example"> @strong{Caution:} @samp{rm * .[^.]*}
+ removes @emph{all} files in the directory.
+</pre>
+ <p class="noindent">produces the following in printed output and HTML:
+
+ <blockquote>
+<strong>Caution</strong>: <span class="samp">rm * .[^.]*</span>
+removes <em>all</em> files in the directory.
+</blockquote>
+
+<p class="noindent">and the following in Info:
+
+<pre class="example"> *Caution:* `rm * .[^.]*' removes _all_
+ files in the directory.
+</pre>
+ <p>The <code>@strong</code> command is seldom used except to mark what is, in
+effect, a typographical element, such as the word `Caution' in the
+preceding example.
+
+ <p>In the Info output, <code>@emph</code> surrounds the text with underscores
+(<span class="samp">_</span>), and <code>@strong</code> puts asterisks around the text.
+
+ <blockquote>
+<b>Caution:</b> Do not use <code>@strong</code> with the word <span class="samp">Note</span>; Info will
+mistake the combination for a cross reference. (It's usually
+redundant, anyway.) Use a phrase such as <strong>Please notice</strong> or
+<strong>Caution</strong> instead, or the optional argument to
+<code>@quotation</code>&mdash;<span class="samp">Note</span> is allowable there.
+</blockquote>
+
+<div class="node">
+<p><hr>
+<a name="Smallcaps"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Fonts">Fonts</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#emph-_0026-strong">emph &amp; strong</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Emphasis">Emphasis</a>
+<br>
+</div>
+
+<h4 class="subsection">9.2.2 <code>@sc</code>{<var>text</var>}: The Small Caps Font</h4>
+
+<p><a name="index-Small-caps-font-444"></a><a name="index-sc-_0040r_007b_0028small-caps-font_0029_007d-445"></a>
+Use the <span class="samp">@sc</span> command to set text in <span class="sc">a small caps font</span>
+(where possible). Write the text you want to be in small caps between
+braces in lower case, like this:
+
+<pre class="example"> Richard @sc{Stallman} founded @acronym{GNU}.
+</pre>
+ <p class="noindent">This produces:
+
+<pre class="display"> Richard <span class="sc">Stallman</span> founded <acronym title="GNU's Not Unix">GNU</acronym>.
+</pre>
+ <p>As shown here, we recommend using <code>@acronym</code> for actual
+abbreviations (see <a href="#acronym">acronym</a>), and reserving <code>@sc</code> for special
+cases where you want small caps. The output is not the same
+(<code>@acronym</code> prints in a smaller text font, not the small caps
+font), but more importantly it describes the actual text more
+accurately.
+
+ <p>Family names are one case where small capitals are sometimes desirable,
+also as shown here.
+
+ <p><a name="index-_003csmall_003e-tag-446"></a>TeX typesets any uppercase letters between the braces of an
+<code>@sc</code> command in full-size capitals; only lowercase letters are
+printed in the small caps font. In the Info output, the argument to
+<code>@sc</code> is printed in all upper case. In HTML, the argument is
+uppercased and the output marked with the <code>&lt;small&gt;</code> tag to reduce
+the font size.
+
+ <p>Since it's redundant to mark all-uppercase text with <code>@sc</code>,
+<span class="command">makeinfo</span> warns about such usage.
+
+ <p>We recommend using regular mixed case wherever possible.
+
+<div class="node">
+<p><hr>
+<a name="Fonts"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Smallcaps">Smallcaps</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Emphasis">Emphasis</a>
+<br>
+</div>
+
+<h4 class="subsection">9.2.3 Fonts for Printing, Not Info</h4>
+
+<p><a name="index-Fonts-for-printing_002c-not-Info-447"></a><a name="index-i-_0040r_007b_0028italic-font_0029_007d-448"></a><a name="index-b-_0040r_007b_0028bold-font_0029_007d-449"></a><a name="index-t-_0040r_007b_0028typewriter-font_0029_007d-450"></a><a name="index-r-_0040r_007b_0028roman-font_0029_007d-451"></a>
+Texinfo provides four font commands that specify font changes in the
+printed manual and (where possible) in the HTML output, but have no
+effect in the Info file. All four commands apply to an argument that
+follows, surrounded by braces.
+
+ <dl>
+<dt><code>@i</code><dd><a name="index-Italic-font-452"></a>selects an <i>italic</i> font;
+
+ <br><dt><code>@b</code><dd><a name="index-Bold-font-453"></a>selects <b>bold</b> face;
+
+ <br><dt><code>@t</code><dd><a name="index-Monospace-font-454"></a><a name="index-Fixed_002dwidth-font-455"></a><a name="index-Typewriter-font-456"></a>selects the <tt>fixed-width</tt>, typewriter-style font used by <code>@code</code>;
+
+ <br><dt><code>@r</code><dd><a name="index-Roman-font-457"></a>selects a <span class="roman">roman</span> font, which is the usual font in which text is printed.
+
+ </dl>
+
+ <p><a name="index-_003clineannotation_003e-Docbook-tag-458"></a>Only the <code>@r</code> command has much use: in example-like
+environments, you can use the <code>@r</code> command to write comments in
+the standard roman font instead of the fixed-width font. This looks
+better in printed output, and produces a <code>&lt;lineannotation&gt;</code> tag
+in Docbook output.
+
+ <p>For example,
+
+<pre class="example"> @lisp
+ (+ 2 2) ; @r{Add two plus two.}
+ @end lisp
+</pre>
+ <p class="noindent">produces
+
+<pre class="lisp"> (+ 2 2) ; <span class="roman">Add two plus two.</span>
+</pre>
+ <p>In general, you should avoid using the other three font commands. If
+you need to use one, it probably indicates a gap in the Texinfo
+language.
+
+<div class="node">
+<p><hr>
+<a name="Quotations-and-Examples"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Lists-and-Tables">Lists and Tables</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Marking-Text">Marking Text</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">10 Quotations and Examples</h2>
+
+<p>Quotations and examples are blocks of text consisting of one or more
+whole paragraphs that are set off from the bulk of the text and
+treated differently. They are usually indented.
+
+ <p>In Texinfo, you always begin a quotation or example by writing an
+@-command at the beginning of a line by itself, and end it by writing
+an <code>@end</code> command that is also at the beginning of a line by
+itself. For instance, you begin an example by writing <code>@example</code>
+by itself at the beginning of a line and end the example by writing
+<code>@end example</code> on a line by itself, at the beginning of that
+line.
+<a name="index-end-459"></a>
+
+<ul class="menu">
+<li><a accesskey="1" href="#Block-Enclosing-Commands">Block Enclosing Commands</a>: Different constructs for different purposes.
+<li><a accesskey="2" href="#quotation">quotation</a>: Writing a quotation.
+<li><a accesskey="3" href="#example">example</a>: Writing an example in a fixed-width font.
+<li><a accesskey="4" href="#verbatim">verbatim</a>: Writing a verbatim example.
+<li><a accesskey="5" href="#verbatiminclude">verbatiminclude</a>: Including a file verbatim.
+<li><a accesskey="6" href="#lisp">lisp</a>: Illustrating Lisp code.
+<li><a accesskey="7" href="#small">small</a>: Examples in a smaller font.
+<li><a accesskey="8" href="#display">display</a>: Writing an example in the current font.
+<li><a accesskey="9" href="#format">format</a>: Writing an example without narrowed margins.
+<li><a href="#exdent">exdent</a>: Undo indentation on a line.
+<li><a href="#flushleft-_0026-flushright">flushleft &amp; flushright</a>: Pushing text flush left or flush right.
+<li><a href="#noindent">noindent</a>: Preventing paragraph indentation.
+<li><a href="#indent">indent</a>: Forcing paragraph indentation.
+<li><a href="#cartouche">cartouche</a>: Drawing rounded rectangles around examples.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Block-Enclosing-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#quotation">quotation</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.1 Block Enclosing Commands</h3>
+
+<p>Here are commands for quotations and examples, explained further in the
+following sections:
+
+ <dl>
+<dt><code>@quotation</code><dd>Indicate text that is quoted. The text is filled, indented (from both
+margins), and printed in a roman font by default.
+
+ <br><dt><code>@example</code><dd>Illustrate code, commands, and the like. The text is printed
+in a fixed-width font, and indented but not filled.
+
+ <br><dt><code>@verbatim</code><dd>Mark a piece of text that is to be printed verbatim; no character
+substitutions are made and all commands are ignored, until the next
+<code>@end verbatim</code>. The text is printed in a fixed-width font,
+and not indented or filled. Extra spaces and blank lines are
+significant, and tabs are expanded.
+
+ <br><dt><code>@smallexample</code><dd>Same as <code>@example</code>, except that in TeX this command typesets
+text in a smaller font.
+
+ <br><dt><code>@lisp</code><dd>Like <code>@example</code>, but specifically for illustrating Lisp code. The
+text is printed in a fixed-width font, and indented but not filled.
+
+ <br><dt><code>@smalllisp</code><dd>Is to <code>@lisp</code> as <code>@smallexample</code> is to <code>@example</code>.
+
+ <br><dt><code>@display</code><dd>Display illustrative text. The text is indented but not filled, and
+no font is selected (so, by default, the font is roman).
+
+ <br><dt><code>@smalldisplay</code><dd>Is to <code>@display</code> as <code>@smallexample</code> is to <code>@example</code>.
+
+ <br><dt><code>@format</code><dd>Like <code>@display</code> (the text is not filled and no font is selected),
+but the text is not indented.
+
+ <br><dt><code>@smallformat</code><dd>Is to <code>@format</code> as <code>@smallexample</code> is to <code>@example</code>.
+</dl>
+
+ <p>The <code>@exdent</code> command is used within the above constructs to
+undo the indentation of a line.
+
+ <p>The <code>@flushleft</code> and <code>@flushright</code> commands are used to line
+up the left or right margins of unfilled text.
+
+ <p>The <code>@noindent</code> command may be used after one of the above
+constructs to prevent the following text from being indented as a new
+paragraph.
+
+ <p>You can use the <code>@cartouche</code> environment around one of the above
+constructs to highlight the example or quotation by drawing a box with
+rounded corners around it. See <a href="#cartouche">Drawing Cartouches Around Examples</a>.
+
+<div class="node">
+<p><hr>
+<a name="quotation"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#example">example</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Block-Enclosing-Commands">Block Enclosing Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.2 <code>@quotation</code>: Block quotations</h3>
+
+<p><a name="index-Quotations-460"></a><a name="index-quotation-461"></a>
+The text of a quotation is processed normally (regular font, text is
+filled) except that:
+
+ <ul>
+<li>the margins are closer to the center of the page, so the whole of the
+quotation is indented;
+
+ <li>the first lines of paragraphs are indented no more than other lines;
+
+ <li>in the printed output, interparagraph spacing is reduced.
+</ul>
+
+ <blockquote>
+This is an example of text written between an <code>@quotation</code>
+command and an <code>@end quotation</code> command. An <code>@quotation</code>
+command is most often used to indicate text that is excerpted from
+another (real or hypothetical) printed work.
+</blockquote>
+
+ <p>Write an <code>@quotation</code> command as text on a line by itself. This
+line will disappear from the output. Mark the end of the quotation
+with a line beginning with and containing only <code>@end quotation</code>.
+The <code>@end quotation</code> line will likewise disappear from the
+output.
+
+ <p><code>@quotation</code> takes one optional argument, given on the remainder
+of the line. This text, if present, is included at the beginning of
+the quotation in bold or otherwise emphasized, and followed with a
+<span class="samp">:</span>. For example:
+
+<pre class="example"> @quotation Note
+ This is
+ a foo.
+ @end quotation
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+<b>Note:</b> This is
+a foo.
+</blockquote>
+
+ <p>If the <code>@quotation</code> argument is exactly one of these words:
+
+<pre class="example"> Caution Important Note Tip Warning
+</pre>
+ <p><a name="index-_003cnote_003e-Docbook-tag-462"></a><a name="index-_003cblockquote_003e-HTML-tag-463"></a>then the Docbook output uses corresponding special tags
+(<code>&lt;note&gt;</code>, etc.) instead of the default <code>&lt;blockquote&gt;</code>.
+HTML output always uses <code>&lt;blockquote&gt;</code>.
+
+<div class="node">
+<p><hr>
+<a name="example"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#verbatim">verbatim</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#quotation">quotation</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.3 <code>@example</code>: Example Text</h3>
+
+<p><a name="index-Examples_002c-formatting-them-464"></a><a name="index-Formatting-examples-465"></a><a name="index-example-466"></a>
+The <code>@example</code> environment is used to indicate an example that
+is not part of the running text, such as computer input or output.
+Write an <code>@example</code> command at the beginning of a line by
+itself. Mark the end of the example with an <code>@end example</code>
+command, also written at the beginning of a line by itself.
+
+ <p>An <code>@example</code> environment has the following characteristics:
+
+ <ul>
+<li>Each line in the input file is a line in the output; that is,
+the source text is not filled as it normally is.
+<li>Extra spaces and blank lines are significant.
+<li>The output is indented.
+<li>The output uses a fixed-width font.
+<li>Texinfo commands <em>are</em> expanded; if you want the output to
+be the input verbatim, use the <code>@verbatim</code> environment instead
+(see <a href="#verbatim"><code>@verbatim</code></a>).
+</ul>
+
+ <p>For example,
+
+<pre class="example"> @example
+ cp foo @var{dest1}; \
+ cp foo @var{dest2}
+ @end example
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> cp foo <var>dest1</var>; \
+ cp foo <var>dest2</var>
+</pre>
+ <p>The lines containing <code>@example</code> and <code>@end example</code> will
+disappear from the output. To make the output look good, you should
+put a blank line before the <code>@example</code> and another blank line
+after the <code>@end example</code>. Blank lines inside the beginning
+<code>@example</code> and the ending <code>@end example</code>, on the other
+hand, do appear in the output.
+
+ <blockquote>
+<b>Caution:</b> Do not use tabs in the lines of an example! (Or anywhere else in
+Texinfo, except in verbatim environments.) TeX treats tabs as
+single spaces, and that is not what they look like. In Emacs, you can
+use <kbd>M-x untabify</kbd> to convert tabs in a region to multiple spaces.
+</blockquote>
+
+ <p>Examples are often, logically speaking, &ldquo;in the middle&rdquo; of a
+paragraph, and the text that continues afterwards should not be
+indented, as in the example above. The <code>@noindent</code> command
+prevents a piece of text from being indented as if it were a new
+paragraph (see <a href="#noindent"><code>@noindent</code></a>.
+
+ <p>If you want to embed code fragments within sentences, instead of
+displaying them, use the <code>@code</code> command or its relatives
+(see <a href="#code"><code>@code</code></a>).
+
+ <p>If you wish to write a &ldquo;comment&rdquo; on a line of an example in the
+normal roman font, you can use the <code>@r</code> command (see <a href="#Fonts">Fonts</a>).
+
+<div class="node">
+<p><hr>
+<a name="verbatim"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#verbatiminclude">verbatiminclude</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#example">example</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.4 <code>@verbatim</code>: Literal Text</h3>
+
+<p><a name="index-verbatim-467"></a><a name="index-Verbatim-environment-468"></a>
+Use the <code>@verbatim</code> environment for printing of text that may
+contain special characters or commands that should not be interpreted,
+such as computer input or output (<code>@example</code> interprets its text
+as regular Texinfo commands). This is especially useful for including
+automatically generated output in a Texinfo manual. Here is an example;
+the output you see is just the same as the input, with a line
+<code>@verbatim</code> before and a line <code>@end verbatim</code> after.
+
+<pre class="verbatim">
+This is an example of text written in a @verbatim
+block. No character substitutions are made. All commands
+are ignored, until `&lt;at>end verbatim'.
+
+In the printed manual, the text is typeset in a
+fixed-width font, and not indented or filled. All
+spaces and blank lines are significant, including tabs.
+</pre>
+
+ <p>Write a <code>@verbatim</code> command at the beginning of a line by itself.
+This line will disappear from the output. Mark the end of the verbatim
+block with a <code>@end verbatim</code> command, also written at the
+beginning of a line by itself. The <code>@end verbatim</code> will also
+disappear from the output.
+
+ <p>For example:
+<!-- oops, got to trick this a bit: can't use @end verbatim inside @verbatim -->
+
+<pre class="example"><br><tt>@verbatim</tt><br>
+<br><tt>{</tt><br>
+<br>&lt;TAB&gt;<tt>@command with strange characters: @'e</tt><br>
+<br><tt>expand&lt;TAB&gt;me</tt><br>
+<br><tt>}</tt><br>
+<br><tt>@end verbatim</tt><br>
+</pre>
+ <p class="noindent">produces
+
+<pre class="verbatim">
+{
+ @command with strange characters: @'e
+expand me
+}
+</pre>
+
+ <p>Since the lines containing <code>@verbatim</code> and <code>@end verbatim</code>
+produce no output, typically you should put a blank line before the
+<code>@verbatim</code> and another blank line after the <code>@end
+verbatim</code>. Blank lines between the beginning <code>@verbatim</code> and
+the ending <code>@end verbatim</code> will appear in the output.
+
+ <p>It is not reliable to use <code>@verbatim</code> inside other Texinfo constructs.
+
+<div class="node">
+<p><hr>
+<a name="verbatiminclude"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#lisp">lisp</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#verbatim">verbatim</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.5 <code>@verbatiminclude</code> <var>file</var>: Include a File Verbatim</h3>
+
+<p><a name="index-Verbatim_002c-include-file-469"></a><a name="index-Including-a-file-verbatim-470"></a><a name="index-verbatiminclude-471"></a>
+You can include the exact contents of a file in the document with the
+<code>@verbatiminclude</code> command:
+
+<pre class="example"> @verbatiminclude <var>filename</var>
+</pre>
+ <p>The contents of <var>filename</var> is printed in a verbatim environment
+(see <a href="#verbatim"><code>@verbatim</code></a>). Generally, the file is printed
+exactly as it is, with all special characters and white space
+retained. No indentation is added; if you want indentation, enclose
+the <code>@verbatiminclude</code> within <code>@example</code>
+(see <a href="#example"><code>@example</code></a>).
+
+ <p>The name of the file is taken literally, with a single exception:
+<code>@value{</code><var>var</var><code>}</code> references are expanded. This makes it
+possible to reliably include files in other directories in a
+distribution, for instance:
+
+<pre class="example"> @include @value{top_srcdir}/NEWS
+</pre>
+ <p class="noindent">(You still have to get <code>top_srcdir</code> defined in the
+first place.)
+
+<div class="node">
+<p><hr>
+<a name="lisp"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#small">small</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#verbatiminclude">verbatiminclude</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.6 <code>@lisp</code>: Marking a Lisp Example</h3>
+
+<p><a name="index-lisp-472"></a><a name="index-Lisp-example-473"></a>
+The <code>@lisp</code> command is used for Lisp code. It is synonymous
+with the <code>@example</code> command.
+
+<pre class="lisp"> This is an example of text written between an
+ <code>@lisp</code> command and an <code>@end lisp</code> command.
+</pre>
+ <p>Use <code>@lisp</code> instead of <code>@example</code> to preserve information
+regarding the nature of the example. This is useful, for example, if
+you write a function that evaluates only and all the Lisp code in a
+Texinfo file. Then you can use the Texinfo file as a Lisp
+library.<a rel="footnote" href="#fn-6" name="fnd-6"><sup>6</sup></a>
+
+ <p>Mark the end of <code>@lisp</code> with <code>@end lisp</code> on a line by
+itself.
+
+<div class="node">
+<p><hr>
+<a name="small"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#display">display</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#lisp">lisp</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.7 <code>@small...</code> Block Commands</h3>
+
+<p><a name="index-Small-examples-474"></a><a name="index-Examples-in-smaller-fonts-475"></a><a name="index-Lisp-examples-in-smaller-fonts-476"></a><a name="index-smalldisplay-477"></a><a name="index-smallexample-478"></a><a name="index-smallformat-479"></a><a name="index-smalllisp-480"></a>
+In addition to the regular <code>@example</code> and <code>@lisp</code> commands,
+Texinfo has &ldquo;small&rdquo; example-style commands. These are
+<code>@smalldisplay</code>, <code>@smallexample</code>, <code>@smallformat</code>, and
+<code>@smalllisp</code>.
+
+ <p>In Info, the <code>@small...</code> commands are equivalent to their
+non-small companion commands.
+
+ <p>In TeX, however, the <code>@small...</code> commands typeset text in
+a smaller font than the non-small example commands. Consequently,
+many examples containing long lines fit on a page without needing to
+be shortened.
+
+ <p>Mark the end of an <code>@small...</code> block with a corresponding
+<code>@end small...</code>. For example, pair <code>@smallexample</code> with
+<code>@end smallexample</code>.
+
+ <p>Here is an example of the font used by the <code>@small...</code>
+commands (in Info, the output will be the same as usual):
+
+<pre class="smallexample"> ... 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.
+</pre>
+ <p>The <code>@small...</code> commands make it easier to prepare manuals
+without forcing you to edit examples by hand to fit them onto narrower
+pages.
+
+ <p>As a general rule, a printed document looks much better if you use
+only one of (for instance) <code>@example</code> or <code>@smallexample</code>
+consistently within a chapter.
+
+<div class="node">
+<p><hr>
+<a name="display"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#format">format</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#small">small</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.8 <code>@display</code> and <code>@smalldisplay</code></h3>
+
+<p><a name="index-Display-formatting-481"></a><a name="index-display-482"></a>
+The <code>@display</code> command begins a kind of example. It is like the
+<code>@example</code> command
+except that, in
+a printed manual, <code>@display</code> does not select the fixed-width
+font. In fact, it does not specify the font at all, so that the text
+appears in the same font it would have appeared in without the
+<code>@display</code> command.
+
+<pre class="display"> This is an example of text written between an <code>@display</code> command
+ and an <code>@end display</code> command. The <code>@display</code> command
+ indents the text, but does not fill it.
+</pre>
+ <p><a name="index-smalldisplay-483"></a>Texinfo also provides a command <code>@smalldisplay</code>, which is like
+<code>@display</code> but uses a smaller font in <code>@smallbook</code> format.
+See <a href="#small">small</a>.
+
+<div class="node">
+<p><hr>
+<a name="format"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#exdent">exdent</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#display">display</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.9 <code>@format</code> and <code>@smallformat</code></h3>
+
+<p><a name="index-format-484"></a>
+The <code>@format</code> command is similar to <code>@example</code> except
+that, in the printed manual, <code>@format</code> does not select the
+fixed-width font and does not narrow the margins.
+
+<pre class="format">This is an example of text written between an <code>@format</code> command
+and an <code>@end format</code> command. As you can see
+from this example,
+the <code>@format</code> command does not fill the text.
+</pre>
+ <p><a name="index-smallformat-485"></a>Texinfo also provides a command <code>@smallformat</code>, which is like
+<code>@format</code> but uses a smaller font in <code>@smallbook</code> format.
+See <a href="#small">small</a>.
+
+<div class="node">
+<p><hr>
+<a name="exdent"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#flushleft-_0026-flushright">flushleft &amp; flushright</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#format">format</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.10 <code>@exdent</code>: Undoing a Line's Indentation</h3>
+
+<p><a name="index-Indentation-undoing-486"></a><a name="index-exdent-487"></a>
+The <code>@exdent</code> command removes any indentation a line might have.
+The command is written at the beginning of a line and applies only to
+the text that follows the command that is on the same line. Do not use
+braces around the text. In a printed manual, the text on an
+<code>@exdent</code> line is printed in the roman font.
+
+ <p><code>@exdent</code> is usually used within examples. Thus,
+
+<pre class="example"> @example
+ This line follows an @@example command.
+ @exdent This line is exdented.
+ This line follows the exdented line.
+ The @@end example comes on the next line.
+ @end group
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> This line follows an @example command.
+<br>This line is exdented.<br>
+ This line follows the exdented line.
+ The @end example comes on the next line.
+</pre>
+ <p>In practice, the <code>@exdent</code> command is rarely used.
+Usually, you un-indent text by ending the example and
+returning the page to its normal width.
+
+<div class="node">
+<p><hr>
+<a name="flushleft-_0026-flushright"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#noindent">noindent</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#exdent">exdent</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.11 <code>@flushleft</code> and <code>@flushright</code></h3>
+
+<p><a name="index-flushleft-488"></a><a name="index-flushright-489"></a><a name="index-Ragged-right-490"></a><a name="index-Ragged-left-491"></a>
+The <code>@flushleft</code> and <code>@flushright</code> commands line up the
+ends of lines on the left and right margins of a page,
+but do not fill the text. The commands are written on lines of their
+own, without braces. The <code>@flushleft</code> and <code>@flushright</code>
+commands are ended by <code>@end flushleft</code> and <code>@end
+flushright</code> commands on lines of their own.
+
+ <p>For example,
+
+<pre class="example"> @flushleft
+ This text is
+ written flushleft.
+ @end flushleft
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+ <div align="left">This text is
+ written flushleft.
+ </div>
+ </blockquote>
+
+ <p><code>@flushright</code> produces the type of indentation often used in the
+return address of letters. For example,
+
+<pre class="example"> @flushright
+ Here is an example of text written
+ flushright. The @code{@flushright} command
+ right justifies every line but leaves the
+ left end ragged.
+ @end flushright
+</pre>
+ <p class="noindent">produces
+
+ <div align="right">Here is an example of text written
+ <p>flushright. The <code>@flushright</code> command
+ <p>right justifies every line but leaves the
+ <p>left end ragged.
+ </div>
+
+<div class="node">
+<p><hr>
+<a name="noindent"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#indent">indent</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#flushleft-_0026-flushright">flushleft &amp; flushright</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.12 <code>@noindent</code>: Omitting Indentation</h3>
+
+<p><a name="index-Omitting-indentation-492"></a><a name="index-Suppressing-indentation-493"></a><a name="index-Indentation_002c-omitting-494"></a><a name="index-noindent-495"></a>
+An example or other inclusion can break a paragraph into segments.
+Ordinarily, the formatters indent text that follows an example as a new
+paragraph. You can prevent this on a case-by-case basis by writing
+<code>@noindent</code> at the beginning of a line, preceding the continuation
+text. You can also disable indentation for all paragraphs globally with
+<code>@paragraphindent</code> (see <a href="#paragraphindent">Paragraph Indenting</a>).
+
+ <p>It is best to write <code>@noindent</code> on a line by itself, since in most
+environments, spaces following the command will not be ignored. It's ok
+to use it at the beginning of a line, with text following, outside of
+any environment.
+
+ <p>For example:
+
+<pre class="example"> @example
+ This is an example
+ @end example
+
+ @noindent
+ This line is not indented. As you can see, the
+ beginning of the line is fully flush left with the line
+ that follows after it. (This whole example is between
+ @code{@@display} and @code{@@end display}.)
+</pre>
+ <p class="noindent">produces:
+
+<pre class="display">
+ <pre class="example"> This is an example
+ </pre>
+
+ <p class="noindent">This line is not indented. As you can see, the
+ beginning of the line is fully flush left with the line
+ that follows after it. (This whole example is between
+ <code>@display</code> and <code>@end display</code>.)
+
+</pre>
+ <p>To adjust the number of blank lines properly in the Info file output,
+remember that the line containing <code>@noindent</code> does not generate a
+blank line, and neither does the <code>@end example</code> line.
+
+ <p>In the Texinfo source file for this manual, each line that says
+`produces' is preceded by <code>@noindent</code>.
+
+ <p>Do not put braces after an <code>@noindent</code> command; they are not
+necessary, since <code>@noindent</code> is a command used outside of
+paragraphs (see <a href="#Command-Syntax">Command Syntax</a>).
+
+<div class="node">
+<p><hr>
+<a name="indent"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#cartouche">cartouche</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#noindent">noindent</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.13 <code>@indent</code>: Forcing Indentation</h3>
+
+<p><a name="index-Forcing-indentation-496"></a><a name="index-Inserting-indentation-497"></a><a name="index-Indentation_002c-forcing-498"></a><a name="index-indent-499"></a>
+
+ To complement the <code>@noindent</code> command (see the previous
+section), Texinfo provides the <code>@indent</code> command that forces a
+paragraph to be indented. This paragraph, for instance, is indented
+using an <code>@indent</code> command. The first paragraph of a section is
+the most likely place to use <code>@indent</code>, to override the normal
+behavior of no indentation there (see <a href="#paragraphindent">paragraphindent</a>).
+
+ <p>It is best to write <code>@indent</code> on a line by itself, since in most
+environments, spaces following the command will not be ignored. The
+<code>@indent</code> line will not generate a blank line in the Info output
+within an environment.
+
+ <p>However, it is ok to use it at the beginning of a line, with text
+following, outside of any environment.
+
+ <p>Do not put braces after an <code>@indent</code> command; they are not
+necessary, since <code>@indent</code> is a command used outside of
+paragraphs (see <a href="#Command-Syntax">Command Syntax</a>).
+
+<div class="node">
+<p><hr>
+<a name="cartouche"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#indent">indent</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Quotations-and-Examples">Quotations and Examples</a>
+<br>
+</div>
+
+<h3 class="section">10.14 <code>@cartouche</code>: Rounded Rectangles Around Examples</h3>
+
+<p><a name="index-cartouche-500"></a><a name="index-Box-with-rounded-corners-501"></a><a name="index-Rounded-rectangles_002c-around-examples-502"></a>
+In a printed manual, the <code>@cartouche</code> command draws a box with
+rounded corners around its contents. In HTML, a normal rectangle is
+drawn (that's the best HTML can do). <code>@cartouche</code> has no effect
+in Info output.
+
+ <p>You can use this command to further highlight an example or quotation.
+For instance, you could write a manual in which one type of example is
+surrounded by a cartouche for emphasis.
+
+ <p>For example,
+
+<pre class="example"> @cartouche
+ @example
+ % pwd
+ /usr/local/share/emacs
+ @end example
+ @end cartouche
+</pre>
+ <p class="noindent">surrounds the two-line example with a box with rounded corners, in the
+printed manual.
+
+ <p>The output from the example looks like this (if you're reading this in
+Info, you'll see the <code>@cartouche</code> had no effect):
+
+ <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
+<pre class="example"> % pwd
+ /usr/local/info
+</pre>
+ </td></tr></table>
+
+ <p>For proper output in HTML, it's necessary to put the
+<code>@cartouche</code> around the <code>@example</code>, and not the other way
+around. This limitation of <span class="command">makeinfo</span> may be removed one day.
+
+ <p><code>@cartouche</code> also implies <code>@group</code> (see <a href="#group">group</a>).
+
+<div class="node">
+<p><hr>
+<a name="Lists-and-Tables"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Special-Displays">Special Displays</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Quotations-and-Examples">Quotations and Examples</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">11 Lists and Tables</h2>
+
+<p><a name="index-Making-lists-and-tables-503"></a><a name="index-Lists-and-tables_002c-making-504"></a><a name="index-Tables-and-lists_002c-making-505"></a>
+Texinfo has several ways of making lists and tables. Lists can be
+bulleted or numbered; two-column tables can highlight the items in
+the first column; multi-column tables are also supported.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Introducing-Lists">Introducing Lists</a>: Texinfo formats lists for you.
+<li><a accesskey="2" href="#itemize">itemize</a>: How to construct a simple list.
+<li><a accesskey="3" href="#enumerate">enumerate</a>: How to construct a numbered list.
+<li><a accesskey="4" href="#Two_002dcolumn-Tables">Two-column Tables</a>: How to construct a two-column table.
+<li><a accesskey="5" href="#Multi_002dcolumn-Tables">Multi-column Tables</a>: How to construct generalized tables.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Introducing-Lists"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#itemize">itemize</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Lists-and-Tables">Lists and Tables</a>
+<br>
+</div>
+
+<h3 class="section">11.1 Introducing Lists</h3>
+
+<p>Texinfo automatically indents the text in lists or tables, and numbers
+an enumerated list. This last feature is useful if you modify the
+list, since you do not need to renumber it yourself.
+
+ <p>Numbered lists and tables begin with the appropriate @-command at the
+beginning of a line, and end with the corresponding <code>@end</code>
+command on a line by itself. The table and itemized-list commands
+also require that you write formatting information on the same line as
+the beginning @-command.
+
+ <p>Begin an enumerated list, for example, with an <code>@enumerate</code>
+command and end the list with an <code>@end enumerate</code> command.
+Begin an itemized list with an <code>@itemize</code> command, followed on
+the same line by a formatting command such as <code>@bullet</code>, and end
+the list with an <code>@end itemize</code> command.
+<a name="index-end-506"></a>
+Precede each element of a list with an <code>@item</code> or <code>@itemx</code>
+command.
+
+ <pre class="sp">
+
+</pre>
+Here is an itemized list of the different kinds of table and lists:
+
+ <ul>
+<li>Itemized lists with and without bullets.
+
+ <li>Enumerated lists, using numbers or letters.
+
+ <li>Two-column tables with highlighting.
+</ul>
+
+ <pre class="sp">
+
+</pre>
+Here is an enumerated list with the same items:
+
+ <ol type=1 start=1>
+<li>Itemized lists with and without bullets.
+
+ <li>Enumerated lists, using numbers or letters.
+
+ <li>Two-column tables with highlighting.
+ </ol>
+
+ <pre class="sp">
+
+</pre>
+And here is a two-column table with the same items and their
+@-commands<!-- /@w -->:
+
+ <dl>
+<dt><code>@itemize</code><dd>Itemized lists with and without bullets.
+
+ <br><dt><code>@enumerate</code><dd>Enumerated lists, using numbers or letters.
+
+ <br><dt><code>@table</code><dt><code>@ftable</code><dt><code>@vtable</code><dd>Two-column tables, optionally with indexing.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="itemize"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#enumerate">enumerate</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Introducing-Lists">Introducing Lists</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Lists-and-Tables">Lists and Tables</a>
+<br>
+</div>
+
+<h3 class="section">11.2 <code>@itemize</code>: Making an Itemized List</h3>
+
+<p><a name="index-Itemization-507"></a><a name="index-itemize-508"></a>
+The <code>@itemize</code> command produces sequences of indented
+paragraphs, with a bullet or other mark inside the left margin
+at the beginning of each paragraph for which such a mark is desired.
+
+ <p><a name="index-_0040code_007b_0040_0040w_007d_002c-for-blank-items-509"></a>Begin an itemized list by writing <code>@itemize</code> at the beginning of
+a line. Follow the command, on the same line, with a character or a
+Texinfo command that generates a mark. Usually, you will write
+<code>@bullet</code> after <code>@itemize</code>, but you can use
+<code>@minus</code>, or any command or character that results in a single
+character in the Info file. If you don't want any mark at all, use
+<code>@w</code>. (When you write the mark command such as
+<code>@bullet</code> after an <code>@itemize</code> command, you may omit the
+<span class="samp">{}</span>.) If you don't specify a mark command, the default is
+<code>@bullet</code>.
+
+ <p>Write the text of the indented paragraphs themselves after the
+<code>@itemize</code>, up to another line that says <code>@end
+itemize</code>.
+
+ <p><a name="index-item-510"></a>At the beginning of each paragraph for which a mark in the margin is
+desired, write a line that starts with <code>@item</code>. It is ok to
+have text following the <code>@item</code>.
+
+ <p>Usually, you should put a blank line before an <code>@item</code>. This
+puts a blank line in the Info file. (TeX inserts the proper
+interline whitespace in either case.) Except when the entries are
+very brief, these blank lines make the list look better.
+
+ <p>Here is an example of the use of <code>@itemize</code>, followed by the
+output it produces. <code>@bullet</code> produces an <span class="samp">*</span> in Info and a
+round dot in TeX.
+
+<pre class="example"> @itemize @bullet
+ @item
+ Some text for foo.
+
+ @item
+ Some text
+ for bar.
+ @end itemize
+</pre>
+ <p class="noindent">This produces:
+
+ <blockquote>
+ <ul>
+<li>Some text for foo.
+
+ <li>Some text
+for bar.
+</ul>
+ </blockquote>
+
+ <p>Itemized lists may be embedded within other itemized lists. Here is a
+list marked with dashes embedded in a list marked with bullets:
+
+<pre class="example"> @itemize @bullet
+ @item
+ First item.
+
+ @itemize @minus
+ @item
+ Inner item.
+
+ @item
+ Second inner item.
+ @end itemize
+
+ @item
+ Second outer item.
+ @end itemize
+</pre>
+ <p class="noindent">This produces:
+
+ <blockquote>
+ <ul>
+<li>First item.
+
+ <ul>
+<li>Inner item.
+
+ <li>Second inner item.
+</ul>
+
+ <li>Second outer item.
+</ul>
+ </blockquote>
+
+<div class="node">
+<p><hr>
+<a name="enumerate"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Two_002dcolumn-Tables">Two-column Tables</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#itemize">itemize</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Lists-and-Tables">Lists and Tables</a>
+<br>
+</div>
+
+<h3 class="section">11.3 <code>@enumerate</code>: Making a Numbered or Lettered List</h3>
+
+<p><a name="index-Enumeration-511"></a><a name="index-enumerate-512"></a>
+<code>@enumerate</code> is like <code>@itemize</code> (see <a href="#itemize"><code>@itemize</code></a>), except that the labels on the items are
+successive integers or letters instead of bullets.
+
+ <p>Write the <code>@enumerate</code> command at the beginning of a line. The
+command does not require an argument, but accepts either a number or a
+letter as an option. Without an argument, <code>@enumerate</code> starts the
+list with the number <span class="samp">1</span>. With a numeric argument, such as
+<span class="samp">3</span>, the command starts the list with that number. With an upper
+or lower case letter, such as <span class="samp">a</span> or <span class="samp">A</span>, the command starts
+the list with that letter.
+
+ <p>Write the text of the enumerated list in the same way as an itemized
+list: write a line starting with <code>@item</code> at the beginning of
+each paragraph that you want enumerated. It is ok to have text
+following the <code>@item</code>.
+
+ <p>You should put a blank line between entries in the list.
+This generally makes it easier to read the Info file.
+
+ <p>Here is an example of <code>@enumerate</code> without an argument:
+
+<pre class="example"> @enumerate
+ @item
+ Underlying causes.
+
+ @item
+ Proximate causes.
+ @end enumerate
+</pre>
+ <p class="noindent">This produces:
+
+ <ol type=1 start=1>
+<li>Underlying causes.
+
+ <li>Proximate causes.
+ </ol>
+ <pre class="sp">
+
+</pre>
+Here is an example with an argument of <kbd>3</kbd>:
+ <pre class="sp">
+
+</pre>
+<pre class="example"> @enumerate 3
+ @item
+ Predisposing causes.
+
+ @item
+ Precipitating causes.
+
+ @item
+ Perpetuating causes.
+ @end enumerate
+</pre>
+ <p class="noindent">This produces:
+
+ <ol type=1 start=3>
+<li>Predisposing causes.
+
+ <li>Precipitating causes.
+
+ <li>Perpetuating causes.
+ </ol>
+ <pre class="sp">
+
+</pre>
+Here is a brief summary of the alternatives. The summary is constructed
+using <code>@enumerate</code> with an argument of <kbd>a</kbd>.
+ <pre class="sp">
+
+</pre>
+ <ol type=a start=1>
+<li><code>@enumerate</code>
+
+ <p>Without an argument, produce a numbered list, starting with the number
+1.
+
+ <li><code>@enumerate </code><var>positive-integer</var>
+
+ <p>With a (positive) numeric argument, start a numbered list with that
+number. You can use this to continue a list that you interrupted with
+other text.
+
+ <li><code>@enumerate </code><var>upper-case-letter</var>
+
+ <p>With an upper case letter as argument, start a list
+in which each item is marked
+by a letter, beginning with that upper case letter.
+
+ <li><code>@enumerate </code><var>lower-case-letter</var>
+
+ <p>With a lower case letter as argument, start a list
+in which each item is marked by
+a letter, beginning with that lower case letter.
+ </ol>
+
+ <p>You can also nest enumerated lists, as in an outline.
+
+<div class="node">
+<p><hr>
+<a name="Two_002dcolumn-Tables"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Multi_002dcolumn-Tables">Multi-column Tables</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#enumerate">enumerate</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Lists-and-Tables">Lists and Tables</a>
+<br>
+</div>
+
+<h3 class="section">11.4 Making a Two-column Table</h3>
+
+<p><a name="index-Tables_002c-making-two_002dcolumn-513"></a><a name="index-table-514"></a>
+<code>@table</code> is similar to <code>@itemize</code> (see <a href="#itemize"><code>@itemize</code></a>), but allows you to specify a name or heading line for
+each item. The <code>@table</code> command is used to produce two-column
+tables, and is especially useful for glossaries, explanatory
+exhibits, and command-line option summaries.
+
+<ul class="menu">
+<li><a accesskey="1" href="#table">table</a>: How to construct a two-column table.
+<li><a accesskey="2" href="#ftable-vtable">ftable vtable</a>: Automatic indexing for two-column tables.
+<li><a accesskey="3" href="#itemx">itemx</a>: How to put more entries in the first column.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="table"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#ftable-vtable">ftable vtable</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Two_002dcolumn-Tables">Two-column Tables</a>
+<br>
+</div>
+
+<h4 class="subsection">11.4.1 Using the <code>@table</code> Command</h4>
+
+<p><a name="index-Definition-lists_002c-typesetting-515"></a>Use the <code>@table</code> command to produce two-column tables. It is
+usually listed for &ldquo;definition lists&rdquo; of various sorts, where you
+have a list of terms and a brief text with each one.
+
+ <p>Write the <code>@table</code> command at the beginning of a line, after a
+blank line, and follow it on the same line with an argument that is a
+Texinfo &ldquo;indicating&rdquo; command such as <code>@code</code>, <code>@samp</code>,
+<code>@var</code>, <code>@option</code>, or <code>@kbd</code> (see <a href="#Indicating">Indicating</a>).
+
+ <p>This command will be applied to the text that goes into the first
+column of each item and thus determines how it will be highlighted.
+For example, <code>@table @code</code> will cause the text in the first
+column to be output as if it <code>@code</code> command.
+
+ <p><a name="index-asis-516"></a>You may also use the <code>@asis</code> command as an argument to
+<code>@table</code>. <code>@asis</code> is a command that does nothing; if you
+use this command after <code>@table</code>, the first column entries are
+output without added highlighting (&ldquo;as is&rdquo;).
+
+ <p>The <code>@table</code> command works with other commands besides those
+explicitly mentioned here. However, you can only use commands that
+normally take arguments in braces. (In this case, however, you use
+the command name without an argument, because the subsequent
+<code>@item</code>'s will supply the argument.)
+
+ <p><a name="index-item-517"></a>Begin each table entry with an <code>@item</code> command at the beginning
+of a line. Write the first column text on the same line as the
+<code>@item</code> command. Write the second column text on the line
+following the <code>@item</code> line and on subsequent lines. (You do not
+need to type anything for an empty second column entry.) You may
+write as many lines of supporting text as you wish, even several
+paragraphs. But only the text on the same line as the <code>@item</code>
+will be placed in the first column (including any footnotes).
+
+ <p>Normally, you should put a blank line before an <code>@item</code> line.
+This puts a blank line in the Info file. Except when the entries are
+very brief, a blank line looks better.
+
+ <p>End the table with a line consisting of <code>@end table</code>, followed
+by a blank line. TeX will always start a new paragraph after the
+table, so the blank line is needed for the Info output to be analogous.
+
+ <p>The following table, for example, highlights the text in the first
+column with an <code>@samp</code> command:
+
+<pre class="example"> @table @samp
+ @item foo
+ This is the text for
+ @samp{foo}.
+
+ @item bar
+ Text for @samp{bar}.
+ @end table
+</pre>
+ <p class="noindent">This produces:
+
+ <dl>
+<dt><span class="samp">foo</span><dd>This is the text for
+<span class="samp">foo</span>.
+<br><dt><span class="samp">bar</span><dd>Text for <span class="samp">bar</span>.
+</dl>
+
+ <p>If you want to list two or more named items with a single block of
+text, use the <code>@itemx</code> command. (See <a href="#itemx"><code>@itemx</code></a>.)
+
+<div class="node">
+<p><hr>
+<a name="ftable-vtable"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#itemx">itemx</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#table">table</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Two_002dcolumn-Tables">Two-column Tables</a>
+<br>
+</div>
+
+<h4 class="subsection">11.4.2 <code>@ftable</code> and <code>@vtable</code></h4>
+
+<p><a name="index-Tables-with-indexes-518"></a><a name="index-Indexing-table-entries-automatically-519"></a><a name="index-ftable-520"></a><a name="index-vtable-521"></a>
+The <code>@ftable</code> and <code>@vtable</code> commands are the same as the
+<code>@table</code> command except that <code>@ftable</code> automatically enters
+each of the items in the first column of the table into the index of
+functions and <code>@vtable</code> automatically enters each of the items in
+the first column of the table into the index of variables. This
+simplifies the task of creating indices. Only the items on the same
+line as the <code>@item</code> commands are indexed, and they are indexed in
+exactly the form that they appear on that line. See <a href="#Indices">Indices</a>,
+for more information about indices.
+
+ <p>Begin a two-column table using <code>@ftable</code> or <code>@vtable</code> by
+writing the @-command at the beginning of a line, followed on the same
+line by an argument that is a Texinfo command such as <code>@code</code>,
+exactly as you would for an <code>@table</code> command; and end the table
+with an <code>@end ftable</code> or <code>@end vtable</code> command on a line by
+itself.
+
+ <p>See the example for <code>@table</code> in the previous section.
+
+<div class="node">
+<p><hr>
+<a name="itemx"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#ftable-vtable">ftable vtable</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Two_002dcolumn-Tables">Two-column Tables</a>
+<br>
+</div>
+
+<h4 class="subsection">11.4.3 <code>@itemx</code></h4>
+
+<p><a name="index-Two-named-items-for-_0040code_007b_0040_0040table_007d-522"></a><a name="index-itemx-523"></a>
+Use the <code>@itemx</code> command inside a table when you have two or more
+first column entries for the same item, each of which should appear on a
+line of its own.
+
+ <p>Use <code>@item</code> for the first entry, and <code>@itemx</code> for all
+subsequent entries; <code>@itemx</code> must always follow an <code>@item</code>
+command, with no blank line intervening.
+
+ <p>The <code>@itemx</code> command works exactly like <code>@item</code> except
+that it does not generate extra vertical space above the first column
+text. If you have multiple consecutive <code>@itemx</code> commands, do
+not insert any blank lines between them.
+
+ <p>For example,
+
+<pre class="example"> @table @code
+ @item upcase
+ @itemx downcase
+ These two functions accept a character or a string as
+ argument, and return the corresponding upper case (lower
+ case) character or string.
+ @end table
+</pre>
+ <p class="noindent">This produces:
+
+ <dl>
+<dt><code>upcase</code><dt><code>downcase</code><dd>These two functions accept a character or a string as
+argument, and return the corresponding upper case (lower
+case) character or string.
+</dl>
+
+<p class="noindent">(Note also that this example illustrates multi-line supporting text in
+a two-column table.)
+
+<div class="node">
+<p><hr>
+<a name="Multi_002dcolumn-Tables"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Two_002dcolumn-Tables">Two-column Tables</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Lists-and-Tables">Lists and Tables</a>
+<br>
+</div>
+
+<h3 class="section">11.5 <code>@multitable</code>: Multi-column Tables</h3>
+
+<p><a name="index-Tables_002c-making-multi_002dcolumn-524"></a><a name="index-multitable-525"></a>
+<code>@multitable</code> allows you to construct tables with any number of
+columns, with each column having any width you like.
+
+ <p>You define the column widths on the <code>@multitable</code> line itself, and
+write each row of the actual table following an <code>@item</code> command,
+with columns separated by an <code>@tab</code> command. Finally, <code>@end
+multitable</code> completes the table. Details in the sections below.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Multitable-Column-Widths">Multitable Column Widths</a>: Defining multitable column widths.
+<li><a accesskey="2" href="#Multitable-Rows">Multitable Rows</a>: Defining multitable rows, with examples.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Multitable-Column-Widths"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Multitable-Rows">Multitable Rows</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Multi_002dcolumn-Tables">Multi-column Tables</a>
+<br>
+</div>
+
+<h4 class="subsection">11.5.1 Multitable Column Widths</h4>
+
+<p><a name="index-Multitable-column-widths-526"></a><a name="index-Column-widths_002c-defining-for-multitables-527"></a><a name="index-Widths_002c-defining-multitable-column-528"></a>
+You can define the column widths for a multitable in two ways: as
+fractions of the line length; or with a prototype row. Mixing the two
+methods is not supported. In either case, the widths are defined
+entirely on the same line as the <code>@multitable</code> command.
+
+ <ol type=1 start=1>
+<li><a name="index-columnfractions-529"></a><a name="index-Line-length_002c-column-widths-as-fraction-of-530"></a>To specify column widths as fractions of the line length, write
+<code>@columnfractions</code> and the decimal numbers (presumably less than
+1; a leading zero is allowed and ignored) after the
+<code>@multitable</code> command, as in:
+
+ <pre class="example"> @multitable @columnfractions .33 .33 .33
+ </pre>
+ <p>The fractions need not add up exactly to 1.0, as these do not. This
+allows you to produce tables that do not need the full line length.
+
+ <li><a name="index-Prototype-row_002c-column-widths-defined-by-531"></a>To specify a prototype row, write the longest entry for each column
+enclosed in braces after the <code>@multitable</code> command. For example:
+
+ <pre class="example"> @multitable {some text for column one} {for column two}
+ </pre>
+ <p class="noindent">The first column will then have the width of the typeset `some text for
+column one', and the second column the width of `for column two'.
+
+ <p>The prototype entries need not appear in the table itself.
+
+ <p>Although we used simple text in this example, the prototype entries can
+contain Texinfo commands; markup commands such as <code>@code</code> are
+particularly likely to be useful.
+
+ </ol>
+
+<div class="node">
+<p><hr>
+<a name="Multitable-Rows"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Multitable-Column-Widths">Multitable Column Widths</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Multi_002dcolumn-Tables">Multi-column Tables</a>
+<br>
+</div>
+
+<h4 class="subsection">11.5.2 Multitable Rows</h4>
+
+<p><a name="index-Multitable-rows-532"></a><a name="index-Rows_002c-of-a-multitable-533"></a>
+<a name="index-item-534"></a><a name="index-tab-535"></a>After the <code>@multitable</code> command defining the column widths (see
+the previous section), you begin each row in the body of a multitable
+with <code>@item</code>, and separate the column entries with <code>@tab</code>.
+Line breaks are not special within the table body, and you may break
+input lines in your source file as necessary.
+
+ <p><a name="index-headitem-536"></a><a name="index-Heading-row_002c-in-table-537"></a><a name="index-_003cthead_003e-HTML-tag-538"></a>You can also use <code>@headitem</code> instead of <code>@item</code> to produce
+a <dfn>heading row</dfn>. The TeX output for such a row is in bold, and
+the HTML, XML, and Docbook output uses the <code>&lt;thead&gt;</code> tag.
+
+ <p>Here is a complete example of a multi-column table (the text is from
+<cite>The GNU Emacs Manual</cite>, see <a href="emacs.html#Split-Window">Splitting Windows (The GNU Emacs Manual)</a>):
+
+<pre class="example"> @multitable @columnfractions .15 .45 .4
+ @headitem Key @tab Command @tab Description
+ @item C-x 2
+ @tab @code{split-window-vertically}
+ @tab Split the selected window into two windows,
+ with one above the other.
+ @item C-x 3
+ @tab @code{split-window-horizontally}
+ @tab Split the selected window into two windows
+ positioned side by side.
+ @item C-Mouse-2
+ @tab
+ @tab In the mode line or scroll bar of a window,
+ split that window.
+ @end multitable
+</pre>
+ <p class="noindent">produces:
+
+ <p><table summary=""><tr align="left"><th valign="top" width="15%">Key </th><th valign="top" width="45%">Command </th><th valign="top" width="40%">Description
+<br></th></tr><tr align="left"><td valign="top" width="15%">C-x 2
+</td><td valign="top" width="45%"><code>split-window-vertically</code>
+</td><td valign="top" width="40%">Split the selected window into two windows,
+with one above the other.
+<br></td></tr><tr align="left"><td valign="top" width="15%">C-x 3
+</td><td valign="top" width="45%"><code>split-window-horizontally</code>
+</td><td valign="top" width="40%">Split the selected window into two windows
+positioned side by side.
+<br></td></tr><tr align="left"><td valign="top" width="15%">C-Mouse-2
+</td><td valign="top" width="45%">
+</td><td valign="top" width="40%">In the mode line or scroll bar of a window,
+split that window.
+ <br></td></tr></table>
+
+<div class="node">
+<p><hr>
+<a name="Special-Displays"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Indices">Indices</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Lists-and-Tables">Lists and Tables</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">12 Special Displays</h2>
+
+<p><a name="index-Special-displays-539"></a>
+The commands in this chapter allow you to write text that is specially
+displayed (output format permitting), outside of the normal document
+flow.
+
+ <p>One set of such commands is for creating &ldquo;floats&rdquo;, that is, figures,
+tables, and the like, set off from the main text, possibly numbered,
+captioned, and/or referred to from elsewhere in the document. Images
+are often included in these displays.
+
+ <p>Another group of commands is for creating footnotes in Texinfo.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Floats">Floats</a>: Figures, tables, and the like.
+<li><a accesskey="2" href="#Images">Images</a>: Including graphics and images.
+<li><a accesskey="3" href="#Footnotes">Footnotes</a>: Writing footnotes.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Floats"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Images">Images</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Special-Displays">Special Displays</a>
+<br>
+</div>
+
+<h3 class="section">12.1 Floats</h3>
+
+<p><a name="index-Floats_002c-in-general-540"></a>
+A <dfn>float</dfn> is a display which is set off from the main text. It is
+typically labelled as being a &ldquo;Figure&rdquo;, &ldquo;Table&rdquo;, &ldquo;Example&rdquo;, or
+some similar type.
+
+ <p><a name="index-Floating_002c-not-yet-implemented-541"></a>A float is so-named because, in principle, it can be moved to the
+bottom or top of the current page, or to a following page, in the
+printed output. (Floating does not make sense in other output
+formats.) In the present version of Texinfo, however, this floating
+is unfortunately not yet implemented. Instead, the floating material
+is simply output at the current location, more or less as if it were
+an <code>@group</code> (see <a href="#group"><code>@group</code></a>).
+
+<ul class="menu">
+<li><a accesskey="1" href="#float">float</a>: Producing floating material.
+<li><a accesskey="2" href="#caption-shortcaption">caption shortcaption</a>: Specifying descriptions for floats.
+<li><a accesskey="3" href="#listoffloats">listoffloats</a>: A table of contents for floats.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="float"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#caption-shortcaption">caption shortcaption</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Floats">Floats</a>
+<br>
+</div>
+
+<h4 class="subsection">12.1.1 <code>@float</code> [<var>type</var>][,<var>label</var>]: Floating material</h4>
+
+<p><a name="index-float-542"></a><a name="index-Float-environment-543"></a>
+To produce floating material, enclose the material you want to be
+displayed separate between <code>@float</code> and <code>@end float</code>
+commands, on lines by themselves.
+
+ <p>Floating material uses <code>@image</code> to display an already-existing
+graphic (see <a href="#Images">Images</a>), or <code>@multitable</code> to display a table
+(see <a href="#Multi_002dcolumn-Tables">Multi-column Tables</a>). However, the contents of the float can
+be anything. Here's an example with simple text:
+
+<pre class="example"> @float Figure,fig:ex1
+ This is an example float.
+ @end float
+</pre>
+ <p class="noindent">And the output:
+
+ <div class="float">
+<a name="fig_003aex1"></a>This is an example float.
+<p><strong class="float-caption">Figure 12.1</strong></p></div>
+
+ <p>As shown in the example, <code>@float</code> takes two arguments (separated
+by a comma), <var>type</var> and <var>label</var>. Both are optional.
+
+ <dl>
+<dt><var>type</var><dd>Specifies the sort of float this is; typically a word such as
+&ldquo;Figure&rdquo;, &ldquo;Table&rdquo;, etc. If not given, and <var>label</var> is, any
+cross-referencing will simply use a bare number.
+
+ <br><dt><var>label</var><dd>Specifies a cross-reference label for this float. If given, this
+float is automatically given a number, and will appear in any
+<code>@listofloats</code> output (see <a href="#listoffloats">listoffloats</a>). Cross-references
+to <var>label</var> are allowed.
+
+ <p><a name="index-Floats_002c-making-unnumbered-544"></a><a name="index-Unnumbered-float_002c-creating-545"></a>On the other hand, if <var>label</var> is not given, then the float will
+not be numbered and consequently will not appear in the
+<code>@listoffloats</code> output or be cross-referenceable.
+</dl>
+
+<p class="noindent">Normally, you specify both <var>type</var> and <var>label</var>, to get a
+labeled and numbered float.
+
+ <p><a name="index-Floats_002c-numbering-of-546"></a><a name="index-Numbering-of-floats-547"></a>In Texinfo, all floats are numbered the same way: with the chapter
+number (or appendix letter), a period, and the float number, which
+simply counts 1, 2, 3, <small class="dots">...</small>, and is reset at each chapter. Each
+float type is counted independently.
+
+ <p>Floats within an <code>@unnumbered</code> are numbered, or outside of any
+chapter, are simply numbered consecutively from 1.
+
+ <p>These numbering conventions are not, at present, changeable.
+
+<div class="node">
+<p><hr>
+<a name="caption-shortcaption"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#listoffloats">listoffloats</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#float">float</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Floats">Floats</a>
+<br>
+</div>
+
+<h4 class="subsection">12.1.2 <code>@caption</code> &amp; <code>@shortcaption</code></h4>
+
+<p><a name="index-caption-548"></a><a name="index-shortcaption-549"></a><a name="index-Captions_002c-for-floats-550"></a><a name="index-Short-captions_002c-for-lists-of-floats-551"></a>
+You may write an <code>@caption</code> anywhere within a <code>@float</code>
+environment, to define a caption for the float. It is not allowed in
+any other context. <code>@caption</code> takes a single argument, enclosed
+in braces. Here's an example:
+
+<pre class="example"> @float
+ An example float, with caption.
+ @caption{Caption for example float.}
+ @end float
+</pre>
+ <p class="noindent">The output is:
+
+ <div class="float">
+An example float, with caption.
+
+ <p><strong class="float-caption">Caption for example float.</strong></p></div>
+
+ <p><code>@caption</code> can appear anywhere within the float; it is not
+processed until the <code>@end float</code>. The caption text is usually a
+sentence or two, but may consist of several paragraphs if necessary.
+
+ <p>In the output, the caption always appears below the float; this is not
+currently changeable. It is preceded by the float type and/or number,
+as specified to the <code>@float</code> command (see the previous section).
+
+ <p>The <code>@shortcaption</code> command likewise may be used only within
+<code>@float</code>, and takes a single argument in braces. The short
+caption text is used instead of the caption text in a list of floats
+(see the next section). Thus, you can write a long caption for the
+main document, and a short title to appear in the list of floats.
+
+<div class="node">
+<p><hr>
+<a name="listoffloats"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#caption-shortcaption">caption shortcaption</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Floats">Floats</a>
+<br>
+</div>
+
+<h4 class="subsection">12.1.3 <code>@listoffloats</code>: Tables of contents for floats</h4>
+
+<p><a name="index-listoffloats-552"></a><a name="index-List-of-floats-553"></a><a name="index-Floats_002c-list-of-554"></a><a name="index-Table-of-contents_002c-for-floats-555"></a>
+You can write a <code>@listoffloats</code> command to generate a list of
+floats for a given float type (see <a href="#float">float</a>), analogous to the
+document's overall table of contents. Typically, it is written in its
+own <code>@unnumbered</code> node to provide a heading and structure,
+rather like <code>@printindex</code> (see <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>).
+
+ <p><code>@listoffloats</code> takes one optional argument, the float type.
+Here's an example:
+
+<pre class="example"> @node List of Figures
+ @unnumbered List of Figures
+ @listoffloats Figure
+</pre>
+ <p class="noindent">And the output from <code>@listoffloats</code>:
+
+<pre class="display">
+
+<ul class="listoffloats">
+ <li><a href="#fig_003aex1">Figure 12.1</a></li>
+</ul>
+
+ </pre>
+ <p>Without any argument, <code>@listoffloats</code> generates a list of
+floats for which no float type was specified, i.e., no first argument
+to the <code>@float</code> command (see <a href="#float">float</a>).
+
+ <p>Each line in the list of floats contains the float type (if any),
+the float number, and the caption, if any&mdash;the <code>@shortcaption</code>
+argument, if it was specified, else the <code>@caption</code> argument.
+In Info, the result is a menu where each float can be selected. In
+HTML, each line is a link to the float. In printed output, the page
+number is included.
+
+ <p>Unnumbered floats (those without cross-reference labels) are omitted
+from the list of floats.
+
+<div class="node">
+<p><hr>
+<a name="Images"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Footnotes">Footnotes</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Floats">Floats</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Special-Displays">Special Displays</a>
+<br>
+</div>
+
+<h3 class="section">12.2 Inserting Images</h3>
+
+<p><a name="index-Images_002c-inserting-556"></a><a name="index-Pictures_002c-inserting-557"></a><a name="index-image-558"></a>
+You can insert an image given in an external file with the
+<code>@image</code> command. Although images can be used anywhere,
+including the middle of a paragraph, we describe them in this chapter
+since they are most often part of a displayed figure or example.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Image-Syntax">Image Syntax</a>
+<li><a accesskey="2" href="#Image-Scaling">Image Scaling</a>
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Image-Syntax"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Image-Scaling">Image Scaling</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Images">Images</a>
+<br>
+</div>
+
+<h4 class="subsection">12.2.1 Image Syntax</h4>
+
+<p>Here is the basic synopsis of the <code>@image</code> command:
+
+<pre class="example"> @image{<var>filename</var><span class="roman">[,</span> <var>width</var><span class="roman">[,</span> <var>height</var><span class="roman">[,</span> <var>alttext</var><span class="roman">[, </span><var>extension</var><span class="roman">]]]]</span>}
+</pre>
+ <p><a name="index-Formats-for-images-559"></a><a name="index-Image-formats-560"></a>The <var>filename</var> argument is mandatory, and must not have an
+extension, because the different processors support different formats:
+
+ <ul>
+<li>TeX reads the file <var>filename</var><span class="file">.eps</span> (Encapsulated PostScript
+format).
+<li><a name="index-pdftex_0040r_007b_002c-and-images_007d-561"></a>PDFTeX reads <var>filename</var><span class="file">.pdf</span> (Adobe's Portable Document Format).
+<li><code>makeinfo</code> includes <var>filename</var><span class="file">.txt</span> verbatim for
+Info output (more or less as if it was an <code>@example</code>).
+<li><code>makeinfo</code> uses the optional fifth argument <var>extension</var> to
+<code>@image</code> for the filename extension, if it is specified. For example:
+
+ <p><a name="index-XPM-image-format-562"></a>
+ <pre class="example"> @image{foo,,,,.xpm}
+ </pre>
+ <p class="noindent">will cause <code>makeinfo</code> to look for <span class="file">foo.xpm</span> before any others.
+
+ </ul>
+
+ <p>The <var>width</var> and <var>height</var> arguments are described in the next
+section.
+
+ <p><a name="index-Alt-attribute-for-images-563"></a><a name="index-Images_002c-alternate-text-for-564"></a>When producing html, <code>makeinfo</code> sets the <dfn>alt attribute</dfn> for
+inline images to the optional <var>alttext</var> (fourth) argument to
+<code>@image</code>, if supplied. If not supplied, <code>makeinfo</code> uses
+the full file name of the image being displayed. If you want an empty
+<code>alt</code> string, use <code>@-</code>. The <var>alttext</var> is taken as
+Texinfo text, so special characters such as <span class="samp">"</span> and <span class="samp">&lt;</span> and
+<span class="samp">&amp;</span> are escaped in the HTML and XML output.
+
+ <p><a name="index-GIF-images_002c-unsupported-due-to-patents-565"></a><a name="index-PNG-image-format-566"></a><a name="index-JPG-image-format-567"></a>If you do not supply the optional <var>extension</var> (fifth) argument,
+<code>makeinfo</code> first tries <var>filename</var><span class="file">.png</span>; if that does
+not exist, it tries <var>filename</var><span class="file">.jpg</span>. If that does not exist
+either, it complains. (We cannot support GIF format directly due to
+software patents.)
+
+ <p>In Info output, <code>makeinfo</code> writes a reference to the binary image
+file (trying <var>filename</var> suffixed with <var>extension</var>,
+<var>.extension</var>, <span class="file">.png</span>, or <span class="file">.jpg</span>, in that order)
+if one exists. It also literally includes the <span class="file">.txt</span> file if one
+exists. This way, Info readers which can display images (such as the
+Emacs Info browser, running under X) can do so, whereas Info readers
+which can only use text (such as the standalone Info reader) can
+display the textual version.
+
+ <p>The implementation of this is to put the following construct into the
+Info output:
+
+<pre class="example"> ^@^H[image src="<var>binaryfile</var>" text="<var>txtfile</var>"
+ alt="<var>alttext</var> ... ^@^H]
+</pre>
+ <p class="noindent">where <span class="samp">^@</span> and <span class="samp">^H</span> stand for the actual null and
+backspace control characters. If one of the files is not present, the
+corresponding argument is omitted.
+
+ <p>The reason for mentioning this here is that older Info browsers (this
+feature was introduced in Texinfo version 4.6) will display the above
+literally, which, although not pretty, should not be harmful.
+
+<div class="node">
+<p><hr>
+<a name="Image-Scaling"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Image-Syntax">Image Syntax</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Images">Images</a>
+<br>
+</div>
+
+<h4 class="subsection">12.2.2 Image Scaling</h4>
+
+<p><a name="index-Images_002c-scaling-568"></a><a name="index-Scaling-images-569"></a><a name="index-Width-of-images-570"></a><a name="index-Height-of-images-571"></a><a name="index-Aspect-ratio-of-images-572"></a><a name="index-Distorting-images-573"></a>The optional <var>width</var> and <var>height</var> arguments to the
+<code>@image</code> command (see the previous section) specify the size to
+scale the image to. They are ignored for Info output. If neither is
+specified, the image is presented in its natural size (given in the
+file); if only one is specified, the other is scaled proportionately;
+and if both are specified, both are respected, thus possibly distorting
+the original image by changing its aspect ratio.
+
+ <p><a name="index-Dimensions-and-image-sizes-574"></a>The <var>width</var> and <var>height</var> may be specified using any valid TeX
+dimension, namely:
+
+ <dl>
+<dt>pt<dd><a name="index-Points-_0028dimension_0029-575"></a>point (72.27pt = 1in)
+<br><dt>pc<dd><a name="index-Picas-576"></a>pica (1pc = 12pt)
+<br><dt>bp<dd><a name="index-Big-points-577"></a>big point (72bp = 1in)
+<br><dt>in<dd><a name="index-Inches-578"></a>inch
+<br><dt>cm<dd><a name="index-Centimeters-579"></a>centimeter (2.54cm = 1in)
+<br><dt>mm<dd><a name="index-Millimeters-580"></a>millimeter (10mm = 1cm)
+<br><dt>dd<dd><a name="index-Did_0040_005eot-points-581"></a>did&ocirc;t point (1157dd = 1238pt)
+<br><dt>cc<dd><a name="index-Ciceros-582"></a>cicero (1cc = 12dd)
+<br><dt>sp<dd><a name="index-Scaled-points-583"></a>scaled point (65536sp = 1pt)
+</dl>
+
+ <p><a name="index-ridt_002eeps-584"></a>For example, the following will scale a file <span class="file">ridt.eps</span> to one
+inch vertically, with the width scaled proportionately:
+
+<pre class="example"> @image{ridt,,1in}
+</pre>
+ <p><a name="index-epsf_002etex-585"></a>For <code>@image</code> to work with TeX, the file <span class="file">epsf.tex</span> must be
+installed somewhere that TeX can find it. (The standard location is
+<var>texmf</var><span class="file">/tex/generic/dvips/epsf.tex</span>, where <var>texmf</var> is a
+root of your TeX directory tree.) This file is included in the
+Texinfo distribution and is also available from
+<a href="ftp://tug.org/tex/epsf.tex">ftp://tug.org/tex/epsf.tex</a>, among other places.
+
+ <p><code>@image</code> can be used within a line as well as for displayed
+figures. Therefore, if you intend it to be displayed, be sure to leave
+a blank line before the command, or the output will run into the
+preceding text.
+
+ <p>Image scaling is presently implemented only in TeX, not in HTML or
+any other sort of output.
+
+<div class="node">
+<p><hr>
+<a name="Footnotes"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Images">Images</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Special-Displays">Special Displays</a>
+<br>
+</div>
+
+<h3 class="section">12.3 Footnotes</h3>
+
+<p><a name="index-Footnotes-586"></a><a name="index-footnote-587"></a>
+A <dfn>footnote</dfn> is for a reference that documents or elucidates the
+primary text.<a rel="footnote" href="#fn-7" name="fnd-7"><sup>7</sup></a> Footnotes are distracting; use them
+sparingly, if at all. Standard bibliographical references are better
+placed in a bibliography at the end of a document than in footnotes
+throughout.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Footnote-Commands">Footnote Commands</a>: How to write a footnote in Texinfo.
+<li><a accesskey="2" href="#Footnote-Styles">Footnote Styles</a>: Controlling how footnotes appear in Info.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Footnote-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Footnote-Styles">Footnote Styles</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Footnotes">Footnotes</a>
+<br>
+</div>
+
+<h4 class="subsection">12.3.1 Footnote Commands</h4>
+
+<p>In Texinfo, footnotes are created with the <code>@footnote</code> command.
+This command is followed immediately by a left brace, then by the text
+of the footnote, and then by a terminating right brace. Footnotes may
+be of any length (they will be broken across pages if necessary), but
+are usually short. The template is:
+
+<pre class="example"> ordinary text@footnote{<var>text of footnote</var>}
+</pre>
+ <p>As shown here, the <code>@footnote</code> command should come right after the
+text being footnoted, with no intervening space; otherwise, the footnote
+marker might end up starting a line.
+
+ <p>For example, this clause is followed by a sample footnote<a rel="footnote" href="#fn-8" name="fnd-8"><sup>8</sup></a>; in the Texinfo source, it looks like
+this:
+
+<pre class="example"> ...a sample footnote@footnote{Here is the sample
+ footnote.}; in the Texinfo source...
+</pre>
+ <p>As you can see, the source includes two punctuation marks next to each
+other; in this case, <span class="samp">.};</span> is the sequence. This is normal (the
+first ends the footnote and the second belongs to the sentence being
+footnoted), so don't worry that it looks odd.
+
+ <p>In a printed manual or book, the reference mark for a footnote is a
+small, superscripted number; the text of the footnote appears at the
+bottom of the page, below a horizontal line.
+
+ <p>In Info, the reference mark for a footnote is a pair of parentheses
+with the footnote number between them, like this: <span class="samp">(1)</span>. The
+reference mark is followed by a cross-reference link to the footnote's
+text.
+
+ <p>In the HTML output, footnote references are marked with a small,
+superscripted number which is rendered as a hypertext link to the
+footnote text.
+
+ <p>By the way, footnotes in the argument of an <code>@item</code> command for a
+<code>@table</code> must be on the same line as the <code>@item</code>
+(as usual). See <a href="#Two_002dcolumn-Tables">Two-column Tables</a>.
+
+<div class="node">
+<p><hr>
+<a name="Footnote-Styles"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Footnote-Commands">Footnote Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Footnotes">Footnotes</a>
+<br>
+</div>
+
+<h4 class="subsection">12.3.2 Footnote Styles</h4>
+
+<p>Info has two footnote styles, which determine where the text of the
+footnote is located:
+
+
+<a name="index-_0040samp_007b_0040r_007bEnd_007d_007d-node-footnote-style-588"></a>
+<ul><li>In the `End' node style, all the footnotes for a single node
+are placed at the end of that node. The footnotes are separated from
+the rest of the node by a line of dashes with the word
+<span class="samp">Footnotes</span> within it. Each footnote begins with an
+<span class="samp">(</span><var>n</var><span class="samp">)</span> reference mark.
+
+ <p class="noindent">Here is an example of a single footnote in the end of node style:
+
+ <pre class="example"> --------- Footnotes ---------
+
+ (1) Here is a sample footnote.
+ </pre>
+ <p><a name="index-_0040samp_007b_0040r_007bSeparate_007d_007d-footnote-style-589"></a><li>In the `Separate' node style, all the footnotes for a single
+node are placed in an automatically constructed node of
+their own. In this style, a &ldquo;footnote reference&rdquo; follows
+each <span class="samp">(</span><var>n</var><span class="samp">)</span> reference mark in the body of the
+node. The footnote reference is actually a cross reference
+which you use to reach the footnote node.
+
+ <p>The name of the node with the footnotes is constructed
+by appending <span class="samp">-Footnotes</span><!-- /@w --> to the name of the node
+that contains the footnotes. (Consequently, the footnotes'
+node for the <span class="file">Footnotes</span> node is
+<span class="file">Footnotes-Footnotes</span><!-- /@w -->!) The footnotes' node has an
+`Up' node pointer that leads back to its parent node.
+
+ <p class="noindent">Here is how the first footnote in this manual looks after being
+formatted for Info in the separate node style:
+
+ <pre class="smallexample"> File: texinfo.info Node: Overview-Footnotes, Up: Overview
+
+ (1) The first syllable of "Texinfo" is pronounced like "speck", not
+ "hex". ...
+ </pre>
+ </ul>
+
+ <p>Unless your document has long and important footnotes (as in, say,
+Gibbon's <cite>Decline and Fall <small class="dots">...</small></cite>), we recommend the <span class="samp">end</span>
+style, as it is simpler for readers to follow.
+
+ <p><a name="index-footnotestyle-590"></a>Use the <code>@footnotestyle</code> command to specify an Info file's
+footnote style. Write this command at the beginning of a line followed
+by an argument, either <span class="samp">end</span> for the end node style or
+<span class="samp">separate</span> for the separate node style.
+
+ <p>For example,
+
+<pre class="example"> @footnotestyle end
+</pre>
+ <p class="noindent">or
+<pre class="example"> @footnotestyle separate
+</pre>
+ <p>Write an <code>@footnotestyle</code> command before or shortly after the
+end-of-header line at the beginning of a Texinfo file. (If you
+include the <code>@footnotestyle</code> command between the start-of-header
+and end-of-header lines, the region formatting commands will format
+footnotes as specified.)
+
+ <p>If you do not specify a footnote style, the formatting commands use
+their default style. Currently, <code>texinfo-format-buffer</code> and
+<code>texinfo-format-region</code> use the `separate' style and
+<code>makeinfo</code> uses the `end' style.
+
+<div class="node">
+<p><hr>
+<a name="Indices"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Insertions">Insertions</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Special-Displays">Special Displays</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">13 Indices</h2>
+
+<p><a name="index-Indices-591"></a>
+Using Texinfo, you can generate indices without having to sort and
+collate entries manually. In an index, the entries are listed in
+alphabetical order, together with information on how to find the
+discussion of each entry. In a printed manual, this information
+consists of page numbers. In an Info file, this information is a menu
+entry leading to the first node referenced.
+
+ <p>Texinfo provides several predefined kinds of index: an index
+for functions, an index for variables, an index for concepts, and so
+on. You can combine indices or use them for other than their
+canonical purpose. Lastly, you can define your own new indices.
+
+ <p>See <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>, for information on how to print
+indices.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Index-Entries">Index Entries</a>: Choose different words for index entries.
+<li><a accesskey="2" href="#Predefined-Indices">Predefined Indices</a>: Use different indices for different kinds
+ of entries.
+<li><a accesskey="3" href="#Indexing-Commands">Indexing Commands</a>: How to make an index entry.
+<li><a accesskey="4" href="#Combining-Indices">Combining Indices</a>: How to combine indices.
+<li><a accesskey="5" href="#New-Indices">New Indices</a>: How to define your own indices.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Index-Entries"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Predefined-Indices">Predefined Indices</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indices">Indices</a>
+<br>
+</div>
+
+<h3 class="section">13.1 Making Index Entries</h3>
+
+<p><a name="index-Index-entries_002c-making-592"></a><a name="index-Entries_002c-making-index-593"></a>
+When you are making index entries, it is good practice to think of the
+different ways people may look for something. Different people
+<em>do not</em> think of the same words when they look something up. A
+helpful index will have items indexed under all the different words
+that people may use. For example, one reader may think it obvious that
+the two-letter names for indices should be listed under &ldquo;Indices,
+two-letter names&rdquo;, since the word &ldquo;Index&rdquo; is the general concept.
+But another reader may remember the specific concept of two-letter
+names and search for the entry listed as &ldquo;Two letter names for
+indices&rdquo;. A good index will have both entries and will help both
+readers.
+
+ <p>Like typesetting, the construction of an index is a highly skilled,
+professional art, the subtleties of which are not appreciated until you
+need to do it yourself.
+
+ <p>See <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>, for information about printing an index
+at the end of a book or creating an index menu in an Info file.
+
+<div class="node">
+<p><hr>
+<a name="Predefined-Indices"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Indexing-Commands">Indexing Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Index-Entries">Index Entries</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indices">Indices</a>
+<br>
+</div>
+
+<h3 class="section">13.2 Predefined Indices</h3>
+
+<p>Texinfo provides six predefined indices. Here are their nominal
+meanings, abbreviations, and the corresponding index entry commands:
+
+ <dl>
+<dt><span class="samp">cp</span><dd><a name="index-_0040code_007bcp_007d-_0028concept_0029-index-594"></a>(<code>@cindex</code>) concept index, for general concepts.
+<br><dt><span class="samp">fn</span><dd><a name="index-_0040code_007bfn_007d-_0028function_0029-index-595"></a>(<code>@findex</code>) function index, for function and function-like
+names (such as entry points of libraries).
+<br><dt><span class="samp">ky</span><dd><a name="index-_0040code_007bky_007d-_0028keystroke_0029-index-596"></a>(<code>@kindex</code>) keystroke index, for keyboard commands.
+<br><dt><span class="samp">pg</span><dd><a name="index-_0040code_007bpg_007d-_0028program_0029-index-597"></a>(<code>@pindex</code>) program index, for names of programs.
+<br><dt><span class="samp">tp</span><dd><a name="index-_0040code_007btp_007d-_0028data-type_0029-index-598"></a>(<code>@tindex</code>) data type index, for type names (such as structures
+defined in header files).
+<br><dt><span class="samp">vr</span><dd><a name="index-_0040code_007bvr_007d-_0028variable_0029-index-599"></a>(<code>@vindex</code>) variable index, for variable names (such as global
+variables of libraries).
+</dl>
+
+<p class="noindent">Not every manual needs all of these, and most manuals use only two or
+three at most. The present manual, for example, has two indices: a
+concept index and an @-command index (that is actually the function
+index but is called a command index in the chapter heading).
+
+ <p>You are not required to use the predefined indices strictly for their
+canonical purposes. For example, suppose you wish to index some C
+preprocessor macros. You could put them in the function index along
+with actual functions, just by writing <code>@findex</code> commands for
+them; then, when you print the &ldquo;Function Index&rdquo; as an unnumbered
+chapter, you could give it the title `Function and Macro Index' and
+all will be consistent for the reader.
+
+ <p>On the other hand, it is best not to stray too far from the meaning of
+the predefined indices. Otherwise, in the event that your text is
+combined with other text from other manuals, the index entries will
+not match up. Instead, define your own new index (see <a href="#New-Indices">New Indices</a>).
+
+ <p>We recommend having a single index in the final document whenever
+possible, however many source indices you use, since then readers have
+only one place to look. Two or more source indices can be combined
+into one output index using the <code>@synindex</code> or
+<code>@syncodeindex</code> commands (see <a href="#Combining-Indices">Combining Indices</a>).
+
+<div class="node">
+<p><hr>
+<a name="Indexing-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Combining-Indices">Combining Indices</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Predefined-Indices">Predefined Indices</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indices">Indices</a>
+<br>
+</div>
+
+<h3 class="section">13.3 Defining the Entries of an Index</h3>
+
+<p><a name="index-Defining-indexing-entries-600"></a><a name="index-Index-entries-601"></a><a name="index-Entries-for-an-index-602"></a><a name="index-Specifying-index-entries-603"></a><a name="index-Creating-index-entries-604"></a>
+The data to make an index come from many individual indexing commands
+scattered throughout the Texinfo source file. Each command says to add
+one entry to a particular index; after formatting, the index will give
+the current page number or node name as the reference.
+
+ <p>An index entry consists of an indexing command at the beginning of a
+line followed, on the rest of the line, by the entry.
+
+ <p>For example, this section begins with the following five entries for
+the concept index:
+
+<pre class="example"> @cindex Defining indexing entries
+ @cindex Index entries, defining
+ @cindex Entries for an index
+ @cindex Specifying index entries
+ @cindex Creating index entries
+</pre>
+ <p>Each predefined index has its own indexing command&mdash;<code>@cindex</code>
+for the concept index, <code>@findex</code> for the function index, and so
+on, as listed in the previous section.
+
+ <p><a name="index-Writing-index-entries-605"></a><a name="index-Index-entry-writing-606"></a>Concept index entries consist of text. The best way to write an index
+is to choose entries that are terse yet clear. If you can do this,
+the index often looks better if the entries are not capitalized, but
+written just as they would appear in the middle of a sentence.
+(Capitalize proper names and acronyms that always call for upper case
+letters.) This is the case convention we use in most GNU manuals'
+indices.
+
+ <p>If you don't see how to make an entry terse yet clear, make it longer
+and clear&mdash;not terse and confusing. If many of the entries are several
+words long, the index may look better if you use a different convention:
+to capitalize the first word of each entry. But do not capitalize a
+case-sensitive name such as a C or Lisp function name or a shell
+command; that would be a spelling error.
+
+ <p>Whichever case convention you use, please use it consistently!
+
+ <p>Entries in indices other than the concept index are symbol names in
+programming languages, or program names; these names are usually
+case-sensitive, so use upper and lower case as required for them.
+
+ <p><a name="index-Index-font-types-607"></a>By default, entries for a concept index are printed in a small roman
+font and entries for the other indices are printed in a small
+<code>@code</code> font. You may change the way part of an entry is
+printed with the usual Texinfo commands, such as <code>@file</code> for
+file names (see <a href="#Marking-Text">Marking Text</a>), and <code>@r</code> for the normal roman
+font (see <a href="#Fonts">Fonts</a>).
+
+ <blockquote>
+<b>Caution:</b> Do not use a colon in an index entry. In Info, a colon separates the
+menu entry name from the node name, so a colon in the entry itself
+confuses Info. See <a href="#Menu-Parts">Menu Parts</a>, for more information about the
+structure of a menu entry.
+</blockquote>
+
+<div class="node">
+<p><hr>
+<a name="Combining-Indices"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#New-Indices">New Indices</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Indexing-Commands">Indexing Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indices">Indices</a>
+<br>
+</div>
+
+<h3 class="section">13.4 Combining Indices</h3>
+
+<p><a name="index-Combining-indices-608"></a><a name="index-Indices_002c-combining-them-609"></a>
+Sometimes you will want to combine two disparate indices such as
+functions and concepts, perhaps because you have few enough entries
+that a separate index would look silly.
+
+ <p>You could put functions into the concept index by writing
+<code>@cindex</code> commands for them instead of <code>@findex</code> commands,
+and produce a consistent manual by printing the concept index with the
+title `Function and Concept Index' and not printing the `Function
+Index' at all; but this is not a robust procedure. It works only if
+your document is never included as part of another document that is
+designed to have a separate function index; if your document were to
+be included with such a document, the functions from your document and
+those from the other would not end up together. Also, to make your
+function names appear in the right font in the concept index, you
+would need to enclose every one of them between the braces of
+<code>@code</code>.
+
+<ul class="menu">
+<li><a accesskey="1" href="#syncodeindex">syncodeindex</a>: How to merge two indices, using <code>@code</code>
+ font for the merged-from index.
+<li><a accesskey="2" href="#synindex">synindex</a>: How to merge two indices, using the
+ default font of the merged-to index.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="syncodeindex"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#synindex">synindex</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Combining-Indices">Combining Indices</a>
+<br>
+</div>
+
+<h4 class="subsection">13.4.1 <code>@syncodeindex</code></h4>
+
+<p><a name="index-syncodeindex-610"></a>
+When you want to combine functions and concepts into one index, you
+should index the functions with <code>@findex</code> and index the concepts
+with <code>@cindex</code>, and use the <code>@syncodeindex</code> command to
+redirect the function index entries into the concept index.
+
+ <p>The <code>@syncodeindex</code> command takes two arguments; they are the name
+of the index to redirect, and the name of the index to redirect it to.
+The template looks like this:
+
+<pre class="example"> @syncodeindex <var>from</var> <var>to</var>
+</pre>
+ <p><a name="index-Predefined-names-for-indices-611"></a><a name="index-Two-letter-names-for-indices-612"></a><a name="index-Indices_002c-two-letter-names-613"></a><a name="index-Names-for-indices-614"></a>For this purpose, the indices are given two-letter names:
+
+ <dl>
+<dt><span class="samp">cp</span><dd>concept index
+<br><dt><span class="samp">fn</span><dd>function index
+<br><dt><span class="samp">vr</span><dd>variable index
+<br><dt><span class="samp">ky</span><dd>key index
+<br><dt><span class="samp">pg</span><dd>program index
+<br><dt><span class="samp">tp</span><dd>data type index
+</dl>
+
+ <p>Write an <code>@syncodeindex</code> command before or shortly after the
+end-of-header line at the beginning of a Texinfo file. For example,
+to merge a function index with a concept index, write the
+following:
+
+<pre class="example"> @syncodeindex fn cp
+</pre>
+ <p class="noindent">This will cause all entries designated for the function index to merge
+in with the concept index instead.
+
+ <p>To merge both a variables index and a function index into a concept
+index, write the following:
+
+<pre class="example"> @syncodeindex vr cp
+ @syncodeindex fn cp
+</pre>
+ <p><a name="index-Fonts-for-indices-615"></a>The <code>@syncodeindex</code> command puts all the entries from the `from'
+index (the redirected index) into the <code>@code</code> font, overriding
+whatever default font is used by the index to which the entries are
+now directed. This way, if you direct function names from a function
+index into a concept index, all the function names are printed in the
+<code>@code</code> font as you would expect.
+
+<div class="node">
+<p><hr>
+<a name="synindex"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#syncodeindex">syncodeindex</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Combining-Indices">Combining Indices</a>
+<br>
+</div>
+
+<h4 class="subsection">13.4.2 <code>@synindex</code></h4>
+
+<p><a name="index-synindex-616"></a>
+The <code>@synindex</code> command is nearly the same as the
+<code>@syncodeindex</code> command, except that it does not put the
+`from' index entries into the <code>@code</code> font; rather it puts
+them in the roman font. Thus, you use <code>@synindex</code> when you
+merge a concept index into a function index.
+
+ <p>See <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>, for information about printing an index
+at the end of a book or creating an index menu in an Info file.
+
+<div class="node">
+<p><hr>
+<a name="New-Indices"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Combining-Indices">Combining Indices</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Indices">Indices</a>
+<br>
+</div>
+
+<h3 class="section">13.5 Defining New Indices</h3>
+
+<p><a name="index-Defining-new-indices-617"></a><a name="index-Indices_002c-defining-new-618"></a><a name="index-New-index-defining-619"></a><a name="index-defindex-620"></a><a name="index-defcodeindex-621"></a>
+In addition to the predefined indices, you may use the
+<code>@defindex</code> and <code>@defcodeindex</code> commands to define new
+indices. These commands create new indexing @-commands with which
+you mark index entries. The <code>@defindex</code> command is used like
+this:
+
+<pre class="example"> @defindex <var>name</var>
+</pre>
+ <p>The name of an index should be a two letter word, such as <span class="samp">au</span>.
+For example:
+
+<pre class="example"> @defindex au
+</pre>
+ <p>This defines a new index, called the <span class="samp">au</span> index. At the same
+time, it creates a new indexing command, <code>@auindex</code>, that you
+can use to make index entries. Use this new indexing command just as
+you would use a predefined indexing command.
+
+ <p>For example, here is a section heading followed by a concept index
+entry and two <span class="samp">au</span> index entries.
+
+<pre class="example"> @section Cognitive Semantics
+ @cindex kinesthetic image schemas
+ @auindex Johnson, Mark
+ @auindex Lakoff, George
+</pre>
+ <p class="noindent">(Evidently, <span class="samp">au</span> serves here as an abbreviation for &ldquo;author&rdquo;.)
+
+ <p>In general, Texinfo constructs the new indexing command by
+concatenating the name of the index with <span class="samp">index</span>; thus, defining
+an <span class="samp">xy</span> index leads to the automatic creation of an
+<code>@xyindex</code> command.
+
+ <p>Use the <code>@printindex</code> command to print the index, as you do with
+the predefined indices. For example:
+
+<pre class="example"> @node Author Index
+ @unnumbered Author Index
+
+ @printindex au
+</pre>
+ <p>The <code>@defcodeindex</code> is like the <code>@defindex</code> command,
+except that, in the printed output, it prints entries in an
+<code>@code</code> font by default instead of a roman font.
+
+ <p>You should define new indices before the end-of-header line of a
+Texinfo file, and (of course) before any <code>@synindex</code> or
+<code>@syncodeindex</code> commands (see <a href="#Texinfo-File-Header">Texinfo File Header</a>).
+
+<div class="node">
+<p><hr>
+<a name="Insertions"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Breaks">Breaks</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Indices">Indices</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">14 Special Insertions</h2>
+
+<p><a name="index-Inserting-special-characters-and-symbols-622"></a><a name="index-Special-insertions-623"></a>
+Texinfo provides several commands for inserting characters that have
+special meaning in Texinfo, such as braces, and for other graphic
+elements that do not correspond to simple characters you can type.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Atsign-Braces-Comma">Atsign Braces Comma</a>: Inserting @ and {} and ,.
+<li><a accesskey="2" href="#Inserting-Space">Inserting Space</a>: How to insert the right amount of space
+ within a sentence.
+<li><a accesskey="3" href="#Inserting-Accents">Inserting Accents</a>: How to insert accents and special characters.
+<li><a accesskey="4" href="#Dots-Bullets">Dots Bullets</a>: How to insert dots and bullets.
+<li><a accesskey="5" href="#TeX-and-copyright">TeX and copyright</a>: How to insert the TeX logo
+ and the copyright symbol.
+<li><a accesskey="6" href="#pounds">pounds</a>: How to insert the pounds currency symbol.
+<li><a accesskey="7" href="#minus">minus</a>: How to insert a minus sign.
+<li><a accesskey="8" href="#math">math</a>: How to format a mathematical expression.
+<li><a accesskey="9" href="#Glyphs">Glyphs</a>: How to indicate results of evaluation,
+ expansion of macros, errors, etc.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Atsign-Braces-Comma"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Inserting-Space">Inserting Space</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Insertions">Insertions</a>
+<br>
+</div>
+
+<h3 class="section">14.1 Inserting @ and {} and ,</h3>
+
+<p><a name="index-Special-characters_002c-inserting-624"></a><a name="index-Commands-to-insert-special-characters-625"></a>
+<span class="samp">@</span> and curly braces are special characters in Texinfo. To insert
+these characters so they appear in text, you must put an <span class="samp">@</span> in
+front of these characters to prevent Texinfo from misinterpreting
+them.
+
+ <p>The comma `,' is a special character only in one uncommon context:
+it separates arguments to commands that take multiple arguments.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Inserting-an-Atsign">Inserting an Atsign</a>
+<li><a accesskey="2" href="#Inserting-Braces">Inserting Braces</a>
+<li><a accesskey="3" href="#Inserting-a-Comma">Inserting a Comma</a>
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Inserting-an-Atsign"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Inserting-Braces">Inserting Braces</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Atsign-Braces-Comma">Atsign Braces Comma</a>
+<br>
+</div>
+
+<h4 class="subsection">14.1.1 Inserting `@' with <code>@@</code></h4>
+
+<p><a name="index-_0040_0040-_0040r_007b_0028literal-_0040samp_007b_0040_0040_007d_0029_007d-626"></a><a name="index-Inserting-_0040_0040-_0040r_007b_0028literal-_0040samp_007b_0040_0040_007d_0029_007d-627"></a>
+<code>@@</code> stands for a single <span class="samp">@</span> in either printed or Info
+output.
+
+ <p>Do not put braces after an <code>@@</code> command.
+
+<div class="node">
+<p><hr>
+<a name="Inserting-Braces"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Inserting-a-Comma">Inserting a Comma</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Inserting-an-Atsign">Inserting an Atsign</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Atsign-Braces-Comma">Atsign Braces Comma</a>
+<br>
+</div>
+
+<h4 class="subsection">14.1.2 Inserting `{' and `}' with <code>@{</code> and <code>@}</code></h4>
+
+<p><a name="index-Braces_002c-inserting-628"></a><a name="index-_0040_007b-_0040r_007b_0028literal-_0040samp_007b_0040_007b_007d_0029_007d-629"></a><a name="index-_0040_007d-_0040r_007b_0028literal-_0040samp_007b_0040_007d_007d_0029_007d-630"></a>
+<code>@{</code> stands for a single <span class="samp">{</span> in either printed or Info
+output.
+
+ <p><code>@}</code> stands for a single <span class="samp">}</span> in either printed or Info
+output.
+
+ <p>Do not put braces after either an <code>@{</code> or an <code>@}</code>
+command.ppp
+
+<div class="node">
+<p><hr>
+<a name="Inserting-a-Comma"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Inserting-Braces">Inserting Braces</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Atsign-Braces-Comma">Atsign Braces Comma</a>
+<br>
+</div>
+
+<h4 class="subsection">14.1.3 Inserting `,' with <code>@comma{}</code></h4>
+
+<p><a name="index-Commas_002c-inserting-631"></a><a name="index-comma-632"></a>
+Ordinarily, a comma `,' is a normal character that can be simply typed
+in your input where you need it.
+
+ <p>However, Texinfo uses the comma as a special character in one uncommon
+context: some commands, such as <code>@acronym</code> (see <a href="#acronym">acronym</a>) and
+<code>@xref</code> (see <a href="#Cross-References">Cross References</a>), as well as user-defined
+macros (see <a href="#Defining-Macros">Defining Macros</a>), can take more than one argument. In
+these cases, the comma character is used to separate arguments.
+
+ <p>Since a comma chacter would confuse Texinfo's parsing for these
+commands, you must use the command <span class="samp">,</span> instead if you want
+to have an actual comma in the output. Here are some examples:
+
+<pre class="example"> @acronym{ABC, A Bizarre @comma{}}
+ @xref{Comma,, The @comma{} symbol}
+ @mymac{One argument@comma{} containing a comma}
+</pre>
+ <p>Although , can be used anywhere, there is no need for it
+anywhere except in this unusual case.
+
+<div class="node">
+<p><hr>
+<a name="Inserting-Space"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Inserting-Accents">Inserting Accents</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Atsign-Braces-Comma">Atsign Braces Comma</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Insertions">Insertions</a>
+<br>
+</div>
+
+<h3 class="section">14.2 Inserting Space</h3>
+
+<p><a name="index-Inserting-space-633"></a><a name="index-Spacing_002c-inserting-634"></a>The following sections describe commands that control spacing of various
+kinds within and after sentences.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Not-Ending-a-Sentence">Not Ending a Sentence</a>: Sometimes a . doesn't end a sentence.
+<li><a accesskey="2" href="#Ending-a-Sentence">Ending a Sentence</a>: Sometimes it does.
+<li><a accesskey="3" href="#Multiple-Spaces">Multiple Spaces</a>: Inserting multiple spaces.
+<li><a accesskey="4" href="#dmn">dmn</a>: How to format a dimension.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Not-Ending-a-Sentence"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Ending-a-Sentence">Ending a Sentence</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Inserting-Space">Inserting Space</a>
+<br>
+</div>
+
+<h4 class="subsection">14.2.1 Not Ending a Sentence</h4>
+
+<p><a name="index-Not-ending-a-sentence-635"></a><a name="index-Sentence-non_002dending-punctuation-636"></a><a name="index-Periods_002c-inserting-637"></a>Depending on whether a period or exclamation point or question mark is
+inside or at the end of a sentence, less or more space is inserted after
+a period in a typeset manual. Since it is not always possible
+to determine when a period ends a sentence and when it is used
+in an abbreviation, special commands are needed in some circumstances.
+Usually, Texinfo can guess how to handle periods, so you do not need to
+use the special commands; you just enter a period as you would if you
+were using a typewriter, which means you put two spaces after the
+period, question mark, or exclamation mark that ends a sentence.
+
+ <p><a name="index-_003ccolon_003e-_0040r_007b_0028suppress-end_002dof_002dsentence-space_0029_007d-638"></a>Use the <code>@:</code> command after a period, question mark,
+exclamation mark, or colon that should not be followed by extra space.
+For example, use <code>@:</code> after periods that end abbreviations
+which are not at the ends of sentences.
+
+ <p>For example,
+
+<pre class="example"> The s.o.p.@: has three parts ...
+ The s.o.p. has three parts ...
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+The s.o.p. has three parts <small class="dots">...</small><br>
+The s.o.p. has three parts <small class="dots">...</small>
+</blockquote>
+
+<p class="noindent">(Incidentally, <span class="samp">s.o.p.</span> is an abbreviation for &ldquo;Standard Operating
+Procedure&rdquo;.)
+
+ <p><code>@:</code> has no effect on the Info and HTML output. In Docbook and
+XML, the previous punctuation character (.?!:) is output as an entity
+instead of as the normal character: <span class="samp">&amp;period; &amp;quest; &amp;excl;
+&amp;colon;</span>. This gives further processors a chance to notice and not
+add the usual extra space.
+
+ <p>Do not put braces after <code>@:</code> (or any non-alphabetic command).
+
+<div class="node">
+<p><hr>
+<a name="Ending-a-Sentence"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Multiple-Spaces">Multiple Spaces</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Not-Ending-a-Sentence">Not Ending a Sentence</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Inserting-Space">Inserting Space</a>
+<br>
+</div>
+
+<h4 class="subsection">14.2.2 Ending a Sentence</h4>
+
+<p><a name="index-Ending-a-Sentence-639"></a><a name="index-Sentence-ending-punctuation-640"></a>
+<a name="index-_002e--_0040r_007b_0028end-of-sentence_0029_007d-641"></a><a name="index-_0021-_0040r_007b_0028end-of-sentence_0029_007d-642"></a><a name="index-_003f-_0040r_007b_0028end-of-sentence_0029_007d-643"></a>Use <code>@.</code> instead of a period, <code>@!</code> instead of an
+exclamation point, and <code>@?</code> instead of a question mark at the end
+of a sentence that ends with a capital letter. Otherwise, TeX
+will think the letter is an abbreviation and will not insert the correct
+end-of-sentence spacing. Here is an example:
+
+<pre class="example"> Give it to M.I.B. and to M.E.W@. Also, give it to R.J.C@.
+ Give it to M.I.B. and to M.E.W. Also, give it to R.J.C.
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+Give it to M.I.B. and to M.E.W. Also, give it to R.J.C.<br>
+Give it to M.I.B. and to M.E.W. Also, give it to R.J.C.
+</blockquote>
+
+ <p>In the Info file output, <code>@.</code> is equivalent to a simple
+<span class="samp">.</span>; likewise for <code>@!</code> and <code>@?</code>.
+
+ <p>The meanings of <code>@:</code> and <code>@.</code> in Texinfo are designed to
+work well with the Emacs sentence motion commands (see <a href="emacs.html#Sentences">Sentences (The GNU Emacs Manual)</a>).
+
+ <p>Do not put braces after any of these commands.
+
+<div class="node">
+<p><hr>
+<a name="Multiple-Spaces"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#dmn">dmn</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Ending-a-Sentence">Ending a Sentence</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Inserting-Space">Inserting Space</a>
+<br>
+</div>
+
+<h4 class="subsection">14.2.3 Multiple Spaces</h4>
+
+<p><a name="index-Multiple-spaces-644"></a><a name="index-Whitespace_002c-inserting-645"></a><a name="index-Space_002c-inserting-horizontal-646"></a><a name="index-_003cspace_003e-647"></a><a name="index-_003ctab_003e-648"></a><a name="index-_003cnewline_003e-649"></a>
+Ordinarily, TeX collapses multiple whitespace characters (space, tab,
+and newline) into a single space. Info output, on the other hand,
+preserves whitespace as you type it, except for changing a newline into
+a space; this is why it is important to put two spaces at the end of
+sentences in Texinfo documents.
+
+ <p>Occasionally, you may want to actually insert several consecutive
+spaces, either for purposes of example (what your program does with
+multiple spaces as input), or merely for purposes of appearance in
+headings or lists. Texinfo supports three commands:
+<code>@</code><kbd>SPACE</kbd>, <code>@</code><kbd>TAB</kbd>, and <code>@</code><kbd>NL</kbd>, all of
+which insert a single space into the output. (Here,
+<code>@</code><kbd>SPACE</kbd> represents an <span class="samp">@</span> character followed by a
+space, i.e., <span class="samp">@ </span>, and <kbd>TAB</kbd> and <kbd>NL</kbd> represent the tab
+character and end-of-line, i.e., when <span class="samp">@</span> is the last character on
+a line.)
+
+ <p>For example,
+<pre class="example"> Spacey@ @ @ @
+ example.
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> Spacey example.
+</pre>
+ <p>Other possible uses of <code>@</code><kbd>SPACE</kbd> have been subsumed by
+<code>@multitable</code> (see <a href="#Multi_002dcolumn-Tables">Multi-column Tables</a>).
+
+ <p>Do not follow any of these commands with braces.
+
+ <p>To produce a non-breakable space, see <a href="#tie"><code>@tie</code></a>.
+
+<div class="node">
+<p><hr>
+<a name="dmn"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Multiple-Spaces">Multiple Spaces</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Inserting-Space">Inserting Space</a>
+<br>
+</div>
+
+<h4 class="subsection">14.2.4 <code>@dmn</code>{<var>dimension</var>}: Format a Dimension</h4>
+
+<p><a name="index-Thin-space-between-number_002c-dimension-650"></a><a name="index-Dimension-formatting-651"></a><a name="index-Format-a-dimension-652"></a><a name="index-dmn-653"></a>
+At times, you may want to write <span class="samp">12pt</span> or
+<span class="samp">8.5in</span> with little or no space between the number and the
+abbreviation for the dimension. You can use the <code>@dmn</code> command
+to do this. On seeing the command, TeX inserts just enough space
+for proper typesetting; the Info formatting commands insert no space
+at all, since the Info file does not require it.
+
+ <p>To use the <code>@dmn</code> command, write the number and then follow it
+immediately, with no intervening space, by <code>@dmn</code>, and then by
+the dimension within braces. For example,
+
+<pre class="example"> A4 paper is 8.27@dmn{in} wide.
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+A4 paper is 8.27<span class="dmn">in</span> wide.
+</blockquote>
+
+ <p>Not everyone uses this style. Some people prefer <span class="samp">8.27&nbsp;in.@:</span><!-- /@w -->
+or <span class="samp">8.27&nbsp;inches</span><!-- /@w --> to <span class="samp">8.27@dmn{in}</span> in the Texinfo file.
+In these cases, however, the formatters may insert a line break between
+the number and the dimension, so use <code>@w</code> (see <a href="#w">w</a>). Also, if
+you write a period after an abbreviation within a sentence, you should
+write <span class="samp">@:</span> after the period to prevent TeX from inserting extra
+whitespace, as shown here. See <a href="#Not-Ending-a-Sentence">Not Ending a Sentence</a>.
+
+<div class="node">
+<p><hr>
+<a name="Inserting-Accents"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Dots-Bullets">Dots Bullets</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Inserting-Space">Inserting Space</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Insertions">Insertions</a>
+<br>
+</div>
+
+<h3 class="section">14.3 Inserting Accents</h3>
+
+<p><a name="index-Inserting-accents-654"></a><a name="index-Accents_002c-inserting-655"></a><a name="index-Floating-accents_002c-inserting-656"></a>
+Here is a table with the commands Texinfo provides for inserting
+floating accents. The commands with non-alphabetic names do not take
+braces around their argument (which is taken to be the next character).
+(Exception: <code>@,</code> <em>does</em> take braces around its argument.)
+This is so as to make the source as convenient to type and read as
+possible, since accented characters are very common in some languages.
+
+ <p>To get the true accented characters output in Info, and not just the
+ASCII transliterations, you can use the <span class="option">--enable-encoding</span>
+option to <span class="command">makeinfo</span> (see <a href="#makeinfo-options">makeinfo options</a>).
+
+ <p><a name="index-_0022-_0040r_007b_0028umlaut-accent_0029_007d-657"></a><a name="index-Umlaut-accent-658"></a><a name="index-_0027-_0040r_007b_0028umlaut-accent_0029_007d-659"></a><a name="index-Acute-accent-660"></a><a name="index-_003d-_0040r_007b_0028macron-accent_0029_007d-661"></a><a name="index-Macron-accent-662"></a><a name="index-_005e-_0040r_007b_0028circumflex-accent_0029_007d-663"></a><a name="index-Circumflex-accent-664"></a><a name="index-_0060-_0040r_007b_0028grave-accent_0029_007d-665"></a><a name="index-Grave-accent-666"></a><a name="index-_007e-_0040r_007b_0028tilde-accent_0029_007d-667"></a><a name="index-Tilde-accent-668"></a><a name="index-_002c-_0040r_007b_0028cedilla-accent_0029_007d-669"></a><a name="index-Cedilla-accent-670"></a><a name="index-dotaccent-671"></a><a name="index-Dot-accent-672"></a><a name="index-H-_0040r_007b_0028Hungarian-umlaut-accent_0029_007d-673"></a><a name="index-Hungarian-umlaut-accent-674"></a><a name="index-ringaccent-675"></a><a name="index-Ring-accent-676"></a><a name="index-tieaccent-677"></a><a name="index-Tie_002dafter-accent-678"></a><a name="index-u-_0040r_007b_0028breve-accent_0029_007d-679"></a><a name="index-Breve-accent-680"></a><a name="index-ubaraccent-681"></a><a name="index-Underbar-accent-682"></a><a name="index-udotaccent-683"></a><a name="index-Underdot-accent-684"></a><a name="index-v-_0040r_007b_0028check-accent_0029_007d-685"></a><a name="index-Hacek-accent-686"></a><a name="index-Check-accent-687"></a><a name="index-Caron-accent-688"></a>
+ <p><table summary=""><tr align="left"><td valign="top">Command </td><td valign="top">Output </td><td valign="top">What
+<br></td></tr><tr align="left"><td valign="top"><tt>@"o</tt> </td><td valign="top">&ouml; </td><td valign="top">umlaut accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@'o</tt> </td><td valign="top">&oacute; </td><td valign="top">acute accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@,{c}</tt> </td><td valign="top">&ccedil; </td><td valign="top">cedilla accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@=o</tt> </td><td valign="top">o&macr; </td><td valign="top">macron/overbar accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@^o</tt> </td><td valign="top">&ocirc; </td><td valign="top">circumflex accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@`o</tt> </td><td valign="top">&ograve; </td><td valign="top">grave accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@~o</tt> </td><td valign="top">&otilde; </td><td valign="top">tilde accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@dotaccent{o}</tt> </td><td valign="top">o. </td><td valign="top">overdot accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@H{o}</tt> </td><td valign="top">o'' </td><td valign="top">long Hungarian umlaut
+<br></td></tr><tr align="left"><td valign="top"><tt>@ringaccent{o}</tt> </td><td valign="top">o* </td><td valign="top">ring accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@tieaccent{oo}</tt> </td><td valign="top">oo[ </td><td valign="top">tie-after accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@u{o}</tt> </td><td valign="top">o( </td><td valign="top">breve accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@ubaraccent{o}</tt> </td><td valign="top">o_ </td><td valign="top">underbar accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@udotaccent{o}</tt> </td><td valign="top">.o </td><td valign="top">underdot accent
+<br></td></tr><tr align="left"><td valign="top"><tt>@v{o}</tt> </td><td valign="top">o&lt; </td><td valign="top">hacek/check/caron accent
+ <br></td></tr></table>
+
+ <p>This table lists the Texinfo commands for inserting other characters
+commonly used in languages other than English.
+
+ <p><a name="index-questiondown-689"></a><a name="index-_0040questiondown_007b_007d-690"></a><a name="index-exclamdown-691"></a><a name="index-_0040exclamdown_007b_007d-692"></a><a name="index-aa-693"></a><a name="index-_0040aa_007b_007d-694"></a><a name="index-AA-695"></a><a name="index-_0040AA_007b_007d-696"></a><a name="index-ae-697"></a><a name="index-_0040ae_007b_007d-698"></a><a name="index-AE-699"></a><a name="index-_0040AE_007b_007d-700"></a><a name="index-dotless-701"></a><a name="index-_0040dotless_007bi_007d-_0028dotless-i_0029-702"></a><a name="index-_0040dotless_007bj_007d-_0028dotless-j_0029-703"></a><a name="index-Dotless-i_002c-j-704"></a><a name="index-l-705"></a><a name="index-_0040l_007b_007d-706"></a><a name="index-L-707"></a><a name="index-_0040L_007b_007d-708"></a><a name="index-o-709"></a><a name="index-_0040o_007b_007d-710"></a><a name="index-O-711"></a><a name="index-_0040O_007b_007d-712"></a><a name="index-oe-713"></a><a name="index-_0040oe_007b_007d-714"></a><a name="index-OE-715"></a><a name="index-_0040OE_007b_007d-716"></a><a name="index-Romance-ordinals-717"></a><a name="index-Ordinals_002c-Romance-718"></a><a name="index-Feminine-ordinal-719"></a><a name="index-ordf-720"></a><a name="index-_0040ordf_007b_007d-721"></a><a name="index-Masculine-ordinal-722"></a><a name="index-ordm-723"></a><a name="index-_0040ordm_007b_007d-724"></a><a name="index-ss-725"></a><a name="index-_0040ss_007b_007d-726"></a><a name="index-Es_002dzet-727"></a><a name="index-Sharp-S-728"></a><a name="index-German-S-729"></a>
+ <p><table summary=""><tr align="left"><td valign="top"><tt>@exclamdown{}</tt> </td><td valign="top">&iexcl; </td><td valign="top">upside-down !
+<br></td></tr><tr align="left"><td valign="top"><tt>@questiondown{}</tt> </td><td valign="top">&iquest; </td><td valign="top">upside-down ?
+<br></td></tr><tr align="left"><td valign="top"><tt>@aa{} @AA{}</tt> </td><td valign="top">&aring; &Aring; </td><td valign="top">a,A with circle
+<br></td></tr><tr align="left"><td valign="top"><tt>@ae{} @AE{}</tt> </td><td valign="top">&aelig; &AElig; </td><td valign="top">ae,AE ligatures
+<br></td></tr><tr align="left"><td valign="top"><tt>@dotless{i}</tt> </td><td valign="top">i </td><td valign="top">dotless i
+<br></td></tr><tr align="left"><td valign="top"><tt>@dotless{j}</tt> </td><td valign="top">j </td><td valign="top">dotless j
+<br></td></tr><tr align="left"><td valign="top"><tt>@l{} @L{}</tt> </td><td valign="top">/l /L </td><td valign="top">suppressed-L,l
+<br></td></tr><tr align="left"><td valign="top"><tt>@o{} @O{}</tt> </td><td valign="top">&oslash; &Oslash; </td><td valign="top">O,o with slash
+<br></td></tr><tr align="left"><td valign="top"><tt>@oe{} @OE{}</tt> </td><td valign="top">&oelig; &OElig; </td><td valign="top">oe,OE ligatures
+<br></td></tr><tr align="left"><td valign="top"><tt>@ordf{} @ordm{}</tt> </td><td valign="top">&ordf; &ordm; </td><td valign="top">Spanish ordinals
+<br></td></tr><tr align="left"><td valign="top"><tt>@ss{}</tt> </td><td valign="top">&szlig; </td><td valign="top">es-zet or sharp S
+ <br></td></tr></table>
+
+<div class="node">
+<p><hr>
+<a name="Dots-Bullets"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#TeX-and-copyright">TeX and copyright</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Inserting-Accents">Inserting Accents</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Insertions">Insertions</a>
+<br>
+</div>
+
+<h3 class="section">14.4 Inserting Ellipsis and Bullets</h3>
+
+<p><a name="index-Dots_002c-inserting-730"></a><a name="index-Bullets_002c-inserting-731"></a><a name="index-Ellipsis_002c-inserting-732"></a><a name="index-Inserting-ellipsis-733"></a><a name="index-Inserting-dots-734"></a><a name="index-Special-typesetting-commands-735"></a><a name="index-Typesetting-commands-for-dots_002c-etc_002e-736"></a>
+An <dfn>ellipsis</dfn> (a line of dots) is not typeset as a string of
+periods, so a special command is used for ellipsis in Texinfo. The
+<code>@bullet</code> command is special, too. Each of these commands is
+followed by a pair of braces, <span class="samp">{}</span>, without any whitespace
+between the name of the command and the braces. (You need to use braces
+with these commands because you can use them next to other text; without
+the braces, the formatters would be confused. See <a href="#Command-Syntax">@-Command Syntax</a>, for further information.)
+
+<ul class="menu">
+<li><a accesskey="1" href="#dots">dots</a>: How to insert dots ...
+<li><a accesskey="2" href="#bullet">bullet</a>: How to insert a bullet.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="dots"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#bullet">bullet</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Dots-Bullets">Dots Bullets</a>
+<br>
+</div>
+
+<h4 class="subsection">14.4.1 <code>@dots</code>{} (<small class="dots">...</small>) and <code>@enddots</code>{} (<small class="enddots">....</small>)</h4>
+
+<p><a name="index-dots-737"></a><a name="index-enddots-738"></a><a name="index-Inserting-dots-739"></a><a name="index-Dots_002c-inserting-740"></a>
+Use the <code>@dots{}</code> command to generate an ellipsis, which is
+three dots in a row, appropriately spaced <small class="dots">...</small> like so. Do
+not simply write three periods in the input file; that would work for
+the Info file output, but would produce the wrong amount of space
+between the periods in the printed manual.
+
+ <p>Similarly, the <code>@enddots{}</code> command generates an
+end-of-sentence ellipsis, which has different spacing afterwards,
+<small class="enddots">....</small> Look closely to see the difference.
+
+<div class="node">
+<p><hr>
+<a name="bullet"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#dots">dots</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Dots-Bullets">Dots Bullets</a>
+<br>
+</div>
+
+<h4 class="subsection">14.4.2 <code>@bullet</code>{} (&bull;)</h4>
+
+<p><a name="index-bullet-741"></a>
+Use the <code>@bullet{}</code> command to generate a large round dot, or
+the closest possible thing to one. In Info, an asterisk is used.
+
+ <p>Here is a bullet: &bull;
+
+ <p>When you use <code>@bullet</code> in <code>@itemize</code>, you do not need to
+type the braces, because <code>@itemize</code> supplies them.
+(See <a href="#itemize"><code>@itemize</code></a>.)
+
+<div class="node">
+<p><hr>
+<a name="TeX-and-copyright"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#pounds">pounds</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Dots-Bullets">Dots Bullets</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Insertions">Insertions</a>
+<br>
+</div>
+
+<h3 class="section">14.5 Inserting TeX and Legal Symbols: &copy;, &reg;</h3>
+
+<p>The logo `TeX' is typeset in a special fashion and it needs an
+@-command. The copyright and registered symbols, `&copy;' and
+`&reg;', is also special. Each of these commands is
+followed by a pair of braces, <span class="samp">{}</span>, without any whitespace
+between the name of the command and the braces.
+
+<ul class="menu">
+<li><a accesskey="1" href="#tex">tex</a>: The TeX logos.
+<li><a accesskey="2" href="#copyright-symbol">copyright symbol</a>: The copyright symbol (c in a circle).
+<li><a accesskey="3" href="#registered-symbol">registered symbol</a>: The registered symbol (R in a circle).
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="tex"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#copyright-symbol">copyright symbol</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#TeX-and-copyright">TeX and copyright</a>
+<br>
+</div>
+
+<h4 class="subsection">14.5.1 <code>@TeX</code>{} (TeX) and <code>@LaTeX</code>{} (LaTeX)</h4>
+
+<p><a name="index-TeX-742"></a><a name="index-LaTeX-743"></a>
+Use the <code>@TeX{}</code> command to generate `TeX'. In a printed
+manual, this is a special logo that is different from three ordinary
+letters. In Info, it just looks like <span class="samp">TeX</span>.
+
+ <p>Similarly, use the <code>@LaTeX{}</code> command to generate `LaTeX',
+which is even more special in printed manuals (and different from the
+incorrect <code>La@TeX{}</code>. In Info, the result is just
+<span class="samp">LaTeX</span>. (LaTeX is another macro package built on top of
+TeX, very loosely analogous to Texinfo in that it emphasizes
+logical structure, but much (much) larger.)
+
+ <p>The spelling of these commands are unusual among Texinfo commands in
+that they use both uppercase and lowercase letters.
+
+<div class="node">
+<p><hr>
+<a name="copyright-symbol"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#registered-symbol">registered symbol</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#tex">tex</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#TeX-and-copyright">TeX and copyright</a>
+<br>
+</div>
+
+<h4 class="subsection">14.5.2 <code>@copyright{}</code> (&copy;)</h4>
+
+<p><a name="index-copyright-744"></a>
+Use the <code>@copyright{}</code> command to generate the copyright
+symbol, `&copy;'. Where possible, this is a <span class="samp">c</span>
+inside a circle; in Info, this is <span class="samp">(C)</span>.
+
+<div class="node">
+<p><hr>
+<a name="registered-symbol"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#copyright-symbol">copyright symbol</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#TeX-and-copyright">TeX and copyright</a>
+<br>
+</div>
+
+<h4 class="subsection">14.5.3 <code>@registeredsymbol{}</code> (&reg;)</h4>
+
+<p><a name="index-registeredsymbol-745"></a>
+Use the <code>@registeredsymbol{}</code> command to generate the
+registered symbol, `&reg;'. Where possible, this is an
+<span class="samp">R</span> inside a circle; in Info, this is <span class="samp">(R)</span>.
+
+<div class="node">
+<p><hr>
+<a name="pounds"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#minus">minus</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#TeX-and-copyright">TeX and copyright</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Insertions">Insertions</a>
+<br>
+</div>
+
+<h3 class="section">14.6 <code>@pounds</code>{} (&pound;): Pounds Sterling</h3>
+
+<p><a name="index-pounds-746"></a>
+Use the <code>@pounds{}</code> command to generate `&pound;'. In a
+printed manual, this is the symbol for the currency pounds sterling.
+In Info, it is a <span class="samp">#</span>. Other currency symbols are unfortunately not
+available.
+
+<div class="node">
+<p><hr>
+<a name="minus"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#math">math</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#pounds">pounds</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Insertions">Insertions</a>
+<br>
+</div>
+
+<h3 class="section">14.7 <code>@minus</code>{} (&minus;): Inserting a Minus Sign</h3>
+
+<p><a name="index-minus-747"></a>
+<a name="index-Em-dash_002c-compared-to-minus-sign-748"></a><a name="index-Hyphen_002c-compared-to-minus-749"></a>Use the <code>@minus{}</code> command to generate a minus sign. In a
+fixed-width font, this is a single hyphen, but in a proportional font,
+the symbol is the customary length for a minus sign&mdash;a little longer
+than a hyphen, shorter than an em-dash:
+
+<pre class="display"> <span class="samp">&minus;</span> is a minus sign generated with <span class="samp">@minus{}</span>,
+
+ `-' is a hyphen generated with the character <span class="samp">-</span>,
+
+ `&mdash;' is an em-dash for text.
+</pre>
+ <p class="noindent">In the fixed-width font used by Info, <code>@minus{}</code> is the same
+as a hyphen.
+
+ <p>You should not use <code>@minus{}</code> inside <code>@code</code> or
+<code>@example</code> because the width distinction is not made in the
+fixed-width font they use.
+
+ <p>When you use <code>@minus</code> to specify the mark beginning each entry in
+an itemized list, you do not need to type the braces
+(see <a href="#itemize"><code>@itemize</code></a>).
+
+<div class="node">
+<p><hr>
+<a name="math"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Glyphs">Glyphs</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#minus">minus</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Insertions">Insertions</a>
+<br>
+</div>
+
+<h3 class="section">14.8 <code>@math</code>: Inserting Mathematical Expressions</h3>
+
+<p><a name="index-math-750"></a><a name="index-Mathematical-expressions-751"></a><a name="index-Formulas_002c-mathematical-752"></a>
+You can write a short mathematical expression with the <code>@math</code>
+command. Write the mathematical expression between braces, like this:
+
+<pre class="example"> @math{(a + b)(a + b) = a^2 + 2ab + b^2}
+</pre>
+ <p class="noindent">This produces the following in Info and HTML:
+
+<pre class="example"> (a + b)(a + b) = a^2 + 2ab + b^2
+</pre>
+ <p>Thus, the <code>@math</code> command has no effect on the Info and HTML
+output; <span class="command">makeinfo</span> just reproduces the input, it does not try
+to interpret the mathematics in any way.
+
+ <p><code>@math</code> implies <code>@tex</code>. This not only makes it possible to
+write superscripts and subscripts (as in the above example), but also
+allows you to use any of the plain TeX math control sequences. It's
+conventional to use <span class="samp">\</span> instead of <span class="samp">@</span> for these commands.
+As in:
+<pre class="example"> @math{\sin 2\pi \equiv \cos 3\pi}
+</pre>
+ <p class="noindent">which looks like the input in Info and HTML:
+<pre class="example"> \sin 2\pi \equiv \cos 3\pi
+</pre>
+ <p><a name="index-_005c-_0040r_007b_0028literal-_005c-in-_0040code_007b_0040_0040math_007d_0029_007d-753"></a>Since <span class="samp">\</span> is an escape character inside <code>@math</code>, you can use
+<code>@\</code> to get a literal backslash (<code>\\</code> will work in TeX,
+but you'll get the literal <span class="samp">\\</span> in Info). <code>@\</code> is not
+defined outside of <code>@math</code>, since a <span class="samp">\</span> ordinarily produces a
+literal <span class="samp">\</span>.
+
+ <p><a name="index-Displayed-equations-754"></a><a name="index-Equations_002c-displayed-755"></a>For displayed equations, you must at present use TeX directly
+(see <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a>).
+
+<div class="node">
+<p><hr>
+<a name="Glyphs"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#math">math</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Insertions">Insertions</a>
+<br>
+</div>
+
+<h3 class="section">14.9 Glyphs for Examples</h3>
+
+<p><a name="index-Glyphs-756"></a><a name="index-Examples_002c-glyphs-for-757"></a>
+In Texinfo, code is often illustrated in examples that are delimited
+by <code>@example</code> and <code>@end example</code>, or by <code>@lisp</code> and
+<code>@end lisp</code>. In such examples, you can indicate the results of
+evaluation or an expansion using <span class="samp">=&gt;</span> or
+<span class="samp">==&gt;</span>. Likewise, there are commands to insert glyphs
+to indicate
+printed output, error messages, equivalence of expressions, and the
+location of point.
+
+ <p>The glyph-insertion commands do not need to be used within an example, but
+most often they are. Every glyph-insertion command is followed by a pair of
+left- and right-hand braces.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Glyphs-Summary">Glyphs Summary</a>
+<li><a accesskey="2" href="#result">result</a>: How to show the result of expression.
+<li><a accesskey="3" href="#expansion">expansion</a>: How to indicate an expansion.
+<li><a accesskey="4" href="#Print-Glyph">Print Glyph</a>: How to indicate printed output.
+<li><a accesskey="5" href="#Error-Glyph">Error Glyph</a>: How to indicate an error message.
+<li><a accesskey="6" href="#Equivalence">Equivalence</a>: How to indicate equivalence.
+<li><a accesskey="7" href="#Point-Glyph">Point Glyph</a>: How to indicate the location of point.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Glyphs-Summary"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#result">result</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Glyphs">Glyphs</a>
+<br>
+</div>
+
+<h4 class="subsection">14.9.1 Glyphs Summary</h4>
+
+<p>Here are the different glyph commands:
+
+ <dl>
+<dt>=&gt;<dd><code>@result{}</code> points to the result of an expression.
+
+ <br><dt>==&gt;<dd><code>@expansion{}</code> shows the results of a macro expansion.
+
+ <br><dt>-|<dd><code>@print{}</code> indicates printed output.
+
+ <br><dt>error--&gt;<dd><code>@error{}</code> indicates that the following text is an error
+message.
+
+ <br><dt>==<dd><code>@equiv{}</code> indicates the exact equivalence of two forms.
+
+ <br><dt>-!-<dd><code>@point{}</code> shows the location of point.
+</dl>
+
+<ul class="menu">
+<li><a accesskey="1" href="#result">result</a>
+<li><a accesskey="2" href="#expansion">expansion</a>
+<li><a accesskey="3" href="#Print-Glyph">Print Glyph</a>
+<li><a accesskey="4" href="#Error-Glyph">Error Glyph</a>
+<li><a accesskey="5" href="#Equivalence">Equivalence</a>
+<li><a accesskey="6" href="#Point-Glyph">Point Glyph</a>
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="result"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#expansion">expansion</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Glyphs-Summary">Glyphs Summary</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Glyphs">Glyphs</a>
+<br>
+</div>
+
+<h4 class="subsection">14.9.2 <code>@result{}</code> (=&gt;): Indicating Evaluation</h4>
+
+<p><a name="index-Result-of-an-expression-758"></a><a name="index-Indicating-evaluation-759"></a><a name="index-Evaluation-glyph-760"></a><a name="index-Value-of-an-expression_002c-indicating-761"></a><a name="index-result-762"></a>
+Use the <code>@result{}</code> command to indicate the result of
+evaluating an expression.
+
+ <p>The <code>@result{}</code> command is displayed as <span class="samp">=&gt;</span> in
+Info and HTML and as a true double stemmed arrow in the printed output.
+
+ <p>Thus, the following,
+
+<pre class="lisp"> (cdr '(1 2 3))
+ =&gt; (2 3)
+</pre>
+ <p class="noindent">may be read as &ldquo;<code>(cdr '(1 2 3))</code> evaluates to <code>(2 3)</code>&rdquo;.
+
+<div class="node">
+<p><hr>
+<a name="expansion"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Print-Glyph">Print Glyph</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#result">result</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Glyphs">Glyphs</a>
+<br>
+</div>
+
+<h4 class="subsection">14.9.3 <code>@expansion{}</code> (==&gt;): Indicating an Expansion</h4>
+
+<p><a name="index-Expansion_002c-indicating-763"></a><a name="index-Macro-expansion_002c-indicating-764"></a><a name="index-expansion-765"></a>
+When an expression is a macro call, it expands into a new expression.
+You can indicate the result of the expansion with the
+<code>@expansion{}</code> command.
+
+ <p>The <code>@expansion{}</code> command is displayed as <span class="samp">==&gt;</span>
+in Info and HTML, and as a long arrow with a flat base in the printed
+output.
+
+ <p>For example, the following
+
+<pre class="example"> @lisp
+ (third '(a b c))
+ @expansion{} (car (cdr (cdr '(a b c))))
+ @result{} c
+ @end lisp
+</pre>
+ <p class="noindent">produces
+
+<pre class="lisp"> (third '(a b c))
+ ==&gt; (car (cdr (cdr '(a b c))))
+ =&gt; c
+</pre>
+ <p class="noindent">which may be read as:
+
+ <blockquote>
+<code>(third '(a b c))</code> expands to <code>(car (cdr (cdr '(a b c))))</code>;
+the result of evaluating the expression is <code>c</code>.
+</blockquote>
+
+<p class="noindent">Often, as in this case, an example looks better if the
+<code>@expansion{}</code> and <code>@result{}</code> commands are indented.
+
+<div class="node">
+<p><hr>
+<a name="Print-Glyph"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Error-Glyph">Error Glyph</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#expansion">expansion</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Glyphs">Glyphs</a>
+<br>
+</div>
+
+<h4 class="subsection">14.9.4 <code>@print{}</code> (-|): Indicating Printed Output</h4>
+
+<p><a name="index-Printed-output_002c-indicating-766"></a><a name="index-print-767"></a>
+Sometimes an expression will print output during its execution. You
+can indicate the printed output with the <code>@print{}</code> command.
+
+ <p>The <code>@print{}</code> command is displayed as <span class="samp">-|</span> in Info
+and HTML and (similarly) as a horizontal dash butting against a
+vertical bar in the printed output.
+
+ <p>In the following example, the printed text is indicated with
+<span class="samp">-|</span>, and the value of the expression follows on the
+last line.
+
+<pre class="lisp"> (progn (print 'foo) (print 'bar))
+ -| foo
+ -| bar
+ =&gt; bar
+</pre>
+ <p class="noindent">In a Texinfo source file, this example is written as follows:
+
+<pre class="lisp"> @lisp
+ (progn (print 'foo) (print 'bar))
+ @print{} foo
+ @print{} bar
+ @result{} bar
+ @end lisp
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Error-Glyph"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Equivalence">Equivalence</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Print-Glyph">Print Glyph</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Glyphs">Glyphs</a>
+<br>
+</div>
+
+<h4 class="subsection">14.9.5 <code>@error{}</code> (error--&gt;): Indicating an Error Message</h4>
+
+<p><a name="index-Error-message_002c-indicating-768"></a><a name="index-error-769"></a>
+A piece of code may cause an error when you evaluate it. You can
+designate the error message with the <code>@error{}</code> command.
+
+ <p>The <code>@error{}</code> command is displayed as <span class="samp">error--&gt;</span> in Info
+and HTML and as the word `error' in a box in the printed output.
+
+ <p>Thus,
+
+<pre class="example"> @lisp
+ (+ 23 'x)
+ @error{} Wrong type argument: integer-or-marker-p, x
+ @end lisp
+</pre>
+ <p class="noindent">produces
+
+<pre class="lisp"> (+ 23 'x)
+ error--&gt; Wrong type argument: integer-or-marker-p, x
+</pre>
+ <p class="noindent">This indicates that the following error message is printed
+when you evaluate the expression:
+
+<pre class="lisp"> Wrong type argument: integer-or-marker-p, x
+</pre>
+ <p><span class="samp">error--&gt;</span> itself is not part of the error message.
+
+<div class="node">
+<p><hr>
+<a name="Equivalence"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Point-Glyph">Point Glyph</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Error-Glyph">Error Glyph</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Glyphs">Glyphs</a>
+<br>
+</div>
+
+<h4 class="subsection">14.9.6 <code>@equiv{}</code> (==): Indicating Equivalence</h4>
+
+<p><a name="index-Equivalence_002c-indicating-770"></a><a name="index-equiv-771"></a>
+Sometimes two expressions produce identical results. You can indicate the
+exact equivalence of two forms with the <code>@equiv{}</code> command.
+
+ <p>The <code>@equiv{}</code> command is displayed as <span class="samp">==</span> in Info
+and HTML and as a standard mathematical equivalence sign (three
+parallel horizontal lines) in the printed output.
+
+ <p>Thus,
+
+<pre class="example"> @lisp
+ (make-sparse-keymap) @equiv{} (list 'keymap)
+ @end lisp
+</pre>
+ <p class="noindent">produces
+
+<pre class="lisp"> (make-sparse-keymap) == (list 'keymap)
+</pre>
+ <p class="noindent">This indicates that evaluating <code>(make-sparse-keymap)</code> produces
+identical results to evaluating <code>(list 'keymap)</code>.
+
+<div class="node">
+<p><hr>
+<a name="Point-Glyph"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Equivalence">Equivalence</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Glyphs">Glyphs</a>
+<br>
+</div>
+
+<h4 class="subsection">14.9.7 <code>@point{}</code> (-!-): Indicating Point in a Buffer</h4>
+
+<p><a name="index-Point_002c-indicating-in-a-buffer-772"></a><a name="index-point-773"></a>
+Sometimes you need to show an example of text in an Emacs buffer. In
+such examples, the convention is to include the entire contents of the
+buffer in question between two lines of dashes containing the buffer
+name.
+
+ <p>You can use the <span class="samp">@point{}</span> command to show the location of point
+in the text in the buffer. (The symbol for point, of course, is not
+part of the text in the buffer; it indicates the place <em>between</em>
+two characters where point is located.)
+
+ <p>The <code>@point{}</code> command is displayed as <span class="samp">-!-</span> in Info
+and HTML and as a small five pointed star in the printed
+output.
+
+ <p>The following example shows the contents of buffer <span class="file">foo</span> before
+and after evaluating a Lisp command to insert the word <code>changed</code>.
+
+<pre class="example"> ---------- Buffer: foo ----------
+ This is the -!-contents of foo.
+ ---------- Buffer: foo ----------
+</pre>
+ <pre class="example"> (insert "changed ")
+ =&gt; nil
+ ---------- Buffer: foo ----------
+ This is the changed -!-contents of foo.
+ ---------- Buffer: foo ----------
+</pre>
+ <p>In a Texinfo source file, the example is written like this:
+
+<pre class="example"> @example
+ ---------- Buffer: foo ----------
+ This is the @point{}contents of foo.
+ ---------- Buffer: foo ----------
+
+ (insert "changed ")
+ @result{} nil
+ ---------- Buffer: foo ----------
+ This is the changed @point{}contents of foo.
+ ---------- Buffer: foo ----------
+ @end example
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Breaks"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Definition-Commands">Definition Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Insertions">Insertions</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">15 Forcing and Preventing Breaks</h2>
+
+<p><a name="index-Forcing-line-and-page-breaks-774"></a><a name="index-Making-line-and-page-breaks-775"></a><a name="index-Preventing-line-and-page-breaks-776"></a>
+<a name="index-Line-breaks-777"></a>Usually, a Texinfo file is processed both by TeX and by one of the
+Info formatting commands. Line, paragraph, or page breaks sometimes
+occur in the `wrong' place in one or other form of output. You must
+ensure that text looks right both in the printed manual and in the
+Info file.
+
+ <p><a name="index-White-space_002c-excessive-778"></a><a name="index-Page-breaks-779"></a>For example, in a printed manual, page breaks may occur awkwardly in
+the middle of an example; to prevent this, you can hold text together
+using a grouping command that keeps the text from being split across
+two pages. Conversely, you may want to force a page break where none
+would occur normally. Fortunately, problems like these do not often
+arise. When they do, use the break, break prevention, or pagination
+commands.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Break-Commands">Break Commands</a>: Summary of break-related commands.
+<li><a accesskey="2" href="#Line-Breaks">Line Breaks</a>: Forcing line breaks.
+<li><a accesskey="3" href="#_002d-and-hyphenation">- and hyphenation</a>: Helping TeX with hyphenation points.
+<li><a accesskey="4" href="#w">w</a>: Preventing unwanted line breaks in text.
+<li><a accesskey="5" href="#tie">tie</a>: Inserting an unbreakable but varying space.
+<li><a accesskey="6" href="#sp">sp</a>: Inserting blank lines.
+<li><a accesskey="7" href="#page">page</a>: Forcing the start of a new page.
+<li><a accesskey="8" href="#group">group</a>: Preventing unwanted page breaks.
+<li><a accesskey="9" href="#need">need</a>: Another way to prevent unwanted page breaks.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Break-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Line-Breaks">Line Breaks</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Breaks">Breaks</a>
+<br>
+</div>
+
+<h3 class="section">15.1 Break Commands</h3>
+
+<p>The break commands create or allow line and paragraph breaks:
+
+ <dl>
+<dt><code>@*</code><dd>Force a line break.
+
+ <br><dt><code>@sp </code><var>n</var><dd>Skip <var>n</var> blank lines.
+
+ <br><dt><code>@-</code><dd>Insert a discretionary hyphen.
+
+ <br><dt><code>@hyphenation{</code><var>hy-phen-a-ted words</var><code>}</code><dd>Define hyphen points in <var>hy-phen-a-ted words</var>.
+</dl>
+
+ <p>These commands hold text together on a single line:
+
+ <dl>
+<dt><code>@w{</code><var>text</var><code>}</code><dd>Prevent <var>text</var> from being split and hyphenated across two lines.
+<br><dt><code>@tie{}</code><dd>Insert a normal interword space at which a line break may not occur.
+</dl>
+
+ <p>The pagination commands apply only to printed output, since Info
+files do not have pages.
+
+ <dl>
+<dt><code>@page</code><dd>Start a new page in the printed manual.
+
+ <br><dt><code>@group</code><dd>Hold text together that must appear on one printed page.
+
+ <br><dt><code>@need </code><var>mils</var><dd>Start a new printed page if not enough space on this one.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Line-Breaks"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#_002d-and-hyphenation">- and hyphenation</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Break-Commands">Break Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Breaks">Breaks</a>
+<br>
+</div>
+
+<h3 class="section">15.2 <code>@*</code> and <code>@/</code>: Generate and Allow Line Breaks</h3>
+
+<p><a name="index-_002a-_0040r_007b_0028force-line-break_0029_007d-780"></a><a name="index-_002f-_0040r_007b_0028allow-line-break_0029_007d-781"></a><a name="index-Line-breaks-782"></a><a name="index-Breaks-in-a-line-783"></a><a name="index-Force-line-break-784"></a><a name="index-Allow-line-break-785"></a>
+The <code>@*</code> command forces a line break in both the printed manual and
+in Info. The <code>@/</code> command allows a line break (printed manual only).
+
+ <p>Here is an example with <code>@*</code>:
+
+<pre class="example"> This line @* is broken @*in two places.
+</pre>
+ <p class="noindent">produces
+
+<pre class="example"> This line
+ is broken
+ in two places.
+</pre>
+ <p>The <code>@/</code> command can be useful within a url
+(see <a href="#uref"><code>@uref</code></a>), which tend to be long and are otherwise
+unbreakable. For example:
+
+<pre class="example"> The official Texinfo home page is on the GNU web site:
+ @uref{http://www.gnu.org/@/software/@/gnu/@/texinfo}.
+</pre>
+ <p class="noindent">produces
+
+<pre class="display"> The official Texinfo home page is on the GNU web site:
+ <a href="http://www.gnu.org/software/gnu/texinfo">http://www.gnu.org/software/gnu/texinfo</a>.
+</pre>
+ <p class="noindent">Without the <code>@/</code> commands, TeX would have nowhere to
+break the line. <code>@/</code> has no effect in the online output.
+
+<div class="node">
+<p><hr>
+<a name="_002d-and-hyphenation"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#w">w</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Line-Breaks">Line Breaks</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Breaks">Breaks</a>
+<br>
+</div>
+
+<h3 class="section">15.3 <code>@-</code> and <code>@hyphenation</code>: Helping TeX Hyphenate</h3>
+
+<p><a name="index-_002d-_0040r_007b_0028discretionary-hyphen_0029_007d-786"></a><a name="index-hyphenation-787"></a><a name="index-Hyphenation_002c-helping-_0040TeX_007b_007d-do-788"></a><a name="index-Fine_002dtuning_002c-and-hyphenation-789"></a>
+Although TeX's hyphenation algorithm is generally pretty good, it
+does miss useful hyphenation points from time to time. (Or, far more
+rarely, insert an incorrect hyphenation.) So, for documents with an
+unusual vocabulary or when fine-tuning for a printed edition, you may
+wish to help TeX out. Texinfo supports two commands for this:
+
+ <dl>
+<dt><code>@-</code><dd>Insert a discretionary hyphen, i.e., a place where TeX can (but does
+not have to) hyphenate. This is especially useful when you notice an
+overfull hbox is due to TeX missing a hyphenation (see <a href="#Overfull-hboxes">Overfull hboxes</a>). TeX will not insert any hyphenation points itself into a
+word containing <code>@-</code>.
+
+ <br><dt><code>@hyphenation{</code><var>hy-phen-a-ted words</var><code>}</code><dd>Tell TeX how to hyphenate <var>hy-phen-a-ted words</var>. As shown, you
+put a <span class="samp">-</span> at each hyphenation point. For example:
+ <pre class="example"> @hyphenation{man-u-script man-u-scripts}
+ </pre>
+ <p class="noindent">TeX only uses the specified hyphenation points when the
+words match exactly, so give all necessary variants.
+</dl>
+
+ <p>Info output is not hyphenated, so these commands have no effect there.
+
+<div class="node">
+<p><hr>
+<a name="w"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#tie">tie</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#_002d-and-hyphenation">- and hyphenation</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Breaks">Breaks</a>
+<br>
+</div>
+
+<h3 class="section">15.4 <code>@w</code>{<var>text</var>}: Prevent Line Breaks</h3>
+
+<p><a name="index-w-_0040r_007b_0028prevent-line-break_0029_007d-790"></a><a name="index-Line-breaks_002c-preventing-791"></a>
+<code>@w{</code><var>text</var><code>}</code> outputs <var>text</var> and prohibits line breaks
+within <var>text</var>, for both TeX and <span class="command">makeinfo</span>.
+
+ <p><a name="index-Non_002dbreakable-space_002c-fixed-792"></a><a name="index-Unbreakable-space_002c-fixed-793"></a>Thus, you can use <code>@w</code> to produce a non-breakable space, fixed at
+the width of a normal interword space:
+
+<pre class="example"> @w{ } @w{ } @w{ } indentation.
+</pre>
+ <p class="noindent">produces:
+
+<pre class="display"> &nbsp;<!-- /@w --> &nbsp;<!-- /@w --> &nbsp;<!-- /@w --> indentation.
+</pre>
+ <p>The space from <code>@w{&nbsp;<!-- /@w -->}</code>, as well as being non-breakable,
+also will not stretch or shrink. Sometimes that is what you want, for
+instance if you're doing indenting manual. However, usually you want
+a normal interword space that does stretch and shrink (in the printed
+output); see the <code>@tie</code> command in the next section.
+
+ <p><a name="index-Hyphenation_002c-preventing-794"></a>You can also use the <code>@w</code> command to prevent TeX from
+automatically hyphenating a long name or phrase that happens to fall
+near the end of a line. <span class="command">makeinfo</span> does not ever hyphenate
+words.
+
+ <p><a name="index-Keyword-expansion_002c-preventing-795"></a><a name="index-Version-control-keywords_002c-preventing-expansion-of-796"></a><a name="index-_0024Id-expansion_002c-preventing-797"></a>You can also use <code>@w</code> to avoid unwanted keyword expansion in
+source control systems. For example, to literally write <tt>$<!-- /@w -->Id$</tt>
+in your document, use <code>@w{$}Id$</code>.
+
+<div class="node">
+<p><hr>
+<a name="tie"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#sp">sp</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#w">w</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Breaks">Breaks</a>
+<br>
+</div>
+
+<h3 class="section">15.5 <code>@tie{}</code>: Inserting an Unbreakable Space</h3>
+
+<p><a name="index-tie-_0040r_007b_0028unbreakable-interword-space_0029_007d-798"></a><a name="index-Tied-space-799"></a><a name="index-Non_002dbreakable-space_002c-variable-800"></a><a name="index-Unbreakable-space_002c-variable-801"></a>
+The <code>@tie{}</code> command produces a normal interword space at which
+a line break may not occur. Always write it with following (empty)
+braces, as usual for commands used within a paragraph. Here's an
+example:
+
+<pre class="example"> @TeX{} was written by Donald E.@tie{}Knuth.
+</pre>
+ <p class="noindent">produces:
+
+<pre class="display"> TeX was written by Donald E.&nbsp;<!-- /@w -->Knuth.
+</pre>
+ <p>There are two important differences between <code>@tie{}</code> and
+<code>@w{&nbsp;<!-- /@w -->}</code>:
+
+ <ul>
+<li>The space produced by <code>@tie{}</code> will stretch and shrink slightly
+along with the normal interword spaces in the paragraph; the space
+produced by <code>@w{&nbsp;<!-- /@w -->}</code> will not vary.
+
+ <li><code>@tie{}</code> allows hyphenation of the surrounding words, while
+<code>@w{&nbsp;<!-- /@w -->}</code> inhibits hyphenation of those words (for TeXnical
+reasons, namely that it produces an <span class="samp">\hbox</span>).
+
+ </ul>
+
+<div class="node">
+<p><hr>
+<a name="sp"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#page">page</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#tie">tie</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Breaks">Breaks</a>
+<br>
+</div>
+
+<h3 class="section">15.6 <code>@sp</code> <var>n</var>: Insert Blank Lines</h3>
+
+<p><a name="index-sp-_0040r_007b_0028line-spacing_0029_007d-802"></a><a name="index-Space_002c-inserting-vertical-803"></a><a name="index-Blank-lines-804"></a><a name="index-Line-spacing-805"></a>
+A line beginning with and containing only <code>@sp </code><var>n</var>
+generates <var>n</var> blank lines of space in both the printed manual and
+the Info file. <code>@sp</code> also forces a paragraph break. For
+example,
+
+<pre class="example"> @sp 2
+</pre>
+ <p class="noindent">generates two blank lines.
+
+ <p>The <code>@sp</code> command is most often used in the title page.
+
+<div class="node">
+<p><hr>
+<a name="page"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#group">group</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#sp">sp</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Breaks">Breaks</a>
+<br>
+</div>
+
+<h3 class="section">15.7 <code>@page</code>: Start a New Page</h3>
+
+<p><a name="index-Page-breaks-806"></a><a name="index-page-807"></a>
+A line containing only <code>@page</code> starts a new page in a printed
+manual. The command has no effect on Info files since they are not
+paginated. An <code>@page</code> command is often used in the <code>@titlepage</code>
+section of a Texinfo file to start the copyright page.
+
+<div class="node">
+<p><hr>
+<a name="group"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#need">need</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#page">page</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Breaks">Breaks</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">15.8 <code>@group</code>: Prevent Page Breaks</h3>
+
+<p><a name="index-Group-_0028hold-text-together-vertically_0029-808"></a><a name="index-Holding-text-together-vertically-809"></a><a name="index-Vertically-holding-text-together-810"></a><a name="index-group-811"></a>
+The <code>@group</code> command (on a line by itself) is used inside an
+<code>@example</code> or similar construct to begin an unsplittable vertical
+group, which will appear entirely on one page in the printed output.
+The group is terminated by a line containing only <code>@end group</code>.
+These two lines produce no output of their own, and in the Info file
+output they have no effect at all.
+
+<!-- Once said that these environments -->
+<!-- turn off vertical spacing between ``paragraphs''. -->
+<!-- Also, quotation used to work, but doesn't in texinfo-2.72 -->
+<p>Although <code>@group</code> would make sense conceptually in a wide
+variety of contexts, its current implementation works reliably only
+within <code>@example</code> and variants, and within <code>@display</code>,
+<code>@format</code>, <code>@flushleft</code> and <code>@flushright</code>.
+See <a href="#Quotations-and-Examples">Quotations and Examples</a>. (What all these commands have in
+common is that each line of input produces a line of output.) In
+other contexts, <code>@group</code> can cause anomalous vertical
+spacing.
+
+ <p>This formatting requirement means that you should write:
+
+<pre class="example"> @example
+ @group
+ ...
+ @end group
+ @end example
+</pre>
+ <p class="noindent">with the <code>@group</code> and <code>@end group</code> commands inside the
+<code>@example</code> and <code>@end example</code> commands.
+
+ <p>The <code>@group</code> command is most often used to hold an example
+together on one page. In this Texinfo manual, more than 100 examples
+contain text that is enclosed between <code>@group</code> and <code>@end
+group</code>.
+
+ <p>If you forget to end a group, you may get strange and unfathomable
+error messages when you run TeX. This is because TeX keeps
+trying to put the rest of the Texinfo file onto the one page and does
+not start to generate error messages until it has processed
+considerable text. It is a good rule of thumb to look for a missing
+<code>@end group</code> if you get incomprehensible error messages in
+TeX.
+
+<div class="node">
+<p><hr>
+<a name="need"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#group">group</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Breaks">Breaks</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">15.9 <code>@need </code><var>mils</var>: Prevent Page Breaks</h3>
+
+<p><a name="index-Need-space-at-page-bottom-812"></a><a name="index-need-813"></a>
+A line containing only <code>@need </code><var>n</var> starts
+a new page in a printed manual if fewer than <var>n</var> mils (thousandths
+of an inch) remain on the current page. Do not use
+braces around the argument <var>n</var>. The <code>@need</code> command has no
+effect on Info files since they are not paginated.
+
+ <p>This paragraph is preceded by an <code>@need</code> command that tells
+TeX to start a new page if fewer than 800 mils (eight-tenths
+inch) remain on the page. It looks like this:
+
+<pre class="example"> @need 800
+ This paragraph is preceded by ...
+</pre>
+ <p>The <code>@need</code> command is useful for preventing orphans (single
+lines at the bottoms of printed pages).
+
+<div class="node">
+<p><hr>
+<a name="Definition-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Conditionals">Conditionals</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Breaks">Breaks</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">16 Definition Commands</h2>
+
+<p><a name="index-Definition-commands-814"></a>
+The <code>@deffn</code> command and the other <dfn>definition commands</dfn>
+enable you to describe functions, variables, macros, commands, user
+options, special forms and other such artifacts in a uniform
+format.
+
+ <p>In the Info file, a definition causes the entity
+category&mdash;`Function', `Variable', or whatever&mdash;to appear at the
+beginning of the first line of the definition, followed by the
+entity's name and arguments. In the printed manual, the command
+causes TeX to print the entity's name and its arguments on the left
+margin and print the category next to the right margin. In both
+output formats, the body of the definition is indented. Also, the
+name of the entity is entered into the appropriate index:
+<code>@deffn</code> enters the name into the index of functions,
+<code>@defvr</code> enters it into the index of variables, and so
+on (see <a href="#Predefined-Indices">Predefined Indices</a>).
+
+ <p>A manual need not and should not contain more than one definition for
+a given name. An appendix containing a summary should use
+<code>@table</code> rather than the definition commands.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Def-Cmd-Template">Def Cmd Template</a>: Writing descriptions using definition commands.
+<li><a accesskey="2" href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a>: Continuing the heading over source lines.
+<li><a accesskey="3" href="#Optional-Arguments">Optional Arguments</a>: Handling optional and repeated arguments.
+<li><a accesskey="4" href="#deffnx">deffnx</a>: Group two or more `first' lines.
+<li><a accesskey="5" href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>: Reference for all the definition commands.
+<li><a accesskey="6" href="#Def-Cmd-Conventions">Def Cmd Conventions</a>: Conventions for writing definitions.
+<li><a accesskey="7" href="#Sample-Function-Definition">Sample Function Definition</a>: An example.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Def-Cmd-Template"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Definition-Commands">Definition Commands</a>
+<br>
+</div>
+
+<h3 class="section">16.1 The Template for a Definition</h3>
+
+<p><a name="index-Definition-template-815"></a><a name="index-Template-for-a-definition-816"></a>
+The <code>@deffn</code> command is used for definitions of entities that
+resemble functions. To write a definition using the <code>@deffn</code>
+command, write the <code>@deffn</code> command at the beginning of a line
+and follow it on the same line by the category of the entity, the name
+of the entity itself, and its arguments (if any). Then write the body
+of the definition on succeeding lines. (You may embed examples in the
+body.) Finally, end the definition with an <code>@end deffn</code> command
+written on a line of its own.
+
+ <p>The other definition commands follow the same format: a line with the
+<code>@def...</code> command and whatever arguments are appropriate for
+that command; the body of the definition; and a corresponding
+<code>@end</code> line.
+
+ <p>The template for a definition looks like this:
+
+<pre class="example"> @deffn <var>category</var> <var>name</var> <var>arguments</var>...
+ <var>body-of-definition</var>
+ @end deffn
+</pre>
+ <p class="noindent">For example,
+
+<pre class="example"> @deffn Command forward-word count
+ This command moves point forward @var{count} words
+ (or backward if @var{count} is negative). ...
+ @end deffn
+</pre>
+ <p class="noindent">produces
+
+ <blockquote>
+
+ <div class="defun">
+&mdash; Command: <b>forward-word</b><var> count<a name="index-forward_002dword-817"></a></var><br>
+<blockquote><p>This function moves point forward <var>count</var> words
+(or backward if <var>count</var> is negative). <small class="dots">...</small>
+</p></blockquote></div>
+ </blockquote>
+
+ <p>Capitalize the category name like a title. If the name of the
+category contains spaces, as in the phrase `Interactive Command',
+enclose it in braces. For example:
+
+<pre class="example"> @deffn {Interactive Command} isearch-forward
+ ...
+ @end deffn
+</pre>
+ <p class="noindent">Otherwise, the second word will be mistaken for the name of the
+entity. As a general rule, when any of the arguments in the heading
+line <em>except</em> the last one are more than one word, you need to
+enclose them in braces.
+
+ <p>Some of the definition commands are more general than others. The
+<code>@deffn</code> command, for example, is the general definition command
+for functions and the like&mdash;for entities that may take arguments.
+When you use this command, you specify the category to which the
+entity belongs. Three predefined, specialized variations
+(<code>@defun</code>, <code>@defmac</code>, and <code>@defspec</code>) specify the
+category for you: &ldquo;Function&rdquo;, &ldquo;Macro&rdquo;, and &ldquo;Special Form&rdquo;
+respectively. (In Lisp, a special form is an entity much like a
+function.) Similarly, the general <code>@defvr</code> command is
+accompanied by several specialized variations for describing
+particular kinds of variables.
+
+ <p>See <a href="#Sample-Function-Definition">Sample Function Definition</a>, for a detailed example of a
+function definition, including the use of <code>@example</code> inside the
+definition.
+
+ <p><a name="index-Macros-in-definition-commands-818"></a>Unfortunately, due to implementation difficulties, macros are not expanded
+in <code>@deffn</code> and all the other definition commands.
+
+<div class="node">
+<p><hr>
+<a name="Def-Cmd-Continuation-Lines"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Optional-Arguments">Optional Arguments</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Def-Cmd-Template">Def Cmd Template</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Definition-Commands">Definition Commands</a>
+<br>
+</div>
+
+<h3 class="section">16.2 Definition Command Continuation Lines</h3>
+
+<p><a name="index-Continuation-lines-in-definition-commands-819"></a><a name="index-Definition-command-headings_002c-continuing-820"></a><a name="index-_0040samp_007b_0040_0040_007d-as-continuation-in-definition-commands-821"></a>
+The heading line of a definition command can get very long.
+Therefore, Texinfo has a special syntax allowing them to be continued
+over multiple lines of the source file: a lone <span class="samp">@</span> at the end of
+each line to be continued. Here's an example:
+
+<pre class="example"> @defun fn-name @
+ arg1 arg2 arg3
+ This is the basic continued defun.
+ @end defun
+</pre>
+ <p class="noindent">produces:
+
+<div class="defun">
+&mdash; Function: <b>fn-name</b><var> arg1 arg2 arg3<a name="index-fn_002dname-822"></a></var><br>
+<blockquote><p>This is the basic continued defun.
+</p></blockquote></div>
+
+<p class="noindent">As you can see, the continued lines are combined, as if they had been
+typed on one source line.
+
+ <p>Although this example only shows a one-line continuation,
+continuations may extend over any number of lines; simply put an
+<code>@</code> at the end of each line to be continued.
+
+ <p>The <code>@</code> character does not have to be the last character on the
+physical line: whitespace is allowed (and ignored) afterwards.
+
+ <p><a name="index-Whitespace_002c-collapsed-around-continuations-823"></a><a name="index-Collapsing-whitespace-around-continuations-824"></a>In general, any number of spaces or tabs around the <code>@</code>
+continuation character, both on the line with the <code>@</code> and on the
+continued line, are collapsed into a single space. There is one
+exception: the Texinfo processors will not fully collapse whitespace
+around a continuation inside braces. For example:
+
+<pre class="example"> @deffn {Category @
+ Name} ...
+</pre>
+ <p class="noindent">The output (not shown) has excess space between `Category'
+and `Name'. In this case, simply elide any unwanted whitespace in
+your input, or put the continuation <code>@</code> outside braces.
+
+ <p><code>@</code> does not (currently) function as a continuation character in
+<em>any</em> other context. Ordinarily, <span class="samp">@</span> followed by a
+whitespace character (space, tab, newline) produces a normal interword
+space (see <a href="#Multiple-Spaces">Multiple Spaces</a>).
+
+<div class="node">
+<p><hr>
+<a name="Optional-Arguments"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#deffnx">deffnx</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Definition-Commands">Definition Commands</a>
+<br>
+</div>
+
+<h3 class="section">16.3 Optional and Repeated Arguments</h3>
+
+<p><a name="index-Optional-and-repeated-arguments-825"></a><a name="index-Repeated-and-optional-arguments-826"></a><a name="index-Arguments_002c-repeated-and-optional-827"></a><a name="index-Syntax_002c-optional-_0026-repeated-arguments-828"></a><a name="index-Meta_002dsyntactic-chars-for-arguments-829"></a>
+Some entities take optional or repeated arguments, which may be
+specified by a distinctive glyph that uses square brackets and
+ellipses. For example<!-- /@w -->, a special form often breaks its argument list
+into separate arguments in more complicated ways than a
+straightforward function.
+
+<!-- This is consistent with Emacs Lisp Reference manual -->
+<p>An argument enclosed within square brackets is optional.
+Thus, [<var>optional-arg</var>] means that <var>optional-arg</var> is optional.
+An argument followed by an ellipsis is optional
+and may be repeated more than once.
+<!-- This is consistent with Emacs Lisp Reference manual -->
+Thus, <var>repeated-args</var><span class="samp">...</span> stands for zero or more
+arguments. Parentheses are used when several arguments are grouped
+into additional levels of list structure in Lisp.
+
+ <p>Here is the <code>@defspec</code> line of an example of an imaginary
+special form:
+
+ <blockquote>
+
+ <div class="defun">
+&mdash; Special Form: <b>foobar</b> (<var>var </var>[<var>from to </var>[<var>inc</var>]])<var> body<small class="dots">...</small><a name="index-foobar-830"></a></var><br>
+</div>
+ </blockquote>
+
+<p class="noindent">In this example, the arguments <var>from</var> and <var>to</var> are optional,
+but must both be present or both absent. If they are present,
+<var>inc</var> may optionally be specified as well. These arguments are
+grouped with the argument <var>var</var> into a list, to distinguish them
+from <var>body</var>, which includes all remaining elements of the
+form.
+
+ <p>In a Texinfo source file, this <code>@defspec</code> line is written like
+this (except it would not be split over two lines, as it is in this
+example).
+
+<pre class="example"> @defspec foobar (@var{var} [@var{from} @var{to}
+ [@var{inc}]]) @var{body}@dots{}
+</pre>
+ <p class="noindent">The function is listed in the Command and Variable Index under
+<span class="samp">foobar</span>.
+
+<div class="node">
+<p><hr>
+<a name="deffnx"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Optional-Arguments">Optional Arguments</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Definition-Commands">Definition Commands</a>
+<br>
+</div>
+
+<h3 class="section">16.4 Two or More `First' Lines</h3>
+
+<p><a name="index-Two-_0060First_0027-Lines-for-_0040code_007b_0040_0040deffn_007d-831"></a><a name="index-Grouping-two-definitions-together-832"></a><a name="index-Definitions-grouped-together-833"></a><a name="index-deffnx-834"></a>
+To create two or more `first' or header lines for a definition, follow
+the first <code>@deffn</code> line by a line beginning with <code>@deffnx</code>.
+The <code>@deffnx</code> command works exactly like <code>@deffn</code>
+except that it does not generate extra vertical white space between it
+and the preceding line.
+
+ <p>For example,
+
+<pre class="example"> @deffn {Interactive Command} isearch-forward
+ @deffnx {Interactive Command} isearch-backward
+ These two search commands are similar except ...
+ @end deffn
+</pre>
+ <p class="noindent">produces
+
+<div class="defun">
+&mdash; Interactive Command: <b>isearch-forward</b><var><a name="index-isearch_002dforward-835"></a></var><br>
+&mdash; Interactive Command: <b>isearch-backward</b><var><a name="index-isearch_002dbackward-836"></a></var><br>
+<blockquote><p>These two search commands are similar except <small class="dots">...</small>
+</p></blockquote></div>
+
+ <p>Each definition command has an `x' form: <code>@defunx</code>,
+<code>@defvrx</code>, <code>@deftypefunx</code>, etc.
+
+ <p>The `x' forms work similarly to <code>@itemx</code> (see <a href="#itemx">itemx</a>).
+
+<div class="node">
+<p><hr>
+<a name="Def-Cmds-in-Detail"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Def-Cmd-Conventions">Def Cmd Conventions</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#deffnx">deffnx</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Definition-Commands">Definition Commands</a>
+<br>
+</div>
+
+<h3 class="section">16.5 The Definition Commands</h3>
+
+<p>Texinfo provides more than a dozen definition commands, all of which
+are described in this section.
+
+ <p>The definition commands automatically enter the name of the entity in
+the appropriate index: for example, <code>@deffn</code>, <code>@defun</code>,
+and <code>@defmac</code> enter function names in the index of functions;
+<code>@defvr</code> and <code>@defvar</code> enter variable names in the index
+of variables.
+
+ <p>Although the examples that follow mostly illustrate Lisp, the commands
+can be used for other programming languages.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Functions-Commands">Functions Commands</a>: Commands for functions and similar entities.
+<li><a accesskey="2" href="#Variables-Commands">Variables Commands</a>: Commands for variables and similar entities.
+<li><a accesskey="3" href="#Typed-Functions">Typed Functions</a>: Commands for functions in typed languages.
+<li><a accesskey="4" href="#Typed-Variables">Typed Variables</a>: Commands for variables in typed languages.
+<li><a accesskey="5" href="#Data-Types">Data Types</a>: The definition command for data types.
+<li><a accesskey="6" href="#Abstract-Objects">Abstract Objects</a>: Commands for object-oriented programming.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Functions-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Variables-Commands">Variables Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>
+<br>
+</div>
+
+<h4 class="subsection">16.5.1 Functions and Similar Entities</h4>
+
+<p>This section describes the commands for describing functions and similar
+entities:
+
+
+<a name="index-deffn-837"></a>
+<dl><dt><code>@deffn </code><var>category</var> <var>name</var> <var>arguments</var><code>...</code><dd>The <code>@deffn</code> command is the general definition command for
+functions, interactive commands, and similar entities that may take
+arguments. You must choose a term to describe the category of entity
+being defined; for example, &ldquo;Function&rdquo; could be used if the entity is
+a function. The <code>@deffn</code> command is written at the beginning of a
+line and is followed on the same line by the category of entity being
+described, the name of this particular entity, and its arguments, if
+any. Terminate the definition with <code>@end deffn</code> on a line of its
+own.
+
+ <p>For example, here is a definition:
+
+ <pre class="example"> @deffn Command forward-char nchars
+ Move point forward @var{nchars} characters.
+ @end deffn
+ </pre>
+ <p class="noindent">This shows a rather terse definition for a &ldquo;command&rdquo; named
+<code>forward-char</code> with one argument, <var>nchars</var>.
+
+ <p><code>@deffn</code> and prints argument names such as <var>nchars</var> in slanted
+type in the printed output, because we think of these names as
+metasyntactic variables&mdash;they stand for the actual argument values.
+Within the text of the description, however, write an argument name
+explicitly with <code>@var</code> to refer to the value of the argument.
+In the example above, we used <span class="samp">@var{nchars}</span> in this way.
+
+ <p>In the unusual case when an argument name contains <span class="samp">--</span>, or
+another character sequence which is treated specially
+(see <a href="#Conventions">Conventions</a>), use <code>@var</code> around the argument. This
+causes the name to be printed in slanted typewriter, instead of the
+regular slanted font, exactly as input.
+<!-- except for ?` and !`, but we won't explain that. -->
+
+ <p>The template for <code>@deffn</code> is:
+
+ <pre class="example"> @deffn <var>category</var> <var>name</var> <var>arguments</var>...
+ <var>body-of-definition</var>
+ @end deffn
+ </pre>
+ <p><a name="index-defun-838"></a><br><dt><code>@defun </code><var>name</var> <var>arguments</var><code>...</code><dd>The <code>@defun</code> command is the definition command for functions.
+<code>@defun</code> is equivalent to <span class="samp">@deffn Function ...</span>.
+Terminate the definition with <code>@end defun</code> on a line of its own.
+Thus, the template is:
+
+ <pre class="example"> @defun <var>function-name</var> <var>arguments</var>...
+ <var>body-of-definition</var>
+ @end defun
+ </pre>
+ <p><a name="index-defmac-839"></a><br><dt><code>@defmac </code><var>name</var> <var>arguments</var><code>...</code><dd>The <code>@defmac</code> command is the definition command for macros.
+<code>@defmac</code> is equivalent to <span class="samp">@deffn Macro ...</span> and
+works like <code>@defun</code>.
+
+ <p><a name="index-defspec-840"></a><br><dt><code>@defspec </code><var>name</var> <var>arguments</var><code>...</code><dd>The <code>@defspec</code> command is the definition command for special
+forms. (In Lisp, a special form is an entity much like a function,
+see <a href="elisp.html#Special-Forms">Special Forms (GNU Emacs Lisp Reference Manual)</a>.)
+<code>@defspec</code> is equivalent to <span class="samp">@deffn {Special Form}
+...</span> and works like <code>@defun</code>.
+</dl>
+
+ <p>All these commands create entries in the index of functions.
+
+<div class="node">
+<p><hr>
+<a name="Variables-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Typed-Functions">Typed Functions</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Functions-Commands">Functions Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>
+<br>
+</div>
+
+<h4 class="subsection">16.5.2 Variables and Similar Entities</h4>
+
+<p>Here are the commands for defining variables and similar
+entities:
+
+
+<a name="index-defvr-841"></a>
+<dl><dt><code>@defvr </code><var>category</var> <var>name</var><dd>The <code>@defvr</code> command is a general definition command for
+something like a variable&mdash;an entity that records a value. You must
+choose a term to describe the category of entity being defined; for
+example, &ldquo;Variable&rdquo; could be used if the entity is a variable.
+Write the <code>@defvr</code> command at the beginning of a line and
+follow it on the same line by the category of the entity and the
+name of the entity.
+
+ <p>Capitalize the category name like a title. If the name of the category
+contains spaces, as in the name &ldquo;User Option&rdquo;, enclose it in braces.
+Otherwise, the second word will be mistaken for the name of the entity.
+For example,
+
+ <pre class="example"> @defvr {User Option} fill-column
+ This buffer-local variable specifies
+ the maximum width of filled lines.
+ ...
+ @end defvr
+ </pre>
+ <p>Terminate the definition with <code>@end defvr</code> on a line of its
+own.
+
+ <p>The template is:
+
+ <pre class="example"> @defvr <var>category</var> <var>name</var>
+ <var>body-of-definition</var>
+ @end defvr
+ </pre>
+ <p><code>@defvr</code> creates an entry in the index of variables for <var>name</var>.
+
+ <p><a name="index-defvar-842"></a><br><dt><code>@defvar </code><var>name</var><dd>The <code>@defvar</code> command is the definition command for variables.
+<code>@defvar</code> is equivalent to <span class="samp">@defvr Variable
+...</span>.
+
+ <p>For example:
+
+ <pre class="example"> @defvar kill-ring
+ ...
+ @end defvar
+ </pre>
+ <p>The template is:
+
+ <pre class="example"> @defvar <var>name</var>
+ <var>body-of-definition</var>
+ @end defvar
+ </pre>
+ <p><code>@defvar</code> creates an entry in the index of variables for
+<var>name</var>.
+
+ <p><a name="index-defopt-843"></a><br><dt><code>@defopt </code><var>name</var><dd><a name="index-User-options_002c-marking-844"></a>The <code>@defopt</code> command is the definition command for <dfn>user
+options</dfn>, i.e., variables intended for users to change according to
+taste; Emacs has many such (see <a href="emacs.html#Variables">Variables (The GNU Emacs Manual)</a>). <code>@defopt</code> is equivalent to <span class="samp">@defvr {User
+Option} ...</span> and works like <code>@defvar</code>. It creates an entry
+in the index of variables.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Typed-Functions"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Typed-Variables">Typed Variables</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Variables-Commands">Variables Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>
+<br>
+</div>
+
+<h4 class="subsection">16.5.3 Functions in Typed Languages</h4>
+
+<p>The <code>@deftypefn</code> command and its variations are for describing
+functions in languages in which you must declare types of variables and
+functions, such as C and C++.
+
+
+<a name="index-deftypefn-845"></a>
+<dl><dt><code>@deftypefn </code><var>category</var> <var>data-type</var> <var>name</var> <var>arguments</var><code>...</code><dd>The <code>@deftypefn</code> command is the general definition command for
+functions and similar entities that may take arguments and that are
+typed. The <code>@deftypefn</code> command is written at the beginning of
+a line and is followed on the same line by the category of entity
+being described, the type of the returned value, the name of this
+particular entity, and its arguments, if any.
+
+ <p class="noindent">For example,
+
+ <pre class="example"> @deftypefn {Library Function} int foobar
+ (int @var{foo}, float @var{bar})
+ ...
+ @end deftypefn
+ </pre>
+ <p class="noindent">(where the text before the &ldquo;<small class="dots">...</small>&rdquo;, shown above as two lines, would
+actually be a single line in a real Texinfo file) produces the following
+in Info:
+
+ <pre class="smallexample"> -- Library Function: int foobar (int FOO, float BAR)
+ ...
+ </pre>
+ <p>This means that <code>foobar</code> is a &ldquo;library function&rdquo; that returns an
+<code>int</code>, and its arguments are <var>foo</var> (an <code>int</code>) and
+<var>bar</var> (a <code>float</code>).
+
+ <p>Since in typed languages, the actual names of the arguments are
+typically scattered among data type names and keywords, Texinfo cannot
+find them without help. You can either (a)&nbsp;<!-- /@w -->write everything
+as straight text, and it will be printed in slanted type; (b)&nbsp;<!-- /@w -->use
+<code>@var</code> for the variable names, which will uppercase the
+variable names in Info and use the slanted typewriter font in printed
+output; (c)&nbsp;<!-- /@w -->use <code>@var</code> for the variable names and
+<code>@code</code> for the type names and keywords, which will be dutifully
+obeyed.
+
+ <p>The template for <code>@deftypefn</code> is:
+
+ <pre class="example"> @deftypefn <var>category</var> <var>data-type</var> <var>name</var> <var>arguments</var> ...
+ <var>body-of-description</var>
+ @end deftypefn
+ </pre>
+ <p class="noindent">Note that if the <var>category</var> or <var>data type</var> is more than one
+word then it must be enclosed in braces to make it a single argument.
+
+ <p>If you are describing a procedure in a language that has packages,
+such as Ada, you might consider using <code>@deftypefn</code> in a manner
+somewhat contrary to the convention described in the preceding
+paragraphs. For example:
+
+ <pre class="example"> @deftypefn stacks private push @
+ (@var{s}:in out stack; @
+ @var{n}:in integer)
+ ...
+ @end deftypefn
+ </pre>
+ <p class="noindent">(The <code>@deftypefn</code> arguments are shown using continuations
+(see <a href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a>), but could be on a single line in
+a real Texinfo file.)
+
+ <p>In this instance, the procedure is classified as belonging to the
+package <code>stacks</code> rather than classified as a `procedure' and its
+data type is described as <code>private</code>. (The name of the procedure
+is <code>push</code>, and its arguments are <var>s</var> and <var>n</var>.)
+
+ <p><code>@deftypefn</code> creates an entry in the index of functions for
+<var>name</var>.
+
+ <br><dt><code>@deftypefun </code><var>data-type</var> <var>name</var> <var>arguments</var><code>...</code><dd><a name="index-deftypefun-846"></a>The <code>@deftypefun</code> command is the specialized definition command
+for functions in typed languages. The command is equivalent to
+<span class="samp">@deftypefn Function ...</span>. The template is:
+
+ <pre class="example"> @deftypefun <var>type</var> <var>name</var> <var>arguments</var>...
+ <var>body-of-description</var>
+ @end deftypefun
+ </pre>
+ <p><code>@deftypefun</code> creates an entry in the index of functions for
+<var>name</var>.
+
+ </dl>
+
+<div class="node">
+<p><hr>
+<a name="Typed-Variables"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Data-Types">Data Types</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Typed-Functions">Typed Functions</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>
+<br>
+</div>
+
+<h4 class="subsection">16.5.4 Variables in Typed Languages</h4>
+
+<p>Variables in typed languages are handled in a manner similar to
+functions in typed languages. See <a href="#Typed-Functions">Typed Functions</a>. The general
+definition command <code>@deftypevr</code> corresponds to
+<code>@deftypefn</code> and the specialized definition command
+<code>@deftypevar</code> corresponds to <code>@deftypefun</code>.
+
+
+<a name="index-deftypevr-847"></a>
+<dl><dt><code>@deftypevr </code><var>category</var> <var>data-type</var> <var>name</var><dd>The <code>@deftypevr</code> command is the general definition command for
+something like a variable in a typed language&mdash;an entity that records
+a value. You must choose a term to describe the category of the
+entity being defined; for example, &ldquo;Variable&rdquo; could be used if the
+entity is a variable.
+
+ <p>The <code>@deftypevr</code> command is written at the beginning of a line
+and is followed on the same line by the category of the entity
+being described, the data type, and the name of this particular
+entity.
+
+ <p class="noindent">For example:
+
+ <pre class="example"> @deftypevr {Global Flag} int enable
+ ...
+ @end deftypevr
+ </pre>
+ <p class="noindent">produces the following in Info:
+
+ <pre class="example"> -- Global Flag: int enable
+ ...
+ </pre>
+ <p>The template is:
+
+ <pre class="example"> @deftypevr <var>category</var> <var>data-type</var> <var>name</var>
+ <var>body-of-description</var>
+ @end deftypevr
+ </pre>
+ <p><a name="index-deftypevar-848"></a><br><dt><code>@deftypevar </code><var>data-type</var> <var>name</var><dd>The <code>@deftypevar</code> command is the specialized definition command
+for variables in typed languages. <code>@deftypevar</code> is equivalent
+to <span class="samp">@deftypevr Variable ...</span>. The template is:
+
+ <pre class="example"> @deftypevar <var>data-type</var> <var>name</var>
+ <var>body-of-description</var>
+ @end deftypevar
+ </pre>
+ </dl>
+
+ <p>These commands create entries in the index of variables.
+
+<div class="node">
+<p><hr>
+<a name="Data-Types"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Abstract-Objects">Abstract Objects</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Typed-Variables">Typed Variables</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>
+<br>
+</div>
+
+<h4 class="subsection">16.5.5 Data Types</h4>
+
+<p>Here is the command for data types:
+
+
+<a name="index-deftp-849"></a>
+<dl><dt><code>@deftp </code><var>category</var> <var>name</var> <var>attributes</var><code>...</code><dd>The <code>@deftp</code> command is the generic definition command for data
+types. The command is written at the beginning of a line and is
+followed on the same line by the category, by the name of the type
+(which is a word like <code>int</code> or <code>float</code>), and then by names of
+attributes of objects of that type. Thus, you could use this command
+for describing <code>int</code> or <code>float</code>, in which case you could use
+<code>data type</code> as the category. (A data type is a category of
+certain objects for purposes of deciding which operations can be
+performed on them.)
+
+ <p>In Lisp, for example, <dfn>pair</dfn> names a particular data
+type, and an object of that type has two slots called the
+<span class="sc">car</span> and the <span class="sc">cdr</span>. Here is how you would write the first line
+of a definition of <code>pair</code>.
+
+ <pre class="example"> @deftp {Data type} pair car cdr
+ ...
+ @end deftp
+ </pre>
+ <p>The template is:
+
+ <pre class="example"> @deftp <var>category</var> <var>name-of-type</var> <var>attributes</var>...
+ <var>body-of-definition</var>
+ @end deftp
+ </pre>
+ <p><code>@deftp</code> creates an entry in the index of data types.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Abstract-Objects"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Data-Types">Data Types</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>
+<br>
+</div>
+
+<h4 class="subsection">16.5.6 Object-Oriented Programming</h4>
+
+<p><a name="index-Object_002doriented-programming-850"></a>
+Here are the commands for formatting descriptions about abstract
+objects, such as are used in object-oriented programming. A class is
+a defined type of abstract object. An instance of a class is a
+particular object that has the type of the class. An instance
+variable is a variable that belongs to the class but for which each
+instance has its own value.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Object_002dOriented-Variables">Variables</a>
+<li><a accesskey="2" href="#Object_002dOriented-Methods">Methods</a>
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Object_002dOriented-Variables"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Object_002dOriented-Methods">Object-Oriented Methods</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Abstract-Objects">Abstract Objects</a>
+<br>
+</div>
+
+<h5 class="subsubsection">16.5.6.1 Object-Oriented Variables</h5>
+
+<p><a name="index-Variables_002c-object_002doriented-851"></a>
+These commands allow you to define different sorts of variables in
+object-oriented programming languages.
+
+ <dl>
+<dt><code>@defcv </code><var>category</var> <var>class</var> <var>name</var><dd><a name="index-defcv-852"></a>The <code>@defcv</code> command is the general definition command for
+variables associated with classes in object-oriented programming. The
+<code>@defcv</code> command is followed by three arguments: the category of
+thing being defined, the class to which it belongs, and its
+name. For instance:
+
+ <pre class="example"> @defcv {Class Option} Window border-pattern
+ ...
+ @end defcv
+ </pre>
+ <p class="noindent">produces:
+
+ <div class="defun">
+&mdash; Class Option of Window: <b>border-pattern</b><var><a name="index-border_002dpattern-853"></a></var><br>
+<blockquote><small class="dots">...</small>
+</blockquote></div>
+
+ <p><code>@defcv</code> creates an entry in the index of variables.
+
+ <br><dt><code>@deftypecv </code><var>category</var> <var>class</var> <var>data-type</var> <var>name</var><dd><a name="index-deftypecv-854"></a>The <code>@deftypecv</code> command is the definition command for typed
+class variables in object-oriented programming. It is analogous to
+<code>@defcv</code> with the addition of the <var>data-type</var> parameter to
+specify the type of the instance variable. Ordinarily, the data type
+is a programming language construct that should be marked with
+<code>@code</code>. For instance:
+
+ <pre class="example"> @deftypecv {Class Option} Window @code{int} border-pattern
+ ...
+ @end deftypecv
+ </pre>
+ <p class="noindent">produces:
+
+ <div class="defun">
+&mdash; Class Option of Window: <code>int</code> <b>border-pattern</b><var><a name="index-border_002dpattern-855"></a></var><br>
+<blockquote><small class="dots">...</small>
+</blockquote></div>
+
+ <p><code>@deftypecv</code> creates an entry in the index of variables.
+
+ <br><dt><code>@defivar </code><var>class</var> <var>name</var><dd><a name="index-defivar-856"></a>The <code>@defivar</code> command is the definition command for instance
+variables in object-oriented programming. <code>@defivar</code> is
+equivalent to <span class="samp">@defcv {Instance Variable} ...</span>. For
+instance:
+
+ <pre class="example"> @defivar Window border-pattern
+ ...
+ @end defivar
+ </pre>
+ <p class="noindent">produces:
+
+ <div class="defun">
+&mdash; Instance Variable of Window: <b>border-pattern</b><var><a name="index-border_002dpattern-857"></a></var><br>
+<blockquote><small class="dots">...</small>
+</blockquote></div>
+
+ <p><code>@defivar</code> creates an entry in the index of variables.
+
+ <br><dt><code>@deftypeivar </code><var>class</var> <var>data-type</var> <var>name</var><dd><a name="index-deftypeivar-858"></a>The <code>@deftypeivar</code> command is the definition command for typed
+instance variables in object-oriented programming. It is analogous to
+<code>@defivar</code> with the addition of the <var>data-type</var> parameter to
+specify the type of the instance variable. Ordinarily, the data type
+is a programming language construct that should be marked with
+<code>@code</code>. For instance:
+
+ <pre class="example"> @deftypeivar Window @code{int} border-pattern
+ ...
+ @end deftypeivar
+ </pre>
+ <p class="noindent">produces:
+
+ <div class="defun">
+&mdash; Instance Variable of Window: <code>int</code> <b>border-pattern</b><var><a name="index-border_002dpattern-of-Window-859"></a></var><br>
+<blockquote><small class="dots">...</small>
+</blockquote></div>
+
+ <p><code>@deftypeivar</code> creates an entry in the index of variables.
+
+ </dl>
+
+<div class="node">
+<p><hr>
+<a name="Object_002dOriented-Methods"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Object_002dOriented-Variables">Object-Oriented Variables</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Abstract-Objects">Abstract Objects</a>
+<br>
+</div>
+
+<h5 class="subsubsection">16.5.6.2 Object-Oriented Methods</h5>
+
+<p><a name="index-Methods_002c-object_002doriented-860"></a>
+These commands allow you to define different sorts of function-like
+entities resembling methods in object-oriented programming languages.
+These entities take arguments, as functions do, but are associated with
+particular classes of objects.
+
+
+<a name="index-defop-861"></a>
+<dl><dt><code>@defop </code><var>category</var> <var>class</var> <var>name</var> <var>arguments</var><code>...</code><dd>The <code>@defop</code> command is the general definition command for these
+method-like entities.
+
+ <p>For example, some systems have constructs called <dfn>wrappers</dfn> that
+are associated with classes as methods are, but that act more like
+macros than like functions. You could use <code>@defop Wrapper</code> to
+describe one of these.
+
+ <p>Sometimes it is useful to distinguish methods and <dfn>operations</dfn>.
+You can think of an operation as the specification for a method.
+Thus, a window system might specify that all window classes have a
+method named <code>expose</code>; we would say that this window system
+defines an <code>expose</code> operation on windows in general. Typically,
+the operation has a name and also specifies the pattern of arguments;
+all methods that implement the operation must accept the same
+arguments, since applications that use the operation do so without
+knowing which method will implement it.
+
+ <p>Often it makes more sense to document operations than methods. For
+example, window application developers need to know about the
+<code>expose</code> operation, but need not be concerned with whether a
+given class of windows has its own method to implement this operation.
+To describe this operation, you would write:
+
+ <pre class="example"> @defop Operation windows expose
+ </pre>
+ <p>The <code>@defop</code> command is written at the beginning of a line and
+is followed on the same line by the overall name of the category of
+operation, the name of the class of the operation, the name of the
+operation, and its arguments, if any.
+
+ <p>The template is:
+ <pre class="example"> @defop <var>category</var> <var>class</var> <var>name</var> <var>arguments</var>...
+ <var>body-of-definition</var>
+ @end defop
+ </pre>
+ <p><code>@defop</code> creates an entry, such as `<code>expose</code> on
+<code>windows</code>', in the index of functions.
+
+ <p><a name="index-deftypeop-862"></a><br><dt><code>@deftypeop </code><var>category</var> <var>class</var> <var>data-type</var> <var>name</var> <var>arguments</var><code>...</code><dd>The <code>@deftypeop</code> command is the definition command for typed
+operations in object-oriented programming. It is similar to
+<code>@defop</code> with the addition of the <var>data-type</var> parameter to
+specify the return type of the method. <code>@deftypeop</code> creates an
+entry in the index of functions.
+
+ <br><dt><code>@defmethod </code><var>class</var> <var>name</var> <var>arguments</var><code>...</code><dd><a name="index-defmethod-863"></a>The <code>@defmethod</code> command is the definition command for methods
+in object-oriented programming. A method is a kind of function that
+implements an operation for a particular class of objects and its
+subclasses.
+
+ <p><code>@defmethod</code> is equivalent to <span class="samp">@defop Method ...</span>.
+The command is written at the beginning of a line and is followed by
+the name of the class of the method, the name of the method, and its
+arguments, if any.
+
+ <p class="noindent">For example:
+ <pre class="example"> @defmethod <code>bar-class</code> bar-method argument
+ ...
+ @end defmethod
+ </pre>
+ <p class="noindent">illustrates the definition for a method called <code>bar-method</code> of
+the class <code>bar-class</code>. The method takes an argument.
+
+ <p><code>@defmethod</code> creates an entry in the index of functions.
+
+ <br><dt><code>@deftypemethod </code><var>class</var> <var>data-type</var> <var>name</var> <var>arguments</var><code>...</code><dd><a name="index-defmethod-864"></a>The <code>@deftypemethod</code> command is the definition command for methods
+in object-oriented typed languages, such as C++ and Java. It is similar
+to the <code>@defmethod</code> command with the addition of the
+<var>data-type</var> parameter to specify the return type of the method.
+<code>@deftypemethod</code> creates an entry in the index of functions.
+
+ </dl>
+
+<div class="node">
+<p><hr>
+<a name="Def-Cmd-Conventions"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Sample-Function-Definition">Sample Function Definition</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Def-Cmds-in-Detail">Def Cmds in Detail</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Definition-Commands">Definition Commands</a>
+<br>
+</div>
+
+<h3 class="section">16.6 Conventions for Writing Definitions</h3>
+
+<p><a name="index-Definition-conventions-865"></a><a name="index-Conventions-for-writing-definitions-866"></a>
+When you write a definition using <code>@deffn</code>, <code>@defun</code>, or
+one of the other definition commands, please take care to use
+arguments that indicate the meaning, as with the <var>count</var> argument
+to the <code>forward-word</code> function. Also, if the name of an argument
+contains the name of a type, such as <var>integer</var>, take care that the
+argument actually is of that type.
+
+<div class="node">
+<p><hr>
+<a name="Sample-Function-Definition"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Def-Cmd-Conventions">Def Cmd Conventions</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Definition-Commands">Definition Commands</a>
+<br>
+</div>
+
+<h3 class="section">16.7 A Sample Function Definition</h3>
+
+<p><a name="index-Function-definitions-867"></a><a name="index-Command-definitions-868"></a><a name="index-Macro-definitions-869"></a><a name="index-Sample-function-definition-870"></a>
+A function definition uses the <code>@defun</code> and <code>@end defun</code>
+commands. The name of the function follows immediately after the
+<code>@defun</code> command and it is followed, on the same line, by the
+parameter list.
+
+ <p>Here is a definition from <a href="elisp.html#Calling-Functions">Calling Functions (The GNU Emacs Lisp Reference Manual)</a>.
+
+ <blockquote>
+
+ <div class="defun">
+&mdash; Function: <b>apply</b><var> function &amp;rest arguments<a name="index-apply-871"></a></var><br>
+<blockquote><p><code>apply</code> calls <var>function</var> with <var>arguments</var>, just
+like <code>funcall</code> but with one difference: the last of
+<var>arguments</var> is a list of arguments to give to
+<var>function</var>, rather than a single argument. We also say
+that this list is <dfn>appended</dfn> to the other arguments.
+
+ <p><code>apply</code> returns the result of calling <var>function</var>.
+As with <code>funcall</code>, <var>function</var> must either be a Lisp
+function or a primitive function; special forms and macros
+do not make sense in <code>apply</code>.
+
+ <pre class="example"> (setq f 'list)
+ =&gt; list
+ (apply f 'x 'y 'z)
+ error--&gt; Wrong type argument: listp, z
+ (apply '+ 1 2 '(3 4))
+ =&gt; 10
+ (apply '+ '(1 2 3 4))
+ =&gt; 10
+
+ (apply 'append '((a b c) nil (x y z) nil))
+ =&gt; (a b c x y z)
+ </pre>
+ <p>An interesting example of using <code>apply</code> is found in the description
+of <code>mapcar</code>.
+</p></blockquote></div>
+ </blockquote>
+
+ <p>In the Texinfo source file, this example looks like this:
+
+<pre class="example"> @defun apply function &amp;rest arguments
+ @code{apply} calls @var{function} with
+ @var{arguments}, just like @code{funcall} but with one
+ difference: the last of @var{arguments} is a list of
+ arguments to give to @var{function}, rather than a single
+ argument. We also say that this list is @dfn{appended}
+ to the other arguments.
+
+ @code{apply} returns the result of calling
+ @var{function}. As with @code{funcall},
+ @var{function} must either be a Lisp function or a
+ primitive function; special forms and macros do not make
+ sense in @code{apply}.
+
+ @example
+ (setq f 'list)
+ @result{} list
+ (apply f 'x 'y 'z)
+ @error{} Wrong type argument: listp, z
+ (apply '+ 1 2 '(3 4))
+ @result{} 10
+ (apply '+ '(1 2 3 4))
+ @result{} 10
+
+ (apply 'append '((a b c) nil (x y z) nil))
+ @result{} (a b c x y z)
+ @end example
+
+ An interesting example of using @code{apply} is found
+ in the description of @code{mapcar}.
+ @end defun
+</pre>
+ <p class="noindent">In this manual, this function is listed in the Command and Variable
+Index under <code>apply</code>.
+
+ <p>Ordinary variables and user options are described using a format like
+that for functions except that variables do not take arguments.
+
+<div class="node">
+<p><hr>
+<a name="Conditionals"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Internationalization">Internationalization</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Definition-Commands">Definition Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">17 Conditionally Visible Text</h2>
+
+<p><a name="index-Conditionally-visible-text-872"></a><a name="index-Text_002c-conditionally-visible-873"></a><a name="index-Visibility-of-conditional-text-874"></a><a name="index-If-text-conditionally-visible-875"></a>
+The <dfn>conditional commands</dfn> allow you to use different text for
+different output formats, or for general conditions that you define.
+For example, you can use them to specify different text for the
+printed manual and the Info output.
+
+ <p>The conditional commands comprise the following categories.
+
+ <ul>
+<li>Commands specific to an output format (Info, TeX, HTML, <small class="dots">...</small>).
+
+ <li>Commands specific to any output format <em>other</em> than a given
+one (not Info, not TeX, <small class="dots">...</small>).
+
+ <li>`Raw' formatter text for any output format, passed straight
+through with no interpretation of @-commands.
+
+ <li>Format-independent variable substitutions, and testing if a variable
+is set or clear.
+
+ </ul>
+
+<ul class="menu">
+<li><a accesskey="1" href="#Conditional-Commands">Conditional Commands</a>: Text for a given format.
+<li><a accesskey="2" href="#Conditional-Not-Commands">Conditional Not Commands</a>: Text for any format other than a given one.
+<li><a accesskey="3" href="#Raw-Formatter-Commands">Raw Formatter Commands</a>: Using raw formatter commands.
+<li><a accesskey="4" href="#set-clear-value">set clear value</a>: Variable tests and substitutions.
+<li><a accesskey="5" href="#Conditional-Nesting">Conditional Nesting</a>: Using conditionals inside conditionals.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Conditional-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Conditional-Not-Commands">Conditional Not Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Conditionals">Conditionals</a>
+<br>
+</div>
+
+<h3 class="section">17.1 Conditional Commands</h3>
+
+<p>Texinfo has an <code>@if</code><var>format</var> environment for each output
+format, to allow conditional inclusion of text for a particular output
+format.
+
+ <p><a name="index-ifinfo-876"></a><code>@ifinfo</code> begins segments of text that should be ignored by
+TeX when it typesets the printed manual, and by <span class="command">makeinfo</span>
+when not producing Info output. The segment of text appears only in
+the Info file and, for historical compatibility, the plain text
+output.
+
+ <p><a name="index-ifdocbook-877"></a><a name="index-ifhtml-878"></a><a name="index-ifplaintext-879"></a><a name="index-iftex-880"></a><a name="index-ifxml-881"></a>The environments for the other formats are analogous:
+
+ <dl>
+<dt><code>@ifdocbook ... @end ifdocbook</code><dd>Text to appear only in the Docbook output.
+
+ <br><dt><code>@ifhtml ... @end ifhtml</code><dd>Text to appear only in the HTML output.
+
+ <br><dt><code>@ifplaintext ... @end ifplaintext</code><dd>Text to appear only in the plain text output.
+
+ <br><dt><code>@iftex ... @end iftex</code><dd>Text to appear only in the printed manual.
+
+ <br><dt><code>@ifxml ... @end ifxml</code><dd>Text to appear only in the XML output.
+</dl>
+
+ <p>The <code>@if...</code> and <code>@end if...</code> commands must appear
+on lines by themselves in your source file.
+
+ <p>Here is an example showing all these conditionals:
+
+<pre class="example"> @iftex
+ This text will appear only in the printed manual.
+ @end iftex
+ @ifinfo
+ However, this text will appear only in Info and plain text.
+ @end ifinfo
+ @ifhtml
+ And this text will only appear in HTML.
+ @end ifhtml
+ @ifplaintext
+ Whereas this text will only appear in plain text.
+ @end ifplaintext
+ @ifxml
+ Notwithstanding that this will only appear in XML.
+ @end ifxml
+ @ifdocbook
+ Nevertheless, this will only appear in Docbook.
+ @end ifdocbook
+</pre>
+ <p class="noindent">The preceding example produces the following line:
+
+ <p>And this text will only appear in HTML.
+
+<p class="noindent">Notice that you only see one of the input lines, depending on which
+version of the manual you are reading.
+
+<div class="node">
+<p><hr>
+<a name="Conditional-Not-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Raw-Formatter-Commands">Raw Formatter Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Conditional-Commands">Conditional Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Conditionals">Conditionals</a>
+<br>
+</div>
+
+<h3 class="section">17.2 Conditional Not Commands</h3>
+
+<p><a name="index-ifnotdocbook-882"></a><a name="index-ifnothtml-883"></a><a name="index-ifnotinfo-884"></a><a name="index-ifnotplaintext-885"></a><a name="index-ifnottex-886"></a><a name="index-ifnotxml-887"></a>
+You can specify text to be included in any output format <em>other</em>
+than a given one with the <code>@ifnot...</code> environments:
+
+<pre class="example"> @ifnotdocbook ... @end ifnotdocbook
+ @ifnothtml ... @end ifnothtml
+ @ifnotinfo ... @end ifnotinfo
+ @ifnotplaintext ... @end ifnotplaintext
+ @ifnottex ... @end ifnottex
+ @ifnotxml ... @end ifnotxml
+</pre>
+ <p class="noindent">The <code>@ifnot...</code> command and the <code>@end</code> command must
+appear on lines by themselves in your actual source file.
+
+ <p>If the output file is being made in the given format, the
+region is <em>ignored</em>. Otherwise, it is included.
+
+ <p>There is one exception (for historical compatibility):
+<code>@ifnotinfo</code> text is omitted for both Info and plain text
+output, not just Info. To specify text which appears only in Info and
+not in plain text, use <code>@ifnotplaintext</code>, like this:
+
+<pre class="example"> @ifinfo
+ @ifnotplaintext
+ This will be in Info, but not plain text.
+ @end ifnotplaintext
+ @end ifinfo
+</pre>
+ <p>The regions delimited by these commands are ordinary Texinfo source as
+with <code>@iftex</code>, not raw formatter source as with <code>@tex</code>
+(see <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a>).
+
+<div class="node">
+<p><hr>
+<a name="Raw-Formatter-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#set-clear-value">set clear value</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Conditional-Not-Commands">Conditional Not Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Conditionals">Conditionals</a>
+<br>
+</div>
+
+<h3 class="section">17.3 Raw Formatter Commands</h3>
+
+<p><a name="index-Raw-formatter-commands-888"></a><a name="index-_0040TeX_007b_007d-commands_002c-using-ordinary-889"></a><a name="index-Ordinary-_0040TeX_007b_007d-commands_002c-using-890"></a><a name="index-Commands-using-raw-_0040TeX_007b_007d-891"></a><a name="index-Docbook_002c-including-raw-892"></a><a name="index-HTML_002c-including-raw-893"></a><a name="index-XML_002c-including-raw-894"></a><a name="index-Plain-_0040TeX_007b_007d-895"></a>
+Inside a region delineated by <code>@iftex</code> and <code>@end iftex</code>,
+you can embed some raw TeX commands. The Texinfo processors will
+ignore such a region unless TeX output is being produced. You can
+write the TeX commands as you would write them in a normal TeX
+file, except that you must replace the <span class="samp">\</span> used by TeX with an
+<span class="samp">@</span>. For example, in the <code>@titlepage</code> section of a
+Texinfo file, you can use the TeX command <code>@vskip</code> to format
+the copyright page. (The <code>@titlepage</code> command causes Info to
+ignore the region automatically, as it does with the <code>@iftex</code>
+command.)
+
+ <p>However, most features of plain TeX will not work within
+<code>@iftex</code>, as they are overridden by Texinfo features. The
+purpose of <code>@iftex</code> is to provide conditional processing for the
+Texinfo source, not provide access to underlying formatting features.
+
+ <p><a name="index-tex-896"></a>You can enter plain TeX completely, and use <span class="samp">\</span> in the TeX
+commands, by delineating a region with the <code>@tex</code> and <code>@end
+tex</code> commands. All plain TeX commands and category codes are
+restored within an <code>@tex</code> region. The sole exception is that the
+<code>@</code> character still introduces a command, so that <code>@end tex</code>
+can be recognized properly. As with <code>@iftex</code>, Texinfo
+processors will ignore such a region unless TeX output is being produced.
+
+ <p><a name="index-_005cgdef-_0040r_007bwithin-_0040code_007b_0040_0040tex_007d_007d-897"></a>In complex cases, you may wish to define new TeX macros within
+<code>@tex</code>. You must use <code>\gdef</code> to do this, not <code>\def</code>,
+because <code>@tex</code> regions are processed in a TeX group.
+
+ <p><a name="index-Mathematical-expressions-898"></a>As an example, here is a mathematical expression written in plain TeX:
+
+<pre class="example"> @tex
+ $$ \chi^2 = \sum_{i=1}^N
+ \left (y_i - (a + b x_i)
+ \over \sigma_i\right)^2 $$
+ @end tex
+</pre>
+ <p class="noindent">The output of this example will appear only in a printed manual. If
+you are reading this in Info, you will not see the equation that appears
+in the printed manual.
+
+ <p><a name="index-ifhtml-899"></a><a name="index-html-900"></a>Analogously, you can use <code>@ifhtml ... @end ifhtml</code> to delimit
+a region to be included in HTML output only, and <code>@html ...
+@end html</code> for a region of raw HTML.
+
+ <p><a name="index-ifxml-901"></a><a name="index-xml-902"></a>Likewise, you can use <code>@ifxml ... @end ifxml</code> to delimit
+a region to be included in XML output only, and <code>@xml ...
+@end xml</code> for a region of raw XML.
+
+ <p><a name="index-ifdocbook-903"></a><a name="index-docbook-904"></a>Again likewise, you can use <code>@ifdocbook ... @end ifdocbook</code>
+to delimit a region to be included in Docbook output only, and
+<code>@docbook ... @end docbook</code> for a region of raw Docbook.
+
+ <p>In all cases, the exception to the raw processing is that <code>@</code> is
+still an escape character, so the <code>@end</code> command can be
+recognized.
+
+<div class="node">
+<p><hr>
+<a name="set-clear-value"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Conditional-Nesting">Conditional Nesting</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Raw-Formatter-Commands">Raw Formatter Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Conditionals">Conditionals</a>
+<br>
+</div>
+
+<h3 class="section">17.4 <code>@set</code>, <code>@clear</code>, and <code>@value</code></h3>
+
+<p>You can direct the Texinfo formatting commands to format or ignore parts
+of a Texinfo file with the <code>@set</code>, <code>@clear</code>, <code>@ifset</code>,
+and <code>@ifclear</code> commands.
+
+ <p>Here are brief descriptions of these commands, see the following
+sections for more details:
+
+ <dl>
+<dt><code>@set </code><var>flag</var><code> [</code><var>value</var><code>]</code><dd>Set the variable <var>flag</var>, to the optional <var>value</var> if specifed.
+
+ <br><dt><code>@clear </code><var>flag</var><dd>Undefine the variable <var>flag</var>, whether or not it was previously defined.
+
+ <br><dt><code>@ifset </code><var>flag</var><dd>If <var>flag</var> is set, text through the next <code>@end ifset</code> command
+is formatted. If <var>flag</var> is clear, text through the following
+<code>@end ifset</code> command is ignored.
+
+ <br><dt><code>@ifclear </code><var>flag</var><dd>If <var>flag</var> is set, text through the next <code>@end ifclear</code> command
+is ignored. If <var>flag</var> is clear, text through the following
+<code>@end ifclear</code> command is formatted.
+</dl>
+
+<ul class="menu">
+<li><a accesskey="1" href="#set-value">set value</a>: Expand a flag variable to a string.
+<li><a accesskey="2" href="#ifset-ifclear">ifset ifclear</a>: Format a region if a flag is set.
+<li><a accesskey="3" href="#value-Example">value Example</a>: An easy way to update edition information.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="set-value"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#ifset-ifclear">ifset ifclear</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#set-clear-value">set clear value</a>
+<br>
+</div>
+
+<h4 class="subsection">17.4.1 <code>@set</code> and <code>@value</code></h4>
+
+<p><a name="index-value-905"></a>
+You use the <code>@set</code> command to specify a value for a flag, which
+is later expanded by the <code>@value</code> command.
+
+ <p>A <dfn>flag</dfn> (aka <dfn>variable</dfn>) is an identifier. It is best to use
+only letters and numerals in a flag name, not <span class="samp">-</span> or
+<span class="samp">_</span>&mdash;they will work in some contexts, but not all, due to
+limitations in TeX.
+
+ <p>The value is the remainder of the input line, and can contain anything.
+
+ <p>Write the <code>@set</code> command like this:
+
+<pre class="example"> @set foo This is a string.
+</pre>
+ <p class="noindent">This sets the value of the flag <code>foo</code> to &ldquo;This is a string.&rdquo;.
+
+ <p>The Texinfo formatters then replace an <code>@value{</code><var>flag</var><code>}</code>
+command with the string to which <var>flag</var> is set. Thus, when
+<code>foo</code> is set as shown above, the Texinfo formatters convert this:
+
+<pre class="example"> @value{foo}
+<br><span class="roman">to this:</span><br>
+ This is a string.
+</pre>
+ <p>You can write an <code>@value</code> command within a paragraph; but you
+must write an <code>@set</code> command on a line of its own.
+
+ <p>If you write the <code>@set</code> command like this:
+
+<pre class="example"> @set foo
+</pre>
+ <p class="noindent">without specifying a string, the value of <code>foo</code> is the empty string.
+
+ <p>If you clear a previously set flag with <code>@clear </code><var>flag</var>, a
+subsequent <code>@value{flag}</code> command will report an error.
+
+ <p>For example, if you set <code>foo</code> as follows:
+
+<pre class="example"> @set howmuch very, very, very
+</pre>
+ <p class="noindent">then the formatters transform
+
+<pre class="example"> It is a @value{howmuch} wet day.
+<br><span class="roman">into</span><br>
+ It is a very, very, very wet day.
+</pre>
+ <p>If you write
+
+<pre class="example"> @clear howmuch
+</pre>
+ <p class="noindent">then the formatters transform
+
+<pre class="example"> It is a @value{howmuch} wet day.
+<br><span class="roman">into</span><br>
+ It is a {No value for "howmuch"} wet day.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="ifset-ifclear"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#value-Example">value Example</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#set-value">set value</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#set-clear-value">set clear value</a>
+<br>
+</div>
+
+<h4 class="subsection">17.4.2 <code>@ifset</code> and <code>@ifclear</code></h4>
+
+<p><a name="index-ifset-906"></a>When a <var>flag</var> is set, the Texinfo formatting commands format text
+between subsequent pairs of <code>@ifset </code><var>flag</var> and <code>@end
+ifset</code> commands. When the <var>flag</var> is cleared, the Texinfo formatting
+commands do <em>not</em> format the text. <code>@ifclear</code> operates
+analogously.
+
+ <p>Write the conditionally formatted text between <code>@ifset </code><var>flag</var>
+and <code>@end ifset</code> commands, like this:
+
+<pre class="example"> @ifset <var>flag</var>
+ <var>conditional-text</var>
+ @end ifset
+</pre>
+ <p>For example, you can create one document that has two variants, such as
+a manual for a `large' and `small' model:
+
+ <p><a name="index-Shrubbery-907"></a>
+<pre class="example"> You can use this machine to dig up shrubs
+ without hurting them.
+
+ @set large
+
+ @ifset large
+ It can also dig up fully grown trees.
+ @end ifset
+
+ Remember to replant promptly ...
+</pre>
+ <p class="noindent">In the example, the formatting commands will format the text between
+<code>@ifset large</code> and <code>@end ifset</code> because the <code>large</code>
+flag is set.
+
+ <p>When <var>flag</var> is cleared, the Texinfo formatting commands do
+<em>not</em> format the text between <code>@ifset </code><var>flag</var> and
+<code>@end ifset</code>; that text is ignored and does not appear in either
+printed or Info output.
+
+ <p>For example, if you clear the flag of the preceding example by writing
+an <code>@clear large</code> command after the <code>@set large</code> command
+(but before the conditional text), then the Texinfo formatting commands
+ignore the text between the <code>@ifset large</code> and <code>@end ifset</code>
+commands. In the formatted output, that text does not appear; in both
+printed and Info output, you see only the lines that say, &ldquo;You can use
+this machine to dig up shrubs without hurting them. Remember to replant
+promptly <small class="dots">...</small>&rdquo;.
+
+ <p><a name="index-ifclear-908"></a>If a flag is cleared with an <code>@clear </code><var>flag</var> command, then
+the formatting commands format text between subsequent pairs of
+<code>@ifclear</code> and <code>@end ifclear</code> commands. But if the flag
+is set with <code>@set </code><var>flag</var>, then the formatting commands do
+<em>not</em> format text between an <code>@ifclear</code> and an <code>@end
+ifclear</code> command; rather, they ignore that text. An <code>@ifclear</code>
+command looks like this:
+
+<pre class="example"> @ifclear <var>flag</var>
+</pre>
+ <div class="node">
+<p><hr>
+<a name="value-Example"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#ifset-ifclear">ifset ifclear</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#set-clear-value">set clear value</a>
+<br>
+</div>
+
+<h4 class="subsection">17.4.3 <code>@value</code> Example</h4>
+
+<p>You can use the <code>@value</code> command to minimize the number of
+places you need to change when you record an update to a manual.
+See <a href="#GNU-Sample-Texts">GNU Sample Texts</a>, for the full text of an example of using this
+to work with Automake distributions.
+
+ <p>This example is adapted from <a href="make.html#Top">Overview (The GNU Make Manual)</a>.
+
+ <ol type=1 start=1>
+<li>Set the flags:
+
+ <pre class="example"> @set EDITION 0.35 Beta
+ @set VERSION 3.63 Beta
+ @set UPDATED 14 August 1992
+ @set UPDATE-MONTH August 1992
+ </pre>
+ <li>Write text for the <code>@copying</code> section (see <a href="#copying">copying</a>):
+
+ <pre class="example"> @copying
+ This is Edition @value{EDITION},
+ last updated @value{UPDATED},
+ of @cite{The GNU Make Manual},
+ for @code{make}, version @value{VERSION}.
+
+ Copyright ...
+
+ Permission is granted ...
+ @end copying
+ </pre>
+ <li>Write text for the title page, for people reading the printed manual:
+
+ <pre class="example"> @titlepage
+ @title GNU Make
+ @subtitle A Program for Directing Recompilation
+ @subtitle Edition @value{EDITION}, ...
+ @subtitle @value{UPDATE-MONTH}
+ @page
+ @insertcopying
+ ...
+ @end titlepage
+ </pre>
+ <p class="noindent">(On a printed cover, a date listing the month and the year looks less
+fussy than a date listing the day as well as the month and year.)
+
+ <li>Write text for the Top node, for people reading the Info file:
+
+ <pre class="example"> @ifnottex
+ @node Top
+ @top Make
+
+ @insertcopying
+ ...
+ @end ifnottex
+ </pre>
+ <p>After you format the manual, the <code>@value</code> constructs have been
+expanded, so the output contains text like this:
+
+ <pre class="example"> This is Edition 0.35 Beta, last updated 14 August 1992,
+ of `The GNU Make Manual', for `make', Version 3.63 Beta.
+ </pre>
+ </ol>
+
+ <p>When you update the manual, you change only the values of the flags; you
+do not need to edit the three sections.
+
+<div class="node">
+<p><hr>
+<a name="Conditional-Nesting"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#set-clear-value">set clear value</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Conditionals">Conditionals</a>
+<br>
+</div>
+
+<h3 class="section">17.5 Conditional Nesting</h3>
+
+<p><a name="index-Conditionals_002c-nested-909"></a><a name="index-Nesting-conditionals-910"></a>
+Conditionals can be nested; however, the details are a little tricky.
+The difficulty comes with failing conditionals, such as
+<code>@ifhtml</code> when HTML is not being produced, where the included
+text is to be ignored. However, it is not to be <em>completely</em>
+ignored, since it is useful to have one <code>@ifset</code> inside another,
+for example&mdash;that is a way to include text only if two conditions are
+met. Here's an example:
+
+<pre class="example"> @ifset somevar
+ @ifset anothervar
+ Both somevar and anothervar are set.
+ @end ifset
+ @ifclear anothervar
+ Somevar is set, anothervar is not.
+ @end ifclear
+ @end ifset
+</pre>
+ <p>Technically, Texinfo requires that for a failing conditional, the
+ignored text must be properly nested with respect to that failing
+conditional. Unfortunately, it's not always feasible to check that
+<em>all</em> conditionals are properly nested, because then the
+processors could have to fully interpret the ignored text, which
+defeats the purpose of the command. Here's an example illustrating
+these rules:
+
+<pre class="example"> @ifset a
+ @ifset b
+ @ifclear ok - ok, ignored
+ @end junky - ok, ignored
+ @end ifset
+ @c WRONG - missing @end ifset.
+</pre>
+ <p>Finally, as mentioned above, all conditional commands must be on lines
+by themselves, with no text (even spaces) before or after. Otherwise,
+the processors cannot reliably determine which commands to consider
+for nesting purposes.
+
+<div class="node">
+<p><hr>
+<a name="Internationalization"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Conditionals">Conditionals</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">18 Internationalization</h2>
+
+<p><a name="index-Internationalization-911"></a>Texinfo has some support for writing in languages other than English,
+although this area still needs considerable work.
+
+ <p>For a list of the various accented and special characters Texinfo
+supports, see <a href="#Inserting-Accents">Inserting Accents</a>.
+
+<ul class="menu">
+<li><a accesskey="1" href="#documentlanguage">documentlanguage</a>: Declaring the current language.
+<li><a accesskey="2" href="#documentencoding">documentencoding</a>: Declaring the input encoding.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="documentlanguage"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#documentencoding">documentencoding</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Internationalization">Internationalization</a>
+<br>
+</div>
+
+<h3 class="section">18.1 <code>@documentlanguage </code><var>cc</var>: Set the Document Language</h3>
+
+<p><a name="index-documentlanguage-912"></a><a name="index-Language_002c-declaring-913"></a><a name="index-Document-language_002c-declaring-914"></a>
+The <code>@documentlanguage</code> command declares the current document
+language. Write it on a line by itself, with a two-letter ISO-639
+language code following (list is included below). If you have a
+multilingual document, the intent is to be able to use this command
+multiple times, to declare each language change. If the command is not
+used at all, the default is <code>en</code> for English.
+
+ <p><a name="index-_0040file_007btxi_002d_0040var_007bcc_007d_002etex_007d-915"></a>At present, this command is ignored in Info and HTML output. For
+TeX, it causes the file <span class="file">txi-</span><var>cc</var><span class="file">.tex</span> to be read (if it
+exists). Such a file appropriately redefines the various English words
+used in TeX output, such as `Chapter', `See', and so on.
+
+ <p><a name="index-Hyphenation-patterns_002c-language_002ddependent-916"></a>It would be good if this command also changed TeX's ideas of the
+current hyphenation patterns (via the TeX primitive
+<code>\language</code>), but this is unfortunately not currently implemented.
+
+ <p><a name="index-ISO-639-codes-917"></a><a name="index-Language-codes-918"></a>Hereare the valid language codes, from ISO-639.
+
+ <p><table summary=""><tr align="left"><td valign="top" width="7%"><code>aa</code> </td><td valign="top" width="26%">Afar </td><td valign="top" width="7%">
+<code>ab</code> </td><td valign="top" width="26%">Abkhazian </td><td valign="top" width="7%">
+<code>af</code> </td><td valign="top" width="26%">Afrikaans
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>am</code> </td><td valign="top" width="26%">Amharic </td><td valign="top" width="7%">
+<code>ar</code> </td><td valign="top" width="26%">Arabic </td><td valign="top" width="7%">
+<code>as</code> </td><td valign="top" width="26%">Assamese
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ay</code> </td><td valign="top" width="26%">Aymara </td><td valign="top" width="7%">
+<code>az</code> </td><td valign="top" width="26%">Azerbaijani </td><td valign="top" width="7%">
+<code>ba</code> </td><td valign="top" width="26%">Bashkir
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>be</code> </td><td valign="top" width="26%">Byelorussian </td><td valign="top" width="7%">
+<code>bg</code> </td><td valign="top" width="26%">Bulgarian </td><td valign="top" width="7%">
+<code>bh</code> </td><td valign="top" width="26%">Bihari
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>bi</code> </td><td valign="top" width="26%">Bislama </td><td valign="top" width="7%">
+<code>bn</code> </td><td valign="top" width="26%">Bengali; Bangla </td><td valign="top" width="7%">
+<code>bo</code> </td><td valign="top" width="26%">Tibetan
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>br</code> </td><td valign="top" width="26%">Breton </td><td valign="top" width="7%">
+<code>ca</code> </td><td valign="top" width="26%">Catalan </td><td valign="top" width="7%">
+<code>co</code> </td><td valign="top" width="26%">Corsican
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>cs</code> </td><td valign="top" width="26%">Czech </td><td valign="top" width="7%">
+<code>cy</code> </td><td valign="top" width="26%">Welsh </td><td valign="top" width="7%">
+<code>da</code> </td><td valign="top" width="26%">Danish
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>de</code> </td><td valign="top" width="26%">German </td><td valign="top" width="7%">
+<code>dz</code> </td><td valign="top" width="26%">Bhutani </td><td valign="top" width="7%">
+<code>el</code> </td><td valign="top" width="26%">Greek
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>en</code> </td><td valign="top" width="26%">English </td><td valign="top" width="7%">
+<code>eo</code> </td><td valign="top" width="26%">Esperanto </td><td valign="top" width="7%">
+<code>es</code> </td><td valign="top" width="26%">Spanish
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>et</code> </td><td valign="top" width="26%">Estonian </td><td valign="top" width="7%">
+<code>eu</code> </td><td valign="top" width="26%">Basque </td><td valign="top" width="7%">
+<code>fa</code> </td><td valign="top" width="26%">Persian
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>fi</code> </td><td valign="top" width="26%">Finnish </td><td valign="top" width="7%">
+<code>fj</code> </td><td valign="top" width="26%">Fiji </td><td valign="top" width="7%">
+<code>fo</code> </td><td valign="top" width="26%">Faroese
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>fr</code> </td><td valign="top" width="26%">French </td><td valign="top" width="7%">
+<code>fy</code> </td><td valign="top" width="26%">Frisian </td><td valign="top" width="7%">
+<code>ga</code> </td><td valign="top" width="26%">Irish
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>gd</code> </td><td valign="top" width="26%">Scots Gaelic </td><td valign="top" width="7%">
+<code>gl</code> </td><td valign="top" width="26%">Galician </td><td valign="top" width="7%">
+<code>gn</code> </td><td valign="top" width="26%">Guarani
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>gu</code> </td><td valign="top" width="26%">Gujarati </td><td valign="top" width="7%">
+<code>ha</code> </td><td valign="top" width="26%">Hausa </td><td valign="top" width="7%">
+<code>he</code> </td><td valign="top" width="26%">Hebrew
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>hi</code> </td><td valign="top" width="26%">Hindi </td><td valign="top" width="7%">
+<code>hr</code> </td><td valign="top" width="26%">Croatian </td><td valign="top" width="7%">
+<code>hu</code> </td><td valign="top" width="26%">Hungarian
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>hy</code> </td><td valign="top" width="26%">Armenian </td><td valign="top" width="7%">
+<code>ia</code> </td><td valign="top" width="26%">Interlingua </td><td valign="top" width="7%">
+<code>id</code> </td><td valign="top" width="26%">Indonesian
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ie</code> </td><td valign="top" width="26%">Interlingue </td><td valign="top" width="7%">
+<code>ik</code> </td><td valign="top" width="26%">Inupiak </td><td valign="top" width="7%">
+<code>is</code> </td><td valign="top" width="26%">Icelandic
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>it</code> </td><td valign="top" width="26%">Italian </td><td valign="top" width="7%">
+<code>iu</code> </td><td valign="top" width="26%">Inuktitut </td><td valign="top" width="7%">
+<code>ja</code> </td><td valign="top" width="26%">Japanese
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>jw</code> </td><td valign="top" width="26%">Javanese </td><td valign="top" width="7%">
+<code>ka</code> </td><td valign="top" width="26%">Georgian </td><td valign="top" width="7%">
+<code>kk</code> </td><td valign="top" width="26%">Kazakh
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>kl</code> </td><td valign="top" width="26%">Greenlandic </td><td valign="top" width="7%">
+<code>km</code> </td><td valign="top" width="26%">Cambodian </td><td valign="top" width="7%">
+<code>kn</code> </td><td valign="top" width="26%">Kannada
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ks</code> </td><td valign="top" width="26%">Kashmiri </td><td valign="top" width="7%">
+<code>ko</code> </td><td valign="top" width="26%">Korean </td><td valign="top" width="7%">
+<code>ku</code> </td><td valign="top" width="26%">Kurdish
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ky</code> </td><td valign="top" width="26%">Kirghiz </td><td valign="top" width="7%">
+<code>la</code> </td><td valign="top" width="26%">Latin </td><td valign="top" width="7%">
+<code>ln</code> </td><td valign="top" width="26%">Lingala
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>lt</code> </td><td valign="top" width="26%">Lithuanian </td><td valign="top" width="7%">
+<code>lo</code> </td><td valign="top" width="26%">Laothian </td><td valign="top" width="7%">
+<code>lv</code> </td><td valign="top" width="26%">Latvian, Lettish
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>mg</code> </td><td valign="top" width="26%">Malagasy </td><td valign="top" width="7%">
+<code>mi</code> </td><td valign="top" width="26%">Maori </td><td valign="top" width="7%">
+<code>mk</code> </td><td valign="top" width="26%">Macedonian
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ml</code> </td><td valign="top" width="26%">Malayalam </td><td valign="top" width="7%">
+<code>mn</code> </td><td valign="top" width="26%">Mongolian </td><td valign="top" width="7%">
+<code>mo</code> </td><td valign="top" width="26%">Moldavian
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>mr</code> </td><td valign="top" width="26%">Marathi </td><td valign="top" width="7%">
+<code>ms</code> </td><td valign="top" width="26%">Malay </td><td valign="top" width="7%">
+<code>mt</code> </td><td valign="top" width="26%">Maltese
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>my</code> </td><td valign="top" width="26%">Burmese </td><td valign="top" width="7%">
+<code>na</code> </td><td valign="top" width="26%">Nauru </td><td valign="top" width="7%">
+<code>ne</code> </td><td valign="top" width="26%">Nepali
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>nl</code> </td><td valign="top" width="26%">Dutch </td><td valign="top" width="7%">
+<code>no</code> </td><td valign="top" width="26%">Norwegian </td><td valign="top" width="7%">
+<code>oc</code> </td><td valign="top" width="26%">Occitan
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>om</code> </td><td valign="top" width="26%">(Afan) Oromo </td><td valign="top" width="7%">
+<code>or</code> </td><td valign="top" width="26%">Oriya </td><td valign="top" width="7%">
+<code>pa</code> </td><td valign="top" width="26%">Punjabi
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>pl</code> </td><td valign="top" width="26%">Polish </td><td valign="top" width="7%">
+<code>ps</code> </td><td valign="top" width="26%">Pashto, Pushto </td><td valign="top" width="7%">
+<code>pt</code> </td><td valign="top" width="26%">Portuguese
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>qu</code> </td><td valign="top" width="26%">Quechua </td><td valign="top" width="7%">
+<code>rm</code> </td><td valign="top" width="26%">Rhaeto-Romance </td><td valign="top" width="7%">
+<code>rn</code> </td><td valign="top" width="26%">Kirundi
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ro</code> </td><td valign="top" width="26%">Romanian </td><td valign="top" width="7%">
+<code>ru</code> </td><td valign="top" width="26%">Russian </td><td valign="top" width="7%">
+<code>rw</code> </td><td valign="top" width="26%">Kinyarwanda
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>sa</code> </td><td valign="top" width="26%">Sanskrit </td><td valign="top" width="7%">
+<code>sd</code> </td><td valign="top" width="26%">Sindhi </td><td valign="top" width="7%">
+<code>sg</code> </td><td valign="top" width="26%">Sangro
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>sh</code> </td><td valign="top" width="26%">Serbo-Croatian </td><td valign="top" width="7%">
+<code>si</code> </td><td valign="top" width="26%">Sinhalese </td><td valign="top" width="7%">
+<code>sk</code> </td><td valign="top" width="26%">Slovak
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>sl</code> </td><td valign="top" width="26%">Slovenian </td><td valign="top" width="7%">
+<code>sm</code> </td><td valign="top" width="26%">Samoan </td><td valign="top" width="7%">
+<code>sn</code> </td><td valign="top" width="26%">Shona
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>so</code> </td><td valign="top" width="26%">Somali </td><td valign="top" width="7%">
+<code>sq</code> </td><td valign="top" width="26%">Albanian </td><td valign="top" width="7%">
+<code>sr</code> </td><td valign="top" width="26%">Serbian
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ss</code> </td><td valign="top" width="26%">Siswati </td><td valign="top" width="7%">
+<code>st</code> </td><td valign="top" width="26%">Sesotho </td><td valign="top" width="7%">
+<code>su</code> </td><td valign="top" width="26%">Sundanese
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>sv</code> </td><td valign="top" width="26%">Swedish </td><td valign="top" width="7%">
+<code>sw</code> </td><td valign="top" width="26%">Swahili </td><td valign="top" width="7%">
+<code>ta</code> </td><td valign="top" width="26%">Tamil
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>te</code> </td><td valign="top" width="26%">Telugu </td><td valign="top" width="7%">
+<code>tg</code> </td><td valign="top" width="26%">Tajik </td><td valign="top" width="7%">
+<code>th</code> </td><td valign="top" width="26%">Thai
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ti</code> </td><td valign="top" width="26%">Tigrinya </td><td valign="top" width="7%">
+<code>tk</code> </td><td valign="top" width="26%">Turkmen </td><td valign="top" width="7%">
+<code>tl</code> </td><td valign="top" width="26%">Tagalog
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>tn</code> </td><td valign="top" width="26%">Setswana </td><td valign="top" width="7%">
+<code>to</code> </td><td valign="top" width="26%">Tonga </td><td valign="top" width="7%">
+<code>tr</code> </td><td valign="top" width="26%">Turkish
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ts</code> </td><td valign="top" width="26%">Tsonga </td><td valign="top" width="7%">
+<code>tt</code> </td><td valign="top" width="26%">Tatar </td><td valign="top" width="7%">
+<code>tw</code> </td><td valign="top" width="26%">Twi
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>ug</code> </td><td valign="top" width="26%">Uighur </td><td valign="top" width="7%">
+<code>uk</code> </td><td valign="top" width="26%">Ukrainian </td><td valign="top" width="7%">
+<code>ur</code> </td><td valign="top" width="26%">Urdu
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>uz</code> </td><td valign="top" width="26%">Uzbek </td><td valign="top" width="7%">
+<code>vi</code> </td><td valign="top" width="26%">Vietnamese </td><td valign="top" width="7%">
+<code>vo</code> </td><td valign="top" width="26%">Volapuk
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>wo</code> </td><td valign="top" width="26%">Wolof </td><td valign="top" width="7%">
+<code>xh</code> </td><td valign="top" width="26%">Xhosa </td><td valign="top" width="7%">
+<code>yi</code> </td><td valign="top" width="26%">Yiddish
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>yo</code> </td><td valign="top" width="26%">Yoruba </td><td valign="top" width="7%">
+<code>za</code> </td><td valign="top" width="26%">Zhuang </td><td valign="top" width="7%">
+<code>zh</code> </td><td valign="top" width="26%">Chinese
+<br></td></tr><tr align="left"><td valign="top" width="7%"><code>zu</code> </td><td valign="top" width="26%">Zulu
+ <br></td></tr></table>
+
+<div class="node">
+<p><hr>
+<a name="documentencoding"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#documentlanguage">documentlanguage</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Internationalization">Internationalization</a>
+<br>
+</div>
+
+<h3 class="section">18.2 <code>@documentencoding </code><var>enc</var>: Set Input Encoding</h3>
+
+<p><a name="index-documentencoding-919"></a><a name="index-Encoding_002c-declaring-920"></a><a name="index-Input-encoding_002c-declaring-921"></a><a name="index-Character-set_002c-declaring-922"></a><a name="index-Document-input-encoding-923"></a>
+The <code>@documentencoding</code> command declares the input document
+encoding. Write it on a line by itself, with a valid encoding
+specification following.
+
+ <p>At present, Texinfo supports only three encodings:
+
+ <dl>
+<dt><code>US-ASCII</code><dd>This has no particular effect, but it's included for completeness.
+<dt><code>ISO-8859-1</code><br><dt><code>ISO-8859-2</code><dd>These specify the standard encodings for Western European and
+Eastern European languages, respectively. A full description of the
+encodings is beyond our scope here;
+<a href="http://czyborra.com/charsets/iso8859.html">http://czyborra.com/charsets/iso8859.html</a> is one of many useful
+references.
+</dl>
+
+ <p>Specifying an encoding <var>enc</var> has the following effects:
+
+ <p><a name="index-_002d_002denable_002dencoding-924"></a><a name="index-Local-Variables_003a-section_002c-for-encoding-925"></a><a name="index-Info-output_002c-and-encoding-926"></a>In Info output, if the option <span class="option">--enable-encoding</span> is also given
+to <span class="command">makeinfo</span>, a so-called `Local Variables' section
+(see <a href="emacs.html#File-Variables">File Variables (The GNU Emacs Manual)</a>) is output
+including <var>enc</var>. This allows Info readers to set the encoding
+appropriately:
+
+<pre class="example"> Local Variables:
+ coding: <var>enc</var>
+ End:
+</pre>
+ <p><a name="index-HTML-output_002c-and-encodings-927"></a><a name="index-_0040code_007bhttp_002dequiv_007d_002c-and-charset-specification-928"></a><a name="index-_0040code_007b_003cmeta_003e_007d-HTML-tag_002c-and-charset-specification-929"></a>In HTML output, a <span class="samp">&lt;meta&gt;</span> tag is output, in the <span class="samp">&lt;head&gt;</span>
+section of the HTML, that specifies <var>enc</var>. Web servers and
+browsers cooperate to use this information so the correct encoding is
+used to display the page.
+
+<pre class="example"> &lt;meta http-equiv="Content-Type" content="text/html;
+ charset=<var>enc</var>"&gt;
+</pre>
+ <p>In all other cases, it is recognized but ignored.
+
+<div class="node">
+<p><hr>
+<a name="Defining-New-Texinfo-Commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Hardcopy">Hardcopy</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Internationalization">Internationalization</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">19 Defining New Texinfo Commands</h2>
+
+<p><a name="index-Macros-930"></a><a name="index-Defining-new-Texinfo-commands-931"></a><a name="index-New-Texinfo-commands_002c-defining-932"></a><a name="index-Texinfo-commands_002c-defining-new-933"></a><a name="index-User_002ddefined-Texinfo-commands-934"></a>
+Texinfo provides several ways to define new commands:
+
+ <ul>
+<li>A Texinfo <dfn>macro</dfn> allows you to define a new Texinfo command as any
+sequence of text and/or existing commands (including other macros). The
+macro can have any number of <dfn>parameters</dfn>&mdash;text you supply each
+time you use the macro.
+
+ <p>Incidentally, these macros have nothing to do with the <code>@defmac</code>
+command, which is for documenting macros in the subject of the manual
+(see <a href="#Def-Cmd-Template">Def Cmd Template</a>).
+
+ <li><span class="samp">@alias</span> is a convenient way to define a new name for an existing
+command.
+
+ <li><span class="samp">@definfoenclose</span> allows you to define new commands with
+customized output in the Info file.
+
+ </ul>
+
+<ul class="menu">
+<li><a accesskey="1" href="#Defining-Macros">Defining Macros</a>: Defining and undefining new commands.
+<li><a accesskey="2" href="#Invoking-Macros">Invoking Macros</a>: Using a macro, once you've defined it.
+<li><a accesskey="3" href="#Macro-Details">Macro Details</a>: Limitations of Texinfo macros.
+<li><a accesskey="4" href="#alias">alias</a>: Command aliases.
+<li><a accesskey="5" href="#definfoenclose">definfoenclose</a>: Customized highlighting.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Defining-Macros"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Invoking-Macros">Invoking Macros</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a>
+<br>
+</div>
+
+<h3 class="section">19.1 Defining Macros</h3>
+
+<p><a name="index-Defining-macros-935"></a><a name="index-Macro-definitions-936"></a>
+<a name="index-macro-937"></a>You use the Texinfo <code>@macro</code> command to define a macro, like this:
+
+<pre class="example"> @macro <var>macroname</var>{<var>param1</var>, <var>param2</var>, ...}
+ <var>text</var> ... \<var>param1</var>\ ...
+ @end macro
+</pre>
+ <p>The <dfn>parameters</dfn> <var>param1</var>, <var>param2</var>, <small class="dots">...</small> correspond to
+arguments supplied when the macro is subsequently used in the document
+(described in the next section).
+
+ <p><a name="index-Macro-names_002c-valid-characters-in-938"></a><a name="index-Names-of-macros_002c-valid-characters-of-939"></a>For a macro to work consistently with TeX, <var>macroname</var> must
+consist entirely of letters: no digits, hyphens, underscores, or other
+special characters. So, we recommend using only letters. However,
+<span class="command">makeinfo</span> will accept anything except <span class="samp">{}_^=</span>;
+<span class="samp">_</span> and <span class="samp">^</span> are excluded so that macros can be called in
+<code>@math</code> mode without a following space
+(see <a href="#math"><code>@math</code></a>).
+
+ <p>If a macro needs no parameters, you can define it either with an empty
+list (<span class="samp">@macro foo {}</span>) or with no braces at all (<span class="samp">@macro
+foo</span>).
+
+ <p><a name="index-Body-of-a-macro-940"></a><a name="index-Mutually-recursive-macros-941"></a><a name="index-Recursion_002c-mutual-942"></a>The definition or <dfn>body</dfn> of the macro can contain most Texinfo
+commands, including previously-defined macros. Not-yet-defined macro
+invocations are not allowed; thus, it is not possible to have mutually
+recursive Texinfo macros. Also, a macro definition that defines another
+macro does not work in TeX due to limitations in the design of
+<code>@macro</code>.
+
+ <p><a name="index-Parameters-to-macros-943"></a>In the macro body, instances of a parameter name surrounded by
+backslashes, as in <span class="samp">\</span><var>param1</var><span class="samp">\</span> in the example above, are
+replaced by the corresponding argument from the macro invocation. You
+can use parameter names any number of times in the body, including zero.
+
+ <p><a name="index-Backslash-in-macros-944"></a>To get a single <span class="samp">\</span> in the macro expansion, use <span class="samp">\\</span>. Any
+other use of <span class="samp">\</span> in the body yields a warning.
+
+ <p><a name="index-Spaces-in-macros-945"></a><a name="index-Whitespace-in-macros-946"></a>The newlines after the <code>@macro</code> line and before the <code>@end
+macro</code> line are ignored, that is, not included in the macro body. All
+other whitespace is treated according to the usual Texinfo rules.
+
+ <p><a name="index-Recursive-macro-invocations-947"></a><a name="index-rmacro-948"></a>To allow a macro to be used recursively, that is, in an argument to a
+call to itself, you must define it with <span class="samp">@rmacro</span>, like this:
+
+<pre class="example"> @rmacro rmac {arg}
+ a\arg\b
+ @end rmacro
+ ...
+ @rmac{1@rmac{text}2}
+</pre>
+ <p>This produces the output `a1atextb2b'. With <span class="samp">@macro</span> instead of
+<span class="samp">@rmacro</span>, an error message is given.
+
+ <p><a name="index-unmacro-949"></a><a name="index-Macros_002c-undefining-950"></a><a name="index-Undefining-macros-951"></a>You can undefine a macro <var>foo</var> with <code>@unmacro </code><var>foo</var>.
+It is not an error to undefine a macro that is already undefined.
+For example:
+
+<pre class="example"> @unmacro foo
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Invoking-Macros"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Macro-Details">Macro Details</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Defining-Macros">Defining Macros</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a>
+<br>
+</div>
+
+<h3 class="section">19.2 Invoking Macros</h3>
+
+<p><a name="index-Invoking-macros-952"></a><a name="index-Expanding-macros-953"></a><a name="index-Running-macros-954"></a><a name="index-Macro-invocation-955"></a>
+After a macro is defined (see the previous section), you can use
+(<dfn>invoke</dfn>) it in your document like this:
+
+<pre class="example"> @<var>macroname</var> {<var>arg1</var>, <var>arg2</var>, ...}
+</pre>
+ <p class="noindent">and the result will be just as if you typed the body of
+<var>macroname</var> at that spot. For example:
+
+<pre class="example"> @macro foo {p, q}
+ Together: \p\ &amp; \q\.
+ @end macro
+ @foo{a, b}
+</pre>
+ <p class="noindent">produces:
+
+<pre class="display"> Together: a &amp; b.
+</pre>
+ <p><a name="index-Backslash_002c-and-macros-956"></a>Thus, the arguments and parameters are separated by commas and delimited
+by braces; any whitespace after (but not before) a comma is ignored.
+The braces are required in the invocation (but not the definition), even
+when the macro takes no arguments, consistent with all other Texinfo
+commands. For example:
+
+<pre class="example"> @macro argless {}
+ No arguments here.
+ @end macro
+ @argless{}
+</pre>
+ <p class="noindent">produces:
+
+<pre class="display"> No arguments here.
+</pre>
+ <p><a name="index-Comma_002c-in-macro-arguments-957"></a><a name="index-Braces_002c-in-macro-arguments-958"></a>To insert a comma, brace, or backslash in an argument, prepend a
+backslash, as in
+
+<pre class="example"> @<var>macname</var> {\\\{\}\,}
+</pre>
+ <p class="noindent">which will pass the (almost certainly error-producing) argument
+<span class="samp">\{},</span> to <var>macname</var>. However, commas in parameters, even
+if escaped by a backslash, might cause trouble in TeX.
+
+ <p>If the macro is defined to take a single argument, and is invoked
+without any braces, the entire rest of the line after the macro name is
+supplied as the argument. For example:
+
+<pre class="example"> @macro bar {p}
+ Twice: \p\ &amp; \p\.
+ @end macro
+ @bar aah
+</pre>
+ <p class="noindent">produces:
+
+<!-- Sorry for cheating, but let's not require macros to process the manual. -->
+<pre class="display"> Twice: aah &amp; aah.
+</pre>
+ <p>If the macro is defined to take a single argument, and is invoked with
+braces, the braced text is passed as the argument, regardless of
+commas. For example:
+
+<pre class="example"> @macro bar {p}
+ Twice: \p\ &amp; \p\.
+ @end macro
+ @bar{a,b}
+</pre>
+ <p class="noindent">produces:
+
+<pre class="display"> Twice: a,b &amp; a,b.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Macro-Details"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#alias">alias</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Invoking-Macros">Invoking Macros</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a>
+<br>
+</div>
+
+<h3 class="section">19.3 Macro Details</h3>
+
+<p><a name="index-Macro-details-959"></a><a name="index-Details-of-macro-usage-960"></a>
+Due to unavoidable limitations, certain macro-related constructs cause
+problems with TeX. If you get macro-related errors when producing
+the printed version of a manual, try expanding the macros with
+<span class="command">makeinfo</span> by invoking <span class="command">texi2dvi</span> with the <span class="samp">-E</span>
+option (see <a href="#Format-with-texi2dvi">Format with texi2dvi</a>).
+
+ <ul>
+<li>As mentioned earlier, macro names must consist entirely of letters.
+
+ <li>It is not advisable to redefine any TeX primitive, plain, or
+Texinfo command name as a macro. Unfortunately this is a very large
+set of names, and the possible resulting errors are completely random.
+
+ <li>All macros are expanded inside at least one TeX group. This means
+that <code>@set</code> and other such commands have no effect inside a
+macro.
+
+ <li>Macros containing a command which must be on a line by itself, such as a
+conditional, cannot be invoked in the middle of a line.
+
+ <li>Commas in macro arguments, even if escaped by a backslash, don't
+always work.
+
+ <li>It is best to avoid comments inside macro definitions.
+
+ <li>Macro arguments cannot cross lines.
+
+ <li>Macros cannot define macros in the natural way. To do this, you must
+use conditionals and raw TeX. For example:
+
+ <pre class="example"> @ifnottex
+ @macro ctor {name, arg}
+ @macro \name\
+ something involving \arg\ somehow
+ @end macro
+ @end macro
+ @end ifnottex
+ @tex
+ \gdef\ctor#1{\ctorx#1,}
+ \gdef\ctorx#1,#2,{\def#1{something involving #2 somehow}}
+ @end tex
+ </pre>
+ </ul>
+
+ <p>The <span class="command">makeinfo</span> implementation also has limitations:
+
+ <ul>
+<li><code>@verbatim</code> and macros do not mix; for instance, you can't start
+a verbatim block inside a macro and end it outside.
+(See <a href="#verbatim">verbatim</a>.) Starting any environment inside a macro and ending
+it outside may or may not work, for that matter.
+
+ <li>Macros that completely define macros are ok, but it's not possible to
+have incorrectly nested macro definitions. That is, <code>@macro</code>
+and <code>@end macro</code> (likewise for <code>@rmacro</code>) must be
+correctly paired. For example, you cannot start a macro definition
+within a macro, and then end the nested definition outside the macro.
+
+ <li><code>@rmacro</code> is a kludge.
+
+ </ul>
+
+ <p>One more limitation is common to both implementations: white space is
+ignored at the beginnings of lines.
+
+ <p>Future major revisions of Texinfo may ease some of these limitations
+(by introducing a new macro syntax).
+
+<div class="node">
+<p><hr>
+<a name="alias"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#definfoenclose">definfoenclose</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Macro-Details">Macro Details</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a>
+<br>
+</div>
+
+<h3 class="section">19.4 <span class="samp">@alias </span><var>new</var><span class="samp">=</span><var>existing</var></h3>
+
+<p><a name="index-Aliases_002c-command-961"></a><a name="index-Command-aliases-962"></a><a name="index-alias-963"></a>
+The <span class="samp">@alias</span> command defines a new command to be just like an
+existing one. This is useful for defining additional markup names, thus
+preserving semantic information in the input even though the output
+result may be the same.
+
+ <p>Write the <span class="samp">@alias</span> command on a line by itself, followed by the
+new command name, an equals sign, and the existing command name.
+Whitespace around the equals sign is ignored. Thus:
+<pre class="example"> @alias <var>new</var> = <var>existing</var>
+</pre>
+ <p>For example, if your document contains citations for both books and
+some other media (movies, for example), you might like to define a
+macro <code>@moviecite{}</code> that does the same thing as an ordinary
+<code>@cite{}</code> but conveys the extra semantic information as well.
+You'd do this as follows:
+
+<pre class="example"> @alias moviecite = cite
+</pre>
+ <p>Macros do not always have the same effect as aliases, due to vagaries
+of argument parsing. Also, aliases are much simpler to define than
+macros. So the command is not redundant. (It was also heavily used
+in the Jargon File!)
+
+ <p>Aliases must not be recursive, directly or indirectly.
+
+ <p>It is not advisable to redefine any TeX primitive, plain, or
+Texinfo command name as an alias. Unfortunately this is a very large
+set of names, and the possible resulting errors are completely random.
+
+<div class="node">
+<p><hr>
+<a name="definfoenclose"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#alias">alias</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a>
+<br>
+</div>
+
+<h3 class="section">19.5 <span class="samp">definfoenclose</span>: Customized Highlighting</h3>
+
+<p><a name="index-Highlighting_002c-customized-964"></a><a name="index-Customized-highlighting-965"></a><a name="index-definfoenclose-966"></a>
+A <code>@definfoenclose</code> command may be used to define a highlighting
+command for Info, but not for TeX. A command defined using
+<code>@definfoenclose</code> marks text by enclosing it in strings that
+precede and follow the text. You can use this to get closer control of
+your Info output.
+
+ <p>Presumably, if you define a command with <code>@definfoenclose</code> for Info,
+you will create a corresponding command for TeX, either in
+<span class="file">texinfo.tex</span>, <span class="file">texinfo.cnf</span>, or within an <span class="samp">@iftex</span> in
+your document.
+
+ <p>Write a <code>@definfoenclose</code> command on a line and follow it with
+three arguments separated by commas. The first argument to
+<code>@definfoenclose</code> is the @-command name (without the <code>@</code>);
+the second argument is the Info start delimiter string; and the third
+argument is the Info end delimiter string. The latter two arguments
+enclose the highlighted text in the Info file. A delimiter string may
+contain spaces. Neither the start nor end delimiter is required. If
+you do not want a start delimiter but do want an end delimiter, you must
+follow the command name with two commas in a row; otherwise, the Info
+formatting commands will naturally misinterpret the end delimiter string
+you intended as the start delimiter string.
+
+ <p>If you do a <code>@definfoenclose</code> on the name of a pre-defined macro
+(such as <code>@emph</code>, <code>@strong</code>, <code>@t</code>, or <code>@i</code>), the
+enclosure definition will override the built-in definition.
+
+ <p>An enclosure command defined this way takes one argument in braces; this
+is intended for new markup commands (see <a href="#Marking-Text">Marking Text</a>).
+
+ <p><a name="index-phoo-967"></a>For example, you can write:
+
+<pre class="example"> @definfoenclose phoo,//,\\
+</pre>
+ <p class="noindent">near the beginning of a Texinfo file to define <code>@phoo</code> as an Info
+formatting command that inserts `//' before and `\\' after the argument
+to <code>@phoo</code>. You can then write <code>@phoo{bar}</code> wherever you
+want `//bar\\' highlighted in Info.
+
+ <p>Also, for TeX formatting, you could write
+
+<pre class="example"> @iftex
+ @global@let@phoo=@i
+ @end iftex
+</pre>
+ <p class="noindent">to define <code>@phoo</code> as a command that causes TeX to typeset the
+argument to <code>@phoo</code> in italics.
+
+ <p>Each definition applies to its own formatter: one for TeX, the other
+for <code>texinfo-format-buffer</code> or <code>texinfo-format-region</code>. The
+<code>@definfoenclose</code> command need not be within <span class="samp">@ifinfo</span>, but
+the raw TeX commands do need to be in <span class="samp">@iftex</span>.
+
+ <p><a name="index-headword-968"></a>Here is another example: write
+
+<pre class="example"> @definfoenclose headword, , :
+</pre>
+ <p class="noindent">near the beginning of the file, to define <code>@headword</code> as an Info
+formatting command that inserts nothing before and a colon after the
+argument to <code>@headword</code>.
+
+ <p><span class="samp">@definfoenclose</span> definitions must not be recursive, directly or
+indirectly.
+
+<div class="node">
+<p><hr>
+<a name="Hardcopy"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Creating-and-Installing-Info-Files">Creating and Installing Info Files</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">20 Formatting and Printing Hardcopy</h2>
+
+<p><a name="index-Format-and-print-hardcopy-969"></a><a name="index-Printing-hardcopy-970"></a><a name="index-Hardcopy_002c-printing-it-971"></a><a name="index-Making-a-printed-manual-972"></a><a name="index-Sorting-indices-973"></a><a name="index-Indices_002c-sorting-974"></a><a name="index-_0040TeX_007b_007d-index-sorting-975"></a><a name="index-texindex-976"></a>
+There are three major shell commands for making a printed manual from a
+Texinfo file: one for converting the Texinfo file into a file that will be
+printed, a second for sorting indices, and a third for printing the
+formatted document. When you use the shell commands, you can either
+work directly in the operating system shell or work within a shell
+inside GNU Emacs.
+
+ <p>If you are using GNU Emacs, you can use commands provided by Texinfo
+mode instead of shell commands. In addition to the three commands to
+format a file, sort the indices, and print the result, Texinfo mode
+offers key bindings for commands to recenter the output buffer, show the
+print queue, and delete a job from the print queue.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Use-TeX">Use TeX</a>: Use TeX to format for hardcopy.
+<li><a accesskey="2" href="#Format-with-tex_002ftexindex">Format with tex/texindex</a>: How to format with explicit shell commands.
+<li><a accesskey="3" href="#Format-with-texi2dvi">Format with texi2dvi</a>: A simpler way to format.
+<li><a accesskey="4" href="#Print-with-lpr">Print with lpr</a>: How to print.
+<li><a accesskey="5" href="#Within-Emacs">Within Emacs</a>: How to format and print from an Emacs shell.
+<li><a accesskey="6" href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a>: How to format and print in Texinfo mode.
+<li><a accesskey="7" href="#Compile_002dCommand">Compile-Command</a>: How to print using Emacs's compile command.
+<li><a accesskey="8" href="#Requirements-Summary">Requirements Summary</a>: TeX formatting requirements summary.
+<li><a accesskey="9" href="#Preparing-for-TeX">Preparing for TeX</a>: What to do before you use TeX.
+<li><a href="#Overfull-hboxes">Overfull hboxes</a>: What are and what to do with overfull hboxes.
+<li><a href="#smallbook">smallbook</a>: How to print small format books and manuals.
+<li><a href="#A4-Paper">A4 Paper</a>: How to print on A4 or A5 paper.
+<li><a href="#pagesizes">pagesizes</a>: How to print with customized page sizes.
+<li><a href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a>: How to print marks to indicate the size
+ of pages and how to print scaled up output.
+<li><a href="#PDF-Output">PDF Output</a>: Portable Document Format output.
+<li><a href="#Obtaining-TeX">Obtaining TeX</a>: How to Obtain TeX.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Use-TeX"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Format-with-tex_002ftexindex">Format with tex/texindex</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.1 Use TeX</h3>
+
+<p>The typesetting program called TeX is used for formatting a Texinfo
+file. TeX is a very powerful typesetting program and, if used correctly,
+does an exceptionally good job. (See <a href="#Obtaining-TeX">How to Obtain TeX</a>, for information on how to obtain TeX.)
+
+ <p>The standalone <code>makeinfo</code> program and Emacs functions
+<code>texinfo-format-region</code> and <code>texinfo-format-buffer</code> commands
+read the very same @-commands in the Texinfo file as does TeX, but
+process them differently to make an Info file (see <a href="#Creating-an-Info-File">Creating an Info File</a>).
+
+<div class="node">
+<p><hr>
+<a name="Format-with-tex_002ftexindex"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Format-with-texi2dvi">Format with texi2dvi</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Use-TeX">Use TeX</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.2 Format with <code>tex</code> and <code>texindex</code></h3>
+
+<p><a name="index-Shell-formatting-with-_0040code_007btex_007d-and-_0040code_007btexindex_007d-977"></a><a name="index-Formatting-with-_0040code_007btex_007d-and-_0040code_007btexindex_007d-978"></a><a name="index-DVI-file-979"></a>
+You can format the Texinfo file with the shell command <code>tex</code>
+followed by the name of the Texinfo file. For example:
+
+<pre class="example"> tex foo.texi
+</pre>
+ <p class="noindent">TeX will produce a <dfn>DVI file</dfn> as well as several auxiliary
+files containing information for indices, cross references, etc. The
+DVI file (for <dfn>DeVice Independent</dfn> file) can be printed on virtually
+any device (see the following sections).
+
+ <p><a name="index-texindex-980"></a>The <code>tex</code> formatting command itself does not sort the indices; it
+writes an output file of unsorted index data. (The <code>texi2dvi</code>
+command automatically generates indices; see <a href="#Format-with-texi2dvi">Format with <code>texi2dvi</code></a>.) To generate a printed index after
+running the <code>tex</code> command, you first need a sorted index to work
+from. The <code>texindex</code> command sorts indices. (The source file
+<span class="file">texindex.c</span> comes as part of the standard Texinfo distribution,
+among other places.)
+
+ <p><a name="index-Names-of-index-files-981"></a><a name="index-Index-file-names-982"></a>The <code>tex</code> formatting command outputs unsorted index files under
+names that obey a standard convention: the name of your main input file
+with any <span class="samp">.tex</span> (or similar, see <a href="web2c.html#tex-invocation">tex invocation (Web2c)</a>) extension removed, followed by the two letter names of indices.
+For example, the raw index output files for the input file
+<span class="file">foo.texinfo</span> would be <span class="file">foo.cp</span>, <span class="file">foo.vr</span>, <span class="file">foo.fn</span>,
+<span class="file">foo.tp</span>, <span class="file">foo.pg</span> and <span class="file">foo.ky</span>. Those are exactly the
+arguments to give to <code>texindex</code>.
+
+ <p><a name="index-Wildcards-983"></a><a name="index-Globbing-984"></a>Instead of specifying all the unsorted index file names explicitly, you
+can use <span class="samp">??</span> as shell wildcards and give the command in this
+form:
+
+<pre class="example"> texindex foo.??
+</pre>
+ <p class="noindent">This command will run <code>texindex</code> on all the unsorted index files,
+including any that you have defined yourself using <code>@defindex</code>
+or <code>@defcodeindex</code>. (You may execute <span class="samp">texindex foo.??</span>
+even if there are similarly named files with two letter extensions
+that are not index files, such as <span class="samp">foo.el</span>. The <code>texindex</code>
+command reports but otherwise ignores such files.)
+
+ <p>For each file specified, <code>texindex</code> generates a sorted index file
+whose name is made by appending <span class="samp">s</span> to the input file name. The
+<code>@printindex</code> command looks for a file with that name
+(see <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>). <code>texindex</code> does not alter the
+raw index output file.
+
+ <p>After you have sorted the indices, you need to rerun <code>tex</code> on the
+Texinfo file. This regenerates the DVI file, this time with
+up-to-date index entries.
+
+ <p>Finally, you may need to run <code>tex</code> one more time, to get the page
+numbers in the cross-references correct.
+
+ <p>To summarize, this is a five step process:
+
+ <ol type=1 start=1>
+<li>Run <code>tex</code> on your Texinfo file. This generates a DVI file (with
+undefined cross-references and no indices), and the raw index files
+(with two letter extensions).
+
+ <li>Run <code>texindex</code> on the raw index files. This creates the
+corresponding sorted index files (with three letter extensions).
+
+ <li>Run <code>tex</code> again on your Texinfo file. This regenerates the DVI
+file, this time with indices and defined cross-references, but with page
+numbers for the cross-references from last time, generally incorrect.
+
+ <li>Sort the indices again, with <code>texindex</code>.
+
+ <li>Run <code>tex</code> one last time. This time the correct page numbers are
+written for the cross-references.
+ </ol>
+
+ <p><a name="index-texi2dvi-985"></a>Alternatively, it's a one-step process: run <code>texi2dvi</code>
+(see <a href="#Format-with-texi2dvi">Format with texi2dvi</a>).
+
+ <p>You need not run <code>texindex</code> each time after you run <code>tex</code>. If
+you do not, on the next run, the <code>tex</code> formatting command will use
+whatever sorted index files happen to exist from the previous use of
+<code>texindex</code>. This is usually ok while you are debugging.
+
+ <p><a name="index-Auxiliary-files_002c-avoiding-986"></a><a name="index-novalidate-987"></a><a name="index-Pointer-validation_002c-suppressing-988"></a><a name="index-Chapters_002c-formatting-one-at-a-time-989"></a>Sometimes you may wish to print a document while you know it is
+incomplete, or to print just one chapter of a document. In that case,
+the usual auxiliary files that TeX creates and warnings TeX gives
+when cross-references are not satisfied are just nuisances. You can
+avoid them with the <code>@novalidate</code> command, which you must give
+<em>before</em> the <code>@setfilename</code> command
+(see <a href="#setfilename"><code>@setfilename</code></a>). Thus, the beginning of
+your file would look approximately like this:
+
+<pre class="example"> \input texinfo
+ @novalidate
+ @setfilename myfile.info
+ ...
+</pre>
+ <p class="noindent"><code>@novalidate</code> also turns off validation in
+<code>makeinfo</code>, just like its <code>--no-validate</code> option
+(see <a href="#Pointer-Validation">Pointer Validation</a>).
+
+<div class="node">
+<p><hr>
+<a name="Format-with-texi2dvi"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Print-with-lpr">Print with lpr</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Format-with-tex_002ftexindex">Format with tex/texindex</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.3 Format with <code>texi2dvi</code></h3>
+
+<p><a name="index-texi2dvi-_0040r_007b_0028shell-script_0029_007d-990"></a>
+The <code>texi2dvi</code> command automatically runs both TeX and
+<span class="command">texindex</span> as many times as necessary to produce a DVI file
+with sorted indices and all cross-references resolved. It is
+therefore simpler than manually executing the
+<code>tex</code>&mdash;<code>texindex</code>&mdash;<code>tex</code>&mdash;<code>tex</code> sequence
+described in the previous section.
+
+ <p>To run <code>texi2dvi</code> on an input file <span class="file">foo.texi</span>, do this (where
+<span class="samp">prompt$ </span> is your shell prompt):
+
+<pre class="example"> prompt$ <kbd>texi2dvi foo.texi</kbd>
+</pre>
+ <p>As shown in this example, the input filenames to <code>texi2dvi</code> must
+include any extension (<span class="samp">.texi</span>, <span class="samp">.texinfo</span>, etc.). Under
+MS-DOS and perhaps in other circumstances, you may need to run <span class="samp">sh
+texi2dvi foo.texi</span> instead of relying on the operating system to invoke
+the shell on the <span class="samp">texi2dvi</span> script.
+
+ <p>Perhaps the most useful option to <code>texi2dvi</code> is
+<span class="samp">--command=</span><var>cmd</var>. This inserts <var>cmd</var> on a line by itself
+after the <code>@setfilename</code> in a temporary copy of the input file
+before running TeX. With this, you can specify different printing
+formats, such as <code>@smallbook</code> (see <a href="#smallbook">smallbook</a>),
+<code>@afourpaper</code> (see <a href="#A4-Paper">A4 Paper</a>), or <code>@pagesizes</code>
+(see <a href="#pagesizes">pagesizes</a>), without actually changing the document source.
+(You can also do this on a site-wide basis with <span class="file">texinfo.cnf</span>;
+see <a href="#Preparing-for-TeX">Preparing for TeX</a>).
+
+ <p><a name="index-_0040LaTeX_007b_007d_002c-processing-with-_0040command_007btexi2dvi_007d-991"></a><span class="command">texi2dvi</span> can also be used to process LaTeX files; simply
+run <span class="samp">texi2dvi filename.ext</span>.
+
+ <p>For a list of other options, run <span class="samp">texi2dvi --help</span>.
+
+<div class="node">
+<p><hr>
+<a name="Print-with-lpr"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Within-Emacs">Within Emacs</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Format-with-texi2dvi">Format with texi2dvi</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.4 Shell Print Using <code>lpr -d</code></h3>
+
+<p><a name="index-lpr-_0040r_007b_0028DVI-print-command_0029_007d-992"></a>
+The precise command to print a DVI file depends on your system
+installation. Two common ones are <span class="samp">dvips foo.dvi -o</span> and <span class="samp">lpr
+-d foo.dvi</span>.
+
+ <p>For example, the following commands will (perhaps) suffice to sort the
+indices, format, and print the <cite>Bison Manual</cite>:
+
+<pre class="example"> tex bison.texinfo
+ texindex bison.??
+ tex bison.texinfo
+ lpr -d bison.dvi
+</pre>
+ <p class="noindent">(Remember that the shell commands may be different at your site; but
+these are commonly used versions.)
+
+ <p>Using the <code>texi2dvi</code> shell script (see the previous section):
+
+<pre class="example"> texi2dvi bison.texinfo
+ lpr -d bison.dvi
+ # or perhaps dvips bison.dvi -o
+</pre>
+ <p><a name="index-Shell-printing_002c-on-MS_002dDOS_002fMS_002dWindows-993"></a><a name="index-Printing-DVI-files_002c-on-MS_002dDOS_002fMS_002dWindows-994"></a><a name="index-lpr_0040r_007b_002dd_002c-replacements-on-MS_002dDOS_002fMS_002dWindows_007d-995"></a><code>lpr</code> is a standard program on Unix systems, but it is usually
+absent on MS-DOS/MS-Windows. Some network packages come with a
+program named <code>lpr</code>, but these are usually limited to sending files
+to a print server over the network, and generally don't support the
+<span class="samp">-d</span> option. If you are unfortunate enough to work on one of these
+systems, you have several alternative ways of printing DVI files:
+
+ <ul>
+<li>Find and install a Unix-like <code>lpr</code> program, or its clone.
+If you can do that, you will be able to print DVI files just like
+described above.
+
+ <li>Send the DVI files to a network printer queue for DVI files.
+Some network printers have special queues for printing DVI files. You
+should be able to set up your network software to send files to that
+queue. In some cases, the version of <code>lpr</code> which comes with your
+network software will have a special option to send a file to specific
+queues, like this:
+
+ <pre class="example"> lpr -Qdvi -hprint.server.domain bison.dvi
+ </pre>
+ <li>Convert the DVI file to a Postscript or PCL file and send it to your
+local printer. See <a href="dvips.html#Invoking-Dvips">Invoking Dvips (Dvips)</a>, and the man
+pages for <code>dvilj</code>, for detailed description of these tools. Once
+the DVI file is converted to the format your local printer understands
+directly, just send it to the appropriate port, usually <span class="samp">PRN</span>.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Within-Emacs"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Print-with-lpr">Print with lpr</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.5 From an Emacs Shell</h3>
+
+<p><a name="index-Print_002c-format-from-Emacs-shell-996"></a><a name="index-Format_002c-print-from-Emacs-shell-997"></a><a name="index-Shell_002c-format_002c-print-from-998"></a><a name="index-Emacs-shell_002c-format_002c-print-from-999"></a><a name="index-GNU-Emacs-shell_002c-format_002c-print-from-1000"></a>
+You can give formatting and printing commands from a shell within GNU
+Emacs. To create a shell within Emacs, type <kbd>M-x shell</kbd>. In this
+shell, you can format and print the document. See <a href="#Hardcopy">Format and Print Hardcopy</a>, for details.
+
+ <p>You can switch to and from the shell buffer while <code>tex</code> is
+running and do other editing. If you are formatting a long document
+on a slow machine, this can be very convenient.
+
+ <p>You can also use <code>texi2dvi</code> from an Emacs shell. For example,
+here is how to use <code>texi2dvi</code> to format and print <cite>Using and
+Porting GNU CC</cite> from a shell within Emacs:
+
+<pre class="example"> texi2dvi gcc.texinfo
+ lpr -d gcc.dvi
+</pre>
+ <p>See the next section for more information about formatting
+and printing in Texinfo mode.
+
+<div class="node">
+<p><hr>
+<a name="Texinfo-Mode-Printing"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Compile_002dCommand">Compile-Command</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Within-Emacs">Within Emacs</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.6 Formatting and Printing in Texinfo Mode</h3>
+
+<p><a name="index-Region-printing-in-Texinfo-mode-1001"></a><a name="index-Format-and-print-in-Texinfo-mode-1002"></a><a name="index-Print-and-format-in-Texinfo-mode-1003"></a>
+Texinfo mode provides several predefined key commands for TeX
+formatting and printing. These include commands for sorting indices,
+looking at the printer queue, killing the formatting job, and
+recentering the display of the buffer in which the operations
+occur.
+
+ <dl>
+<dt><kbd>C-c C-t C-b</kbd><dt><kbd>M-x texinfo-tex-buffer</kbd><dd>Run <code>texi2dvi</code> on the current buffer.
+
+ <br><dt><kbd>C-c C-t C-r</kbd><dt><kbd>M-x texinfo-tex-region</kbd><dd>Run TeX on the current region.
+
+ <br><dt><kbd>C-c C-t C-i</kbd><dt><kbd>M-x texinfo-texindex</kbd><dd>Sort the indices of a Texinfo file formatted with
+<code>texinfo-tex-region</code>.
+
+ <br><dt><kbd>C-c C-t C-p</kbd><dt><kbd>M-x texinfo-tex-print</kbd><dd>Print a DVI file that was made with <code>texinfo-tex-region</code> or
+<code>texinfo-tex-buffer</code>.
+
+ <br><dt><kbd>C-c C-t C-q</kbd><dt><kbd>M-x tex-show-print-queue</kbd><dd>Show the print queue.
+
+ <br><dt><kbd>C-c C-t C-d</kbd><dt><kbd>M-x texinfo-delete-from-print-queue</kbd><dd>Delete a job from the print queue; you will be prompted for the job
+number shown by a preceding <kbd>C-c C-t C-q</kbd> command
+(<code>texinfo-show-tex-print-queue</code>).
+
+ <br><dt><kbd>C-c C-t C-k</kbd><dt><kbd>M-x tex-kill-job</kbd><dd>Kill the currently running TeX job started by either
+<code>texinfo-tex-region</code> or <code>texinfo-tex-buffer</code>, or any other
+process running in the Texinfo shell buffer.
+
+ <br><dt><kbd>C-c C-t C-x</kbd><dt><kbd>M-x texinfo-quit-job</kbd><dd>Quit a TeX formatting job that has stopped because of an error by
+sending an &lt;x&gt; to it. When you do this, TeX preserves a record
+of what it did in a <span class="file">.log</span> file.
+
+ <br><dt><kbd>C-c C-t C-l</kbd><dt><kbd>M-x tex-recenter-output-buffer</kbd><dd>Redisplay the shell buffer in which the TeX printing and formatting
+commands are run to show its most recent output.
+</dl>
+
+ <p>Thus, the usual sequence of commands for formatting a buffer is as
+follows (with comments to the right):
+
+<pre class="example"> C-c C-t C-b <span class="roman">Run </span><code>texi2dvi</code><span class="roman"> on the buffer.</span>
+ C-c C-t C-p <span class="roman">Print the DVI file.</span>
+ C-c C-t C-q <span class="roman">Display the printer queue.</span>
+</pre>
+ <p>The Texinfo mode TeX formatting commands start a subshell in Emacs
+called the <span class="file">*tex-shell*</span>. The <code>texinfo-tex-command</code>,
+<code>texinfo-texindex-command</code>, and <code>tex-dvi-print-command</code>
+commands are all run in this shell.
+
+ <p>You can watch the commands operate in the <span class="samp">*tex-shell*</span> buffer,
+and you can switch to and from and use the <span class="samp">*tex-shell*</span> buffer
+as you would any other shell buffer.
+
+ <p>The formatting and print commands depend on the values of several variables.
+The default values are:
+
+<pre class="example"> <span class="roman">Variable</span> <span class="roman">Default value</span>
+
+ texinfo-texi2dvi-command "texi2dvi"
+ texinfo-tex-command "tex"
+ texinfo-texindex-command "texindex"
+ texinfo-delete-from-print-queue-command "lprm"
+ texinfo-tex-trailer "@bye"
+ tex-start-of-header "%**start"
+ tex-end-of-header "%**end"
+ tex-dvi-print-command "lpr -d"
+ tex-show-queue-command "lpq"
+</pre>
+ <p>You can change the values of these variables with the <kbd>M-x
+set-variable</kbd> command (see <a href="emacs.html#Examining">Examining and Setting Variables (The GNU Emacs Manual)</a>), or with your <span class="file">.emacs</span>
+initialization file (see <a href="emacs.html#Init-File">Init File (The GNU Emacs Manual)</a>).
+
+ <p><a name="index-Customize-Emacs-package-_0028_0040t_007bDevelopment_002fDocs_002fTexinfo_007d_0029-1004"></a>Beginning with version 20, GNU Emacs offers a user-friendly interface,
+called <dfn>Customize</dfn>, for changing values of user-definable variables.
+See <a href="emacs.html#Easy-Customization">Easy Customization Interface (The GNU Emacs Manual)</a>, for more details about this. The Texinfo variables can
+be found in the <span class="samp">Development/Docs/Texinfo</span> group, once you invoke
+the <kbd>M-x customize</kbd> command.
+
+<div class="node">
+<p><hr>
+<a name="Compile_002dCommand"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Requirements-Summary">Requirements Summary</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.7 Using the Local Variables List</h3>
+
+<p><a name="index-Local-variables-1005"></a><a name="index-Compile-command-for-formatting-1006"></a><a name="index-Format-with-the-compile-command-1007"></a>
+Yet another way to apply the TeX formatting command to a Texinfo file
+is to put that command in a <dfn>local variables list</dfn> at the end of the
+Texinfo file. You can then specify the <code>tex</code> or <code>texi2dvi</code>
+commands as a <code>compile-command</code> and have Emacs run it by typing
+<kbd>M-x compile</kbd>. This creates a special shell called the
+<span class="file">*compilation*</span> buffer in which Emacs runs the compile command.
+For example, at the end of the <span class="file">gdb.texinfo</span> file, after the
+<code>@bye</code>, you could put the following:
+
+<pre class="example"> Local Variables:
+ compile-command: "texi2dvi gdb.texinfo"
+ End:
+</pre>
+ <p class="noindent">This technique is most often used by programmers who also compile programs
+this way; see <a href="emacs.html#Compilation">Compilation (The GNU Emacs Manual)</a>.
+
+<div class="node">
+<p><hr>
+<a name="Requirements-Summary"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Preparing-for-TeX">Preparing for TeX</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Compile_002dCommand">Compile-Command</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.8 TeX Formatting Requirements Summary</h3>
+
+<p><a name="index-Requirements-for-formatting-1008"></a><a name="index-Minimal-requirements-for-formatting-1009"></a><a name="index-Formatting-requirements-1010"></a>
+Every Texinfo file that is to be input to TeX must begin with a
+<code>\input</code> command and must contain an <code>@setfilename</code> command:
+
+<pre class="example"> \input texinfo
+ @setfilename <var>arg-not-used-by-TeX</var>
+</pre>
+ <p class="noindent">The first command instructs TeX to load the macros it needs to
+process a Texinfo file and the second command opens auxiliary files.
+
+ <p>Every Texinfo file must end with a line that terminates TeX's
+processing and forces out unfinished pages:
+
+<pre class="example"> @bye
+</pre>
+ <p>Strictly speaking, these lines are all a Texinfo file needs to be
+processed successfully by TeX.
+
+ <p>Usually, however, the beginning includes an <code>@settitle</code> command to
+define the title of the printed manual, an <code>@setchapternewpage</code>
+command, a title page, a copyright page, and permissions. Besides an
+<code>@bye</code>, the end of a file usually includes indices and a table of
+contents. (And of course most manuals contain a body of text as well.)
+
+ <p>For more information, see:
+
+ <ul>
+<li><a href="#settitle"><code>@settitle</code></a>.
+<li><a href="#setchapternewpage"><code>@setchapternewpage</code></a>.
+<li><a href="#Headings">Page Headings</a>.
+<li><a href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a>.
+<li><a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>.
+<li><a href="#Contents">Contents</a>.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Preparing-for-TeX"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Overfull-hboxes">Overfull hboxes</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Requirements-Summary">Requirements Summary</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.9 Preparing for TeX</h3>
+
+<p><a name="index-Preparing-for-_0040TeX_007b_007d-1011"></a><a name="index-_0040TeX_007b_007d-input-initialization-1012"></a><a name="index-_0040b_007b_002eprofile_007d-initialization-file-1013"></a><a name="index-_0040b_007b_002ecshrc_007d-initialization-file-1014"></a><a name="index-Initialization-file-for-_0040TeX_007b_007d-input-1015"></a>
+TeX needs to know where to find the <span class="file">texinfo.tex</span> file that the
+<span class="samp">\input texinfo</span> command on the first line reads. The
+<span class="file">texinfo.tex</span> file tells TeX how to handle @-commands; it is
+included in all standard GNU distributions. The latest version is
+always available from the Texinfo source repository:
+<pre class="smalldisplay"> <a href="http://savannah.gnu.org/cgi-bin/viewcvs/texinfo/texinfo/doc/texinfo.tex?rev=HEAD">http://savannah.gnu.org/cgi-bin/viewcvs/texinfo/texinfo/doc/texinfo.tex?rev=HEAD</a>
+</pre>
+ <p><a name="index-texinfo_002etex_0040r_007b_002c-installing_007d-1016"></a>
+Usually, the installer has put the <span class="file">texinfo.tex</span> file in the
+default directory that contains TeX macros when GNU Texinfo, Emacs or
+other GNU software is installed. In this case, TeX will find the
+file and you do not need to do anything special. If this has not been
+done, you can put <span class="file">texinfo.tex</span> in the current directory when you
+run TeX, and TeX will find it there.
+
+ <p><a name="index-epsf_002etex_0040r_007b_002c-installing_007d-1017"></a>Also, you should install <span class="file">epsf.tex</span>, if it is not already installed
+from another distribution. More details are at the end of the description
+of the <code>@image</code> command (see <a href="#Images">Images</a>).
+
+ <p><a name="index-pdfcolor_002etex_0040r_007b_002c-installing_007d-1018"></a>Likewise for <span class="file">pdfcolor.tex</span>, if it is not already installed and you
+use pdftex.
+
+ <p><a name="index-texinfo_002ecnf-_0040r_007binstallation_007d-1019"></a><a name="index-Customizing-of-_0040TeX_007b_007d-for-Texinfo-1020"></a><a name="index-Site_002dwide-Texinfo-configuration-file-1021"></a>Optionally, you may create an additional <span class="file">texinfo.cnf</span>, and install
+it as well. This file is read by TeX when the <code>@setfilename</code>
+command is executed (see <a href="#setfilename"><code>@setfilename</code></a>). You can put any
+commands you like there, according to local site-wide conventions. They
+will be read by TeX when processing any Texinfo document. For
+example, if <span class="file">texinfo.cnf</span> contains the line <span class="samp">@afourpaper</span>
+(see <a href="#A4-Paper">A4 Paper</a>), then all Texinfo documents will be processed with
+that page size in effect. If you have nothing to put in
+<span class="file">texinfo.cnf</span>, you do not need to create it.
+
+ <p><a name="index-Environment-variable-_0040code_007bTEXINPUTS_007d-1022"></a><a name="index-TEXINPUTS-1023"></a>If neither of the above locations for these system files suffice for
+you, you can specify the directories explicitly. For
+<span class="file">texinfo.tex</span>, you can do this by writing the complete path for the
+file after the <code>\input</code> command. Another way, that works for both
+<span class="file">texinfo.tex</span> and <span class="file">texinfo.cnf</span> (and any other file TeX
+might read), is to set the <code>TEXINPUTS</code> environment variable in your
+<span class="file">.cshrc</span> or <span class="file">.profile</span> file.
+
+ <p>Which you use of <span class="file">.cshrc</span> or <span class="file">.profile</span> depends on
+whether you use a Bourne shell-compatible (<code>sh</code>, <code>bash</code>,
+<code>ksh</code>, <small class="dots">...</small>) or C shell-compatible (<code>csh</code>, <code>tcsh</code>)
+command interpreter. The latter read the <span class="file">.cshrc</span> file for
+initialization information, and the former read <span class="file">.profile</span>.
+
+ <p>In a <span class="file">.cshrc</span> file, you could use the following <code>csh</code> command
+sequence:
+
+<pre class="example"> setenv TEXINPUTS .:/home/me/mylib:
+</pre>
+ <p>In a <span class="file">.profile</span> file, you could use the following <code>sh</code> command
+sequence:
+
+<pre class="example"> TEXINPUTS=.:/home/me/mylib:
+ export TEXINPUTS
+</pre>
+ <p>On MS-DOS/MS-Windows, you would say it like this<a rel="footnote" href="#fn-9" name="fnd-9"><sup>9</sup></a>:
+
+<pre class="example"> set TEXINPUTS=.;d:/home/me/mylib;c:
+</pre>
+ <p class="noindent">It is customary for DOS/Windows users to put such commands in the
+<span class="file">autoexec.bat</span> file, or in the Windows Registry.
+
+<p class="noindent">These settings would cause TeX to look for <span class="file">\input</span> file first
+in the current directory, indicated by the <span class="samp">.</span>, then in a
+hypothetical user <span class="samp">me</span>'s <span class="file">mylib</span> directory, and finally in
+the system directories. (A leading, trailing, or doubled <span class="samp">:</span>
+indicates searching the system directories at that point.)
+
+ <p><a name="index-Dumping-a-_002efmt-file-1024"></a><a name="index-Format-file_002c-dumping-1025"></a>Finally, you may wish to dump a <span class="file">.fmt</span> file (see <a href="web2c.html#Memory-dumps">Memory dumps (Web2c)</a>) so that TeX can load Texinfo faster. (The
+disadvantage is that then updating <span class="file">texinfo.tex</span> requires
+redumping.) You can do this by running this command, assuming
+<span class="file">epsf.tex</span> is findable by TeX:
+
+<pre class="example"> initex texinfo @dump
+</pre>
+ <p>(<code>dump</code> is a TeX primitive.) Then, move <span class="file">texinfo.fmt</span> to
+wherever your <code>.fmt</code> files are found; typically, this will be in the
+subdirectory <span class="file">web2c</span> of your TeX installation.
+
+<div class="node">
+<p><hr>
+<a name="Overfull-hboxes"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#smallbook">smallbook</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Preparing-for-TeX">Preparing for TeX</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.10 Overfull &ldquo;hboxes&rdquo;</h3>
+
+<p><a name="index-Overfull-_0040samp_007bhboxes_007d-1026"></a><a name="index-_0040samp_007bhboxes_007d_002c-overfull-1027"></a><a name="index-Final-output-1028"></a>
+TeX is sometimes unable to typeset a line without extending it into
+the right margin. This can occur when TeX comes upon what it
+interprets as a long word that it cannot hyphenate, such as an
+electronic mail network address or a very long title. When this
+happens, TeX prints an error message like this:
+
+<pre class="example"> Overfull @hbox (20.76302pt too wide)
+</pre>
+ <p><a name="index-hbox-1029"></a>(In TeX, lines are in &ldquo;horizontal boxes&rdquo;, hence the term, &ldquo;hbox&rdquo;.
+<span class="samp">@hbox</span> is a TeX primitive not needed in the Texinfo language.)
+
+ <p>TeX also provides the line number in the Texinfo source file and
+the text of the offending line, which is marked at all the places that
+TeX considered hyphenation.
+See <a href="#Debugging-with-TeX">Catching Errors with TeX Formatting</a>,
+for more information about typesetting errors.
+
+ <p>If the Texinfo file has an overfull hbox, you can rewrite the sentence
+so the overfull hbox does not occur, or you can decide to leave it. A
+small excursion into the right margin often does not matter and may not
+even be noticeable.
+
+ <p>If you have many overfull boxes and/or an antipathy to rewriting, you
+can coerce TeX into greatly increasing the allowable interword
+spacing, thus (if you're lucky) avoiding many of the bad line breaks,
+like this:
+
+ <p><a name="index-_005cemergencystretch-1030"></a>
+<pre class="example"> @tex
+ \global\emergencystretch = .9\hsize
+ @end tex
+</pre>
+ <p class="noindent">(You should adjust the fraction as needed.) This huge value for
+<code>\emergencystretch</code> cannot be the default, since then the typeset
+output would generally be of noticeably lower quality; the default
+is <span class="samp">.15\hsize</span>. <code>\hsize</code> is the TeX dimension
+containing the current line width.
+
+ <p><a name="index-Black-rectangle-in-hardcopy-1031"></a><a name="index-Rectangle_002c-black-in-hardcopy-1032"></a><a name="index-Box_002c-ugly-black-in-hardcopy-1033"></a><a name="index-Ugly-black-rectangles-in-hardcopy-1034"></a>For what overfull boxes you have, however, TeX will print a large,
+ugly, black rectangle beside the line that contains the overfull hbox
+unless told otherwise. This is so you will notice the location of the
+problem if you are correcting a draft.
+
+ <p><a name="index-finalout-1035"></a>To prevent such a monstrosity from marring your final printout, write
+the following in the beginning of the Texinfo file on a line of its own,
+before the <code>@titlepage</code> command:
+
+<pre class="example"> @finalout
+</pre>
+ <div class="node">
+<p><hr>
+<a name="smallbook"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#A4-Paper">A4 Paper</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Overfull-hboxes">Overfull hboxes</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.11 Printing &ldquo;Small&rdquo; Books</h3>
+
+<p><a name="index-smallbook-1036"></a><a name="index-Small-book-size-1037"></a><a name="index-Book_002c-printing-small-1038"></a><a name="index-Page-sizes-for-books-1039"></a><a name="index-Size-of-printed-book-1040"></a>
+By default, TeX typesets pages for printing in an 8.5 by 11 inch
+format. However, you can direct TeX to typeset a document in a 7 by
+9.25 inch format that is suitable for bound books by inserting the
+following command on a line by itself at the beginning of the Texinfo
+file, before the title page:
+
+<pre class="example"> @smallbook
+</pre>
+ <p class="noindent">(Since many books are about 7 by 9.25 inches, this command might better
+have been called the <code>@regularbooksize</code> command, but it came to be
+called the <code>@smallbook</code> command by comparison to the 8.5 by 11
+inch format.)
+
+ <p>If you write the <code>@smallbook</code> command between the
+start-of-header and end-of-header lines, the Texinfo mode TeX
+region formatting command, <code>texinfo-tex-region</code>, will format the
+region in &ldquo;small&rdquo; book size (see <a href="#Start-of-Header">Start of Header</a>).
+
+ <p>See <a href="#small">small</a>, for information about
+commands that make it easier to produce examples for a smaller manual.
+
+ <p>See <a href="#Format-with-texi2dvi">Format with texi2dvi</a>, and <a href="#Preparing-for-TeX">Preparing for TeX</a>, for other ways to format with <code>@smallbook</code> that do not
+require changing the source file.
+
+<div class="node">
+<p><hr>
+<a name="A4-Paper"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#pagesizes">pagesizes</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#smallbook">smallbook</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.12 Printing on A4 Paper</h3>
+
+<p><a name="index-A4-paper_002c-printing-on-1041"></a><a name="index-A5-paper_002c-printing-on-1042"></a><a name="index-Paper-size_002c-A4-1043"></a><a name="index-European-A4-paper-1044"></a><a name="index-afourpaper-1045"></a>
+You can tell TeX to format a document for printing on European size
+A4 paper (or A5) with the <code>@afourpaper</code> (or <code>@afivepaper</code>)
+command. Write the command on a line by itself near the beginning of
+the Texinfo file, before the title page. For example, this is how you
+would write the header for this manual:
+
+<pre class="example"> \input texinfo @c -*-texinfo-*-
+ @c %**start of header
+ @setfilename texinfo
+ @settitle Texinfo
+ @afourpaper
+ @c %**end of header
+</pre>
+ <p>See <a href="#Format-with-texi2dvi">Format with texi2dvi</a>, and <a href="#Preparing-for-TeX">Preparing for TeX</a>, for other ways to format for different paper sizes that do not
+require changing the source file.
+
+ <p><a name="index-afourlatex-1046"></a><a name="index-afourwide-1047"></a>You may or may not prefer the formatting that results from the command
+<code>@afourlatex</code>. There's also <code>@afourwide</code> for A4 paper in
+wide format.
+
+<div class="node">
+<p><hr>
+<a name="pagesizes"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#A4-Paper">A4 Paper</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.13 <code>@pagesizes</code> [<var>width</var>][, <var>height</var>]: Custom Page Sizes</h3>
+
+<p><a name="index-pagesizes-1048"></a><a name="index-Custom-page-sizes-1049"></a><a name="index-Page-sizes_002c-customized-1050"></a><a name="index-Text-width-and-height-1051"></a><a name="index-Width-of-text-area-1052"></a><a name="index-Height-of-text-area-1053"></a><a name="index-Depth-of-text-area-1054"></a>
+You can explicitly specify the height and (optionally) width of the main
+text area on the page with the <code>@pagesizes</code> command. Write this
+on a line by itself near the beginning of the Texinfo file, before the
+title page. The height comes first, then the width if desired,
+separated by a comma. Examples:
+
+<pre class="example"> @pagesizes 200mm,150mm <!-- for b5 paper -->
+</pre>
+ <p class="noindent">and
+<pre class="example"> @pagesizes 11.5in <!-- for legal paper -->
+</pre>
+ <p><a name="index-B5-paper_002c-printing-on-1055"></a><a name="index-Legal-paper_002c-printing-on-1056"></a>This would be reasonable for printing on B5-size paper. To emphasize,
+this command specifies the size of the <em>text area</em>, not the size of
+the paper (which is 250<span class="dmn">mm</span> by 177<span class="dmn">mm</span> for B5, 14<span class="dmn">in</span> by
+8.5<span class="dmn">in</span> for legal).
+
+ <p><a name="index-Margins-on-page_002c-not-controllable-1057"></a>To make more elaborate changes, such as changing any of the page
+margins, you must define a new command in <span class="file">texinfo.tex</span> (or
+<span class="file">texinfo.cnf</span>, see <a href="#Preparing-for-TeX">Preparing for TeX</a>).
+
+ <p>See <a href="#Format-with-texi2dvi">Format with texi2dvi</a>, and <a href="#Preparing-for-TeX">Preparing for TeX</a>, for other ways to specify <code>@pagesizes</code> that do not
+require changing the source file.
+
+ <p><code>@pagesizes</code> is ignored by <code>makeinfo</code>.
+
+<div class="node">
+<p><hr>
+<a name="Cropmarks-and-Magnification"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#PDF-Output">PDF Output</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#pagesizes">pagesizes</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.14 Cropmarks and Magnification</h3>
+
+<p><a name="index-cropmarks-1058"></a><a name="index-Cropmarks-for-printing-1059"></a><a name="index-Printing-cropmarks-1060"></a>You can (attempt to) direct TeX to print cropmarks at the corners of
+pages with the <code>@cropmarks</code> command. Write the <code>@cropmarks</code>
+command on a line by itself between <code>@iftex</code> and <code>@end
+iftex</code> lines near the beginning of the Texinfo file, before the title
+page, like this:
+
+<pre class="example"> @iftex
+ @cropmarks
+ @end iftex
+</pre>
+ <p>This command is mainly for printers that typeset several pages on one
+sheet of film; but you can attempt to use it to mark the corners of a
+book set to 7 by 9.25 inches with the <code>@smallbook</code> command.
+(Printers will not produce cropmarks for regular sized output that is
+printed on regular sized paper.) Since different printing machines work
+in different ways, you should explore the use of this command with a
+spirit of adventure. You may have to redefine the command in
+<span class="file">texinfo.tex</span>.
+
+ <p><a name="index-_005cmag-_0040r_007b_0028raw-_0040TeX_007b_007d-magnification_0029_007d-1061"></a><a name="index-Magnified-printing-1062"></a><a name="index-Larger-or-smaller-pages-1063"></a>You can attempt to direct TeX to typeset pages larger or smaller than
+usual with the <code>\mag</code> TeX command. Everything that is typeset
+is scaled proportionally larger or smaller. (<code>\mag</code> stands for
+&ldquo;magnification&rdquo;.) This is <em>not</em> a Texinfo @-command, but is a
+plain TeX command that is prefixed with a backslash. You have to
+write this command between <code>@tex</code> and <code>@end tex</code>
+(see <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a>).
+
+ <p>Follow the <code>\mag</code> command with an <span class="samp">=</span> and then a number that
+is 1000 times the magnification you desire. For example, to print pages
+at 1.2 normal size, write the following near the beginning of the
+Texinfo file, before the title page:
+
+<pre class="example"> @tex
+ \mag=1200
+ @end tex
+</pre>
+ <p>With some printing technologies, you can print normal-sized copies that
+look better than usual by giving a larger-than-normal master to your
+print shop. They do the reduction, thus effectively increasing the
+resolution.
+
+ <p>Depending on your system, DVI files prepared with a
+nonstandard-<code>\mag</code> may not print or may print only with certain
+magnifications. Be prepared to experiment.
+
+<div class="node">
+<p><hr>
+<a name="PDF-Output"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Obtaining-TeX">Obtaining TeX</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.15 PDF Output</h3>
+
+<p><a name="index-PDF-output-1064"></a>
+<a name="index-pdftex-1065"></a>You can generate a PDF output file from Texinfo source by using the
+<span class="command">pdftex</span> program to process your file instead of plain
+<span class="command">tex</span>. That is, run <span class="samp">pdftex foo.texi</span> instead of <span class="samp">tex
+foo.texi</span>, or give the <span class="samp">--pdf</span> option to <span class="command">texi2dvi</span>.
+
+ <p><dfn>PDF</dfn> stands for `Portable Document Format'. It was invented by
+Adobe Systems some years ago for document interchange, based on their
+PostScript language. A <a href="http://www.foolabs.com/xpdf/">PDF reader</a> for the X window system is freely available, as is the
+<a href="http://partners.adobe.com/asn/developer/technotes/">definition of the file format</a>. At present, there are no <span class="samp">@ifpdf</span> or
+<span class="samp">@pdf</span> commands as with the other output formats.
+
+ <p>Despite the `portable' in the name, PDF files are nowhere near as
+portable in practice as the plain ASCII formats (Info, HTML) that
+Texinfo supports (DVI portability is arguable). They also tend to be
+much larger. Nevertheless, a PDF file does preserve an actual printed
+document on a screen as faithfully as possible, so it has its place.
+
+<div class="node">
+<p><hr>
+<a name="Obtaining-TeX"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#PDF-Output">PDF Output</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Hardcopy">Hardcopy</a>
+<br>
+</div>
+
+<h3 class="section">20.16 How to Obtain TeX</h3>
+
+<p><a name="index-Obtaining-_0040TeX_007b_007d-1066"></a><a name="index-_0040TeX_007b_007d_002c-how-to-obtain-1067"></a>
+<!-- !!! Here is information about obtaining TeX. Update it whenever. -->
+<!-- !!! Also consider updating TeX.README on ftp.gnu.org. -->
+<!-- Updated by RJC on 1 March 1995, conversation with MacKay. -->
+<!-- Updated by kb@cs.umb.edu on 29 July 1996. -->
+<!-- Updated by kb@cs.umb.edu on 25 April 1997. -->
+<!-- Updated by kb@cs.umb.edu on 27 February 1998. -->
+TeX is freely redistributable. You can obtain TeX for Unix
+systems via anonymous ftp or on physical media. The core material
+consists of the Web2c TeX distribution (<a href="http://tug.org/web2c">http://tug.org/web2c</a>).
+
+ <p>Instructions for retrieval by anonymous ftp and information on other
+available distributions:
+<a href="http://tug.org/unixtex.ftp">http://tug.org/unixtex.ftp</a>.
+
+ <p>The Free Software Foundation provides a core distribution on its Source
+Code CD-ROM suitable for printing Texinfo manuals. To order it, contact:
+
+<pre class="display"> Free Software Foundation, Inc.
+ 59 Temple Place Suite 330
+ Boston, MA 02111-1307
+ USA
+ Telephone: +1-617-542-5942<!-- /@w -->
+ Fax: (including Japan) +1-617-542-2652<!-- /@w -->
+ Free Dial Fax (in Japan):
+ &nbsp;<!-- /@w --> &nbsp;<!-- /@w --> &nbsp;<!-- /@w --> 0031-13-2473 (KDD)
+ &nbsp;<!-- /@w --> &nbsp;<!-- /@w --> &nbsp;<!-- /@w --> 0066-3382-0158 (IDC)
+ Electronic mail: <code>gnu@gnu.org</code>
+</pre>
+ <p>Many other TeX distributions are available; see
+<a href="http://tug.org/">http://tug.org/</a>.
+
+<div class="node">
+<p><hr>
+<a name="Creating-and-Installing-Info-Files"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Generating-HTML">Generating HTML</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Hardcopy">Hardcopy</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">21 Creating and Installing Info Files</h2>
+
+<p>This chapter describes how to create and install Info files. See <a href="#Info-Files">Info Files</a>, for general information about the file format itself.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Creating-an-Info-File">Creating an Info File</a>
+<li><a accesskey="2" href="#Installing-an-Info-File">Installing an Info File</a>
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Creating-an-Info-File"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Installing-an-Info-File">Installing an Info File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-and-Installing-Info-Files">Creating and Installing Info Files</a>
+<br>
+</div>
+
+<h3 class="section">21.1 Creating an Info File</h3>
+
+<p><a name="index-Creating-an-Info-file-1068"></a><a name="index-Info_002c-creating-an-online-file-1069"></a><a name="index-Formatting-a-file-for-Info-1070"></a>
+<code>makeinfo</code> is a program that converts a Texinfo file into an Info
+file, HTML file, or plain text. <code>texinfo-format-region</code> and
+<code>texinfo-format-buffer</code> are GNU Emacs functions that convert
+Texinfo to Info.
+
+ <p>For information on installing the Info file in the Info system,
+see <a href="#Installing-an-Info-File">Installing an Info File</a>.
+
+<ul class="menu">
+<li><a accesskey="1" href="#makeinfo-advantages">makeinfo advantages</a>: <code>makeinfo</code> provides better error checking.
+<li><a accesskey="2" href="#Invoking-makeinfo">Invoking makeinfo</a>: How to run <code>makeinfo</code> from a shell.
+<li><a accesskey="3" href="#makeinfo-options">makeinfo options</a>: Specify fill-column and other options.
+<li><a accesskey="4" href="#Pointer-Validation">Pointer Validation</a>: How to check that pointers point somewhere.
+<li><a accesskey="5" href="#makeinfo-in-Emacs">makeinfo in Emacs</a>: How to run <code>makeinfo</code> from Emacs.
+<li><a accesskey="6" href="#texinfo_002dformat-commands">texinfo-format commands</a>: Two Info formatting commands written
+ in Emacs Lisp are an alternative
+ to <code>makeinfo</code>.
+<li><a accesskey="7" href="#Batch-Formatting">Batch Formatting</a>: How to format for Info in Emacs Batch mode.
+<li><a accesskey="8" href="#Tag-and-Split-Files">Tag and Split Files</a>: How tagged and split files help Info
+ to run better.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="makeinfo-advantages"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Invoking-makeinfo">Invoking makeinfo</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-an-Info-File">Creating an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.1.1 <code>makeinfo</code> Preferred</h4>
+
+<p>The <code>makeinfo</code> utility creates an Info file from a Texinfo source
+file more quickly than either of the Emacs formatting commands and
+provides better error messages. We recommend it. <code>makeinfo</code> is a
+C program that is independent of Emacs. You do not need to run Emacs to
+use <code>makeinfo</code>, which means you can use <code>makeinfo</code> on machines
+that are too small to run Emacs. You can run <code>makeinfo</code> in any one
+of three ways: from an operating system shell, from a shell inside
+Emacs, or by typing the <kbd>C-c C-m C-r</kbd> or the <kbd>C-c C-m C-b</kbd>
+command in Texinfo mode in Emacs.
+
+ <p>The <code>texinfo-format-region</code> and the <code>texinfo-format-buffer</code>
+commands are useful if you cannot run <code>makeinfo</code>. Also, in some
+circumstances, they format short regions or buffers more quickly than
+<code>makeinfo</code>.
+
+<div class="node">
+<p><hr>
+<a name="Invoking-makeinfo"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#makeinfo-options">makeinfo options</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#makeinfo-advantages">makeinfo advantages</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-an-Info-File">Creating an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.1.2 Running <code>makeinfo</code> from a Shell</h4>
+
+<p><a name="index-makeinfo-1071"></a>
+To create an Info file from a Texinfo file, invoke <span class="command">makeinfo</span>
+followed by the name of the Texinfo file. Thus, to create the Info
+file for Bison, type the following to the shell:
+
+<pre class="example"> makeinfo bison.texinfo
+</pre>
+ <p>(You can run a shell inside Emacs by typing <kbd>M-x shell</kbd>.)
+
+ <p><span class="command">makeinfo</span> has many options to control its actions and output;
+see the next section.
+
+<div class="node">
+<p><hr>
+<a name="makeinfo-options"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Pointer-Validation">Pointer Validation</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Invoking-makeinfo">Invoking makeinfo</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-an-Info-File">Creating an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.1.3 Options for <code>makeinfo</code></h4>
+
+<p><a name="index-_0040code_007bmakeinfo_007d-options-1072"></a><a name="index-Options-for-_0040code_007bmakeinfo_007d-1073"></a>
+The <span class="command">makeinfo</span> program accepts many options. Perhaps the most
+commonly needed are those that change the output format. By default,
+<span class="command">makeinfo</span> outputs Info files.
+
+ <p>Each command line option is a word preceded by <span class="samp">--</span> or a letter
+preceded by <span class="samp">-</span>. You can use abbreviations for the long option
+names as long as they are unique.
+
+ <p>For example, you could use the following shell command to create an Info
+file for <span class="file">bison.texinfo</span> in which each line is filled to only 68
+columns:
+
+<pre class="example"> makeinfo --fill-column=68 bison.texinfo
+</pre>
+ <p>You can write two or more options in sequence, like this:
+
+<pre class="example"> makeinfo --no-split --fill-column=70 ...
+</pre>
+ <p class="noindent">This would keep the Info file together as one possibly very long
+file and would also set the fill column to 70.
+
+ <p>The options are:
+
+ <dl>
+<dt><code>-D </code><var>var</var><dd><a name="index-_002dD-_0040var_007bvar_007d-1074"></a>Cause the variable <var>var</var> to be defined. This is equivalent to
+<code>@set </code><var>var</var> in the Texinfo file (see <a href="#set-clear-value">set clear value</a>).
+
+ <br><dt><code>--commands-in-node-names</code><dd><a name="index-_002d_002dcommands_002din_002dnode_002dnames-1075"></a>Allow <code>@</code>-commands in node names. This is not recommended, as it
+can probably never be implemented in TeX. It also makes
+<code>makeinfo</code> much slower. Also, this option is ignored when
+<span class="samp">--no-validate</span> is used. See <a href="#Pointer-Validation">Pointer Validation</a>, for more
+details.
+
+ <br><dt><code>--css-include=</code><var>file</var><dd><a name="index-_002d_002dcss_002dinclude-1076"></a>Include the contents of <var>file</var>, which should contain cascading
+style sheets specifications, in the <span class="samp">&lt;style&gt;</span> block of the HTML
+output. See <a href="#HTML-CSS">HTML CSS</a>. If <var>file</var> is <span class="samp">-</span>, read standard
+input.
+
+ <br><dt><code>--docbook</code><dd><a name="index-_002d_002ddocbook-1077"></a>Generate Docbook output rather than Info.
+
+ <br><dt><code>--enable-encoding</code><dd><a name="index-_002d_002denable_002dencoding-1078"></a>Output accented and special characters in Info or plain text output
+based on <span class="samp">@documentencoding</span>.
+See <a href="#documentencoding"><code>documentencoding</code></a>, and <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>--error-limit=</code><var>limit</var><dt><code>-e </code><var>limit</var><dd><a name="index-_002d_002derror_002dlimit_003d_0040var_007blimit_007d-1079"></a><a name="index-_002de-_0040var_007blimit_007d-1080"></a>Set the maximum number of errors that <code>makeinfo</code> will report
+before exiting (on the assumption that continuing would be useless);
+default 100.
+
+ <br><dt><code>--fill-column=</code><var>width</var><dt><code>-f </code><var>width</var><dd><a name="index-_002d_002dfill_002dcolumn_003d_0040var_007bwidth_007d-1081"></a><a name="index-_002df-_0040var_007bwidth_007d-1082"></a>Specify the maximum number of columns in a line; this is the right-hand
+edge of a line. Paragraphs that are filled will be filled to this
+width. (Filling is the process of breaking up and connecting lines so
+that lines are the same length as or shorter than the number specified
+as the fill column. Lines are broken between words.) The default value
+is 72. Ignored with <span class="samp">--html</span>.
+
+ <br><dt><code>--footnote-style=</code><var>style</var><dt><code>-s </code><var>style</var><dd><a name="index-_002d_002dfootnote_002dstyle_003d_0040var_007bstyle_007d-1083"></a><a name="index-_002ds-_0040var_007bstyle_007d-1084"></a>Set the footnote style to <var>style</var>, either <span class="samp">end</span> for the end
+node style (the default) or <span class="samp">separate</span> for the separate node style.
+The value set by this option overrides the value set in a Texinfo file
+by an <code>@footnotestyle</code> command (see <a href="#Footnotes">Footnotes</a>). When the
+footnote style is <span class="samp">separate</span>, <code>makeinfo</code> makes a new node
+containing the footnotes found in the current node. When the footnote
+style is <span class="samp">end</span>, <code>makeinfo</code> places the footnote references at
+the end of the current node. Ignored with <span class="samp">--html</span>.
+
+ <br><dt><code>--force</code><dt><code>-F</code><dd><a name="index-_002d_002dforce-1085"></a><a name="index-_002dF-1086"></a>Ordinarily, if the input file has errors, the output files are not
+created. With this option, they are preserved.
+
+ <br><dt><code>--help</code><dt><code>-h</code><dd><a name="index-_002d_002dhelp-1087"></a><a name="index-_002dh-1088"></a>Print a usage message listing all available options, then exit successfully.
+
+ <br><dt><code>--html</code><dd><a name="index-_002d_002dhtml-1089"></a>Generate HTML output rather than Info. See <a href="#Generating-HTML">Generating HTML</a>. By
+default, the HTML output is split into one output file per Texinfo
+source node, and the split output is written into a subdirectory with
+the name of the top-level info file.
+
+ <br><dt><code>-I </code><var>dir</var><dd><a name="index-_002dI-_0040var_007bdir_007d-1090"></a>Append <var>dir</var> to the directory search list for finding files that
+are included using the <code>@include</code> command. By default,
+<code>makeinfo</code> searches only the current directory. If <var>dir</var> is
+not given, the current directory <span class="file">.</span> is appended. Note that
+<var>dir</var> can actually be a list of several directories separated by the
+usual path separator character (<span class="samp">:</span> on Unix, <span class="samp">;</span> on
+MS-DOS/MS-Windows).
+
+ <br><dt><code>--ifdocbook</code><dd><a name="index-_002d_002difdocbook-1091"></a><dt><code>--ifhtml</code><dd><a name="index-_002d_002difhtml-1092"></a><dt><code>--ifinfo</code><dd><a name="index-_002d_002difinfo-1093"></a><dt><code>--ifplaintext</code><dd><a name="index-_002d_002difplaintext-1094"></a><dt><code>--iftex</code><dd><a name="index-_002d_002diftex-1095"></a><dt><code>--ifxml</code><dd><a name="index-_002d_002difxml-1096"></a>For the specified format, process <span class="samp">@if</span><var>format</var> and
+<span class="samp">@</span><var>format</var> commands even if not generating the given output
+format. For instance, if <span class="option">--iftex</span> is specified, then
+<span class="samp">@iftex</span> and <span class="samp">@tex</span> blocks will be read. This can be useful
+when postprocessing the output.
+
+ <br><dt><code>--macro-expand=</code><var>file</var><dt><code>-E </code><var>file</var><dd><a name="index-_002d_002dmacro_002dexpand_003d_0040var_007bfile_007d-1097"></a><a name="index-_002dE-_0040var_007bfile_007d-1098"></a>Output the Texinfo source with all the macros expanded to the named
+file. Normally, the results of macro expansion are used internally by
+<code>makeinfo</code> and then discarded. This option is used by
+<span class="command">texi2dvi</span>.
+
+ <br><dt><code>--no-headers</code><dd><a name="index-_002d_002dno_002dheaders-1099"></a><a name="index-Plain-text-output-1100"></a><a name="index-ASCII-text-output-1101"></a><a name="index-Generating-plain-text-files-1102"></a><a name="index-_0040file_007bINSTALL_007d-file_002c-generating-1103"></a><a name="index-Node-separators_002c-omitting-1104"></a><a name="index-Menus_002c-omitting-1105"></a>For Info output, do not include menus or node separator lines in the
+output, and implicitly <span class="option">--enable-encoding</span> (see above). This
+results in a simple plain text file that you can (for example) send in
+email without complications, or include in a distribution (as in an
+<span class="file">INSTALL</span> file).
+
+ <p><a name="index-Navigation-links_002c-omitting-1106"></a>For HTML output, likewise omit menus. And if <span class="samp">--no-split</span> is also
+specified, do not include a navigation links at the top of each node
+(these are never included in the default case of split output).
+See <a href="#Generating-HTML">Generating HTML</a>.
+
+ <p>In both cases, ignore <code>@setfilename</code> and write to standard
+output by default&mdash;can be overridden with <span class="option">-o</span>.
+
+ <br><dt><code>--no-ifdocbook</code><dd><a name="index-_002d_002dno_002difdocbook-1107"></a><dt><code>--no-ifhtml</code><dd><a name="index-_002d_002dno_002difhtml-1108"></a><dt><code>--no-ifinfo</code><dd><a name="index-_002d_002dno_002difinfo-1109"></a><dt><code>--no-ifplaintext</code><dd><a name="index-_002d_002dno_002difplaintext-1110"></a><dt><code>--no-iftex</code><dd><a name="index-_002d_002dno_002diftex-1111"></a><dt><code>--no-ifxml</code><dd><a name="index-_002d_002dno_002difxml-1112"></a>Do not process <span class="samp">@if</span><var>format</var> and <span class="samp">@</span><var>format</var>
+commands even if generating the given format. For instance, if
+<span class="option">--no-ifhtml</span> is specified, then <span class="samp">@ifhtml</span> and
+<span class="samp">@html</span> blocks will not be read.
+
+ <br><dt><code>--no-split</code><dd><a name="index-_002d_002dno_002dsplit-1113"></a><a name="index-Splitting-of-output-files-1114"></a><a name="index-Output-file-splitting-1115"></a>Suppress the splitting stage of <code>makeinfo</code>. By default, large
+output files (where the size is greater than 70k bytes) are split into
+smaller subfiles. For Info output, each one is approximately 50k bytes.
+For HTML output, each file contains one node (see <a href="#Generating-HTML">Generating HTML</a>).
+
+ <br><dt><code>--no-pointer-validate</code><dt><code>--no-validate</code><dd><a name="index-_002d_002dno_002dpointer_002dvalidate-1116"></a><a name="index-_002d_002dno_002dvalidate-1117"></a><a name="index-Pointer-validation_002c-suppressing-1118"></a>Suppress the pointer-validation phase of <code>makeinfo</code>. This can also
+be done with the <code>@novalidate</code> command (see <a href="#Use-TeX">Use TeX</a>). Normally, after a Texinfo file is processed, some consistency
+checks are made to ensure that cross references can be resolved, etc.
+See <a href="#Pointer-Validation">Pointer Validation</a>.
+
+ <br><dt><code>--no-warn</code><dd><a name="index-_002d_002dno_002dwarn-1119"></a>Suppress warning messages (but <em>not</em> error messages). You might
+want this if the file you are creating has examples of Texinfo cross
+references within it, and the nodes that are referenced do not actually
+exist.
+
+ <br><dt><code>--number-sections</code><dd><a name="index-_002d_002dnumber_002dsections-1120"></a>Output chapter, section, and appendix numbers as in printed manuals.
+
+ <br><dt><code>--no-number-footnotes</code><dd><a name="index-_002d_002dno_002dnumber_002dfootnotes-1121"></a>Suppress automatic footnote numbering. By default, <code>makeinfo</code>
+numbers each footnote sequentially in a single node, resetting the
+current footnote number to 1 at the start of each node.
+
+ <br><dt><code>--output=</code><var>file</var><dt><code>-o </code><var>file</var><dd><a name="index-_002d_002doutput_003d_0040var_007bfile_007d-1122"></a><a name="index-_002do-_0040var_007bfile_007d-1123"></a>Specify that the output should be directed to <var>file</var> and not to the
+file name specified in the <code>@setfilename</code> command found in the
+Texinfo source (see <a href="#setfilename">setfilename</a>). If <var>file</var> is <span class="samp">-</span>, output
+goes to standard output and <span class="samp">--no-split</span> is implied. For split
+HTML output, <var>file</var> is the name for the directory into which all
+HTML nodes are written (see <a href="#Generating-HTML">Generating HTML</a>).
+
+ <br><dt><code>-P </code><var>dir</var><dd><a name="index-_002dP-_0040var_007bdir_007d-1124"></a>Prepend <var>dir</var> to the directory search list for <code>@include</code>.
+If <var>dir</var> is not given, the current directory <span class="file">.</span> is prepended.
+See <span class="samp">-I</span> for more details.
+
+ <br><dt><code>--paragraph-indent=</code><var>indent</var><dt><code>-p </code><var>indent</var><dd><a name="index-_002d_002dparagraph_002dindent_003d_0040var_007bindent_007d-1125"></a><a name="index-_002dp-_0040var_007bindent_007d-1126"></a>Set the paragraph indentation style to <var>indent</var>. The value set by
+this option overrides the value set in a Texinfo file by an
+<code>@paragraphindent</code> command (see <a href="#paragraphindent">paragraphindent</a>). The value
+of <var>indent</var> is interpreted as follows:
+
+ <dl>
+<dt><span class="samp">asis</span><dd>Preserve any existing indentation at the starts of paragraphs.
+
+ <br><dt><span class="samp">0</span> or <span class="samp">none</span><dd>Delete any existing indentation.
+
+ <br><dt><var>num</var><dd>Indent each paragraph by <var>num</var> spaces.
+</dl>
+
+ <br><dt><code>--reference-limit=</code><var>limit</var><dt><code>-r </code><var>limit</var><dd><a name="index-_002d_002dreference_002dlimit_003d_0040var_007blimit_007d-1127"></a><a name="index-_002dr-_0040var_007blimit_007d-1128"></a>Set the value of the number of references to a node that
+<code>makeinfo</code> will make without reporting a warning. If a node has more
+than this number of references in it, <code>makeinfo</code> will make the
+references but also report a warning. The default is 1000.
+
+ <br><dt><code>--split-size=</code><var>num</var><dd><a name="index-_002d_002dsplit_002dsize_003d_0040var_007bnum_007d-1129"></a>Keep Info files to at most <var>num</var> characters; default is 300,000.
+
+ <br><dt><code>-U </code><var>var</var><dd>Cause <var>var</var> to be undefined. This is equivalent to
+<code>@clear </code><var>var</var> in the Texinfo file (see <a href="#set-clear-value">set clear value</a>).
+
+ <br><dt><code>--verbose</code><dd><a name="index-_002d_002dverbose-1130"></a>Cause <code>makeinfo</code> to display messages saying what it is doing.
+Normally, <code>makeinfo</code> only outputs messages if there are errors or
+warnings.
+
+ <br><dt><code>--version</code><dt><code>-V</code><dd><a name="index-_002d_002dversion-1131"></a><a name="index-_002dV-1132"></a>Print the version number, then exit successfully.
+
+ <br><dt><code>--xml</code><dd><a name="index-_002d_002dxml-1133"></a>Generate XML output rather than Info.
+
+ </dl>
+
+ <p><a name="index-TEXINFO_005fOUTPUT_005fFORMAT-1134"></a><a name="index-Environment-variable-_0040code_007bTEXINFO_005fOUTPUT_005fFORMAT_007d-1135"></a><span class="command">makeinfo</span> also reads the environment variable
+<span class="env">TEXINFO_OUTPUT_FORMAT</span> to determine the output format, if not
+overridden by a command line option. The possible values are:
+
+<pre class="example"> docbook html info plaintext xml
+</pre>
+ <p>If not set, Info output is the default.
+
+<div class="node">
+<p><hr>
+<a name="Pointer-Validation"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#makeinfo-in-Emacs">makeinfo in Emacs</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#makeinfo-options">makeinfo options</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-an-Info-File">Creating an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.1.4 Pointer Validation</h4>
+
+<p><a name="index-Pointer-validation-with-_0040code_007bmakeinfo_007d-1136"></a><a name="index-Validation-of-pointers-1137"></a>
+If you do not suppress pointer validation with the <span class="samp">--no-validate</span>
+option or the <code>@novalidate</code> command in the source file (see <a href="#Use-TeX">Use TeX</a>), <code>makeinfo</code> will check the validity of the final
+Info file. Mostly, this means ensuring that nodes you have referenced
+really exist. Here is a complete list of what is checked:
+
+ <ol type=1 start=1>
+<li>If a `Next', `Previous', or `Up' node reference is a reference to a
+node in the current file and is not an external reference such as to
+<span class="file">(dir)</span>, then the referenced node must exist.
+
+ <li>In every node, if the `Previous' node is different from the `Up' node,
+then the node pointed to by the `Previous' field must have a `Next'
+field which points back to this node.
+
+ <li>Every node except the `Top' node must have an `Up' pointer.
+
+ <li>The node referenced by an `Up' pointer must itself reference the current
+node through a menu item, unless the node referenced by `Up'
+has the form `(<var>file</var>)'.
+
+ <li>If the `Next' reference of a node is not the same as the `Next' reference
+of the `Up' reference, then the node referenced by the `Next' pointer
+must have a `Previous' pointer that points back to the current node.
+This rule allows the last node in a section to point to the first node
+of the next chapter.
+
+ <li>Every node except `Top' should be referenced by at least one other node,
+either via the `Previous' or `Next' links, or via a menu or a
+cross-reference.
+ </ol>
+
+ <p><a name="index-_0040_0040_002dcommands-in-_0040_0040node_002c-limited-support-1138"></a>Some Texinfo documents might fail during the validation phase because
+they use commands like <code>@value</code> and <code>@definfoenclose</code> in
+node definitions and cross-references inconsistently. Consider the
+following example:
+
+<pre class="example"> @set nodename Node 1
+
+ @node @value{nodename}, Node 2, Top, Top
+
+ This is node 1.
+
+ @node Node 2, , Node 1, Top
+
+ This is node 2.
+</pre>
+ <p class="noindent">Here, the node &ldquo;Node 1&rdquo; was referenced both verbatim and through
+<code>@value</code>.
+
+ <p>By default, <code>makeinfo</code> fails such cases, because node names are not
+fully expanded until they are written to the output file. You should
+always try to reference nodes consistently; e.g., in the above example,
+the second <code>@node</code> line should have also used <code>@value</code>.
+However, if, for some reason, you <em>must</em> reference node names
+inconsistently, and <code>makeinfo</code> fails to validate the file, you can
+use the <span class="samp">--commands-in-node-names</span> option to force <code>makeinfo</code>
+to perform the expensive expansion of all node names it finds in the
+document. This might considerably slow down the program, though;
+twofold increase in conversion time was measured for large documents
+such as the Jargon file.
+
+ <p><a name="index-_0040_0040value-in-_0040_0040node-lines-1139"></a>The support for <code>@</code>-commands in <code>@node</code> directives is not
+general enough to be freely used. For example, if the example above
+redefined <code>nodename</code> somewhere in the document, <code>makeinfo</code>
+will fail to convert it, even if invoked with the
+<span class="samp">--commands-in-node-names</span> option.
+
+ <p><span class="samp">--commands-in-node-names</span> has no effect if the <span class="samp">--no-validate</span>
+option is given.
+
+<div class="node">
+<p><hr>
+<a name="makeinfo-in-Emacs"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#texinfo_002dformat-commands">texinfo-format commands</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Pointer-Validation">Pointer Validation</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-an-Info-File">Creating an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.1.5 Running <code>makeinfo</code> Within Emacs</h4>
+
+<p><a name="index-Running-_0040code_007bmakeinfo_007d-in-Emacs-1140"></a><a name="index-_0040code_007bmakeinfo_007d-inside-Emacs-1141"></a><a name="index-Shell_002c-running-_0040code_007bmakeinfo_007d-in-1142"></a>
+You can run <code>makeinfo</code> in GNU Emacs Texinfo mode by using either the
+<code>makeinfo-region</code> or the <code>makeinfo-buffer</code> commands. In
+Texinfo mode, the commands are bound to <kbd>C-c C-m C-r</kbd> and <kbd>C-c
+C-m C-b</kbd> by default.
+
+ <dl>
+<dt><kbd>C-c C-m C-r</kbd><dt><kbd>M-x makeinfo-region</kbd><dd>Format the current region for Info.
+<a name="index-makeinfo_002dregion-1143"></a>
+<br><dt><kbd>C-c C-m C-b</kbd><dt><kbd>M-x makeinfo-buffer</kbd><dd>Format the current buffer for Info.
+<a name="index-makeinfo_002dbuffer-1144"></a></dl>
+
+ <p>When you invoke <code>makeinfo-region</code> the output goes to a temporary
+buffer. When you invoke <code>makeinfo-buffer</code> output goes to the
+file set with <code>@setfilename</code> (see <a href="#setfilename">setfilename</a>).
+
+ <p>The Emacs <code>makeinfo-region</code> and <code>makeinfo-buffer</code> commands
+run the <code>makeinfo</code> program in a temporary shell buffer. If
+<code>makeinfo</code> finds any errors, Emacs displays the error messages in
+the temporary buffer.
+
+ <p><a name="index-Errors_002c-parsing-1145"></a><a name="index-Parsing-errors-1146"></a><a name="index-next_002derror-1147"></a>You can parse the error messages by typing <kbd>C-x `</kbd>
+(<code>next-error</code>). This causes Emacs to go to and position the
+cursor on the line in the Texinfo source that <code>makeinfo</code> thinks
+caused the error. See <a href="emacs.html#Compilation">Running <code>make</code> or Compilers Generally (The GNU Emacs Manual)</a>, for more
+information about using the <code>next-error</code> command.
+
+ <p>In addition, you can kill the shell in which the <code>makeinfo</code>
+command is running or make the shell buffer display its most recent
+output.
+
+ <dl>
+<dt><kbd>C-c C-m C-k</kbd><dt><kbd>M-x makeinfo-kill-job</kbd><dd><a name="index-makeinfo_002dkill_002djob-1148"></a>Kill the current running <code>makeinfo</code> job
+(from <code>makeinfo-region</code> or <code>makeinfo-buffer</code>).
+
+ <br><dt><kbd>C-c C-m C-l</kbd><dt><kbd>M-x makeinfo-recenter-output-buffer</kbd><dd><a name="index-makeinfo_002drecenter_002doutput_002dbuffer-1149"></a>Redisplay the <code>makeinfo</code> shell buffer to display its most recent
+output.
+</dl>
+
+<p class="noindent">(Note that the parallel commands for killing and recentering a TeX
+job are <kbd>C-c C-t C-k</kbd> and <kbd>C-c C-t C-l</kbd>. See <a href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a>.)
+
+ <p>You can specify options for <code>makeinfo</code> by setting the
+<code>makeinfo-options</code> variable with either the <kbd>M-x
+customize</kbd> or the <kbd>M-x set-variable</kbd> command, or by setting the
+variable in your <span class="file">.emacs</span> initialization file.
+
+ <p>For example, you could write the following in your <span class="file">.emacs</span> file:
+
+<pre class="example"> (setq makeinfo-options
+ "--paragraph-indent=0 --no-split
+ --fill-column=70 --verbose")
+</pre>
+ <p class="noindent"><!-- If you write these three cross references using xref, you see -->
+<!-- three references to the same named manual, which looks strange. -->
+For more information, see<br>
+<a href="emacs.html#Easy-Customization">Easy Customization Interface (The GNU Emacs Manual)</a>,<br>
+<a href="emacs.html#Examining">Examining and Setting Variables (The GNU Emacs Manual)</a>,<br>
+<a href="emacs.html#Init-File">Init File (The GNU Emacs Manual)</a>, and<br>
+<a href="#makeinfo-options">Options for <code>makeinfo</code></a>.
+
+<div class="node">
+<p><hr>
+<a name="texinfo_002dformat-commands"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Batch-Formatting">Batch Formatting</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#makeinfo-in-Emacs">makeinfo in Emacs</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-an-Info-File">Creating an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.1.6 The <code>texinfo-format...</code> Commands</h4>
+
+<p>In GNU Emacs in Texinfo mode, you can format part or all of a Texinfo
+file with the <code>texinfo-format-region</code> command. This formats the
+current region and displays the formatted text in a temporary buffer
+called <span class="samp">*Info Region*</span>.
+
+ <p>Similarly, you can format a buffer with the
+<code>texinfo-format-buffer</code> command. This command creates a new
+buffer and generates the Info file in it. Typing <kbd>C-x C-s</kbd> will
+save the Info file under the name specified by the
+<code>@setfilename</code> line which must be near the beginning of the
+Texinfo file.
+
+ <dl>
+<dt><kbd>C-c C-e C-r</kbd><dt><code>texinfo-format-region</code><dd><a name="index-texinfo_002dformat_002dregion-1150"></a>Format the current region for Info.
+
+ <br><dt><kbd>C-c C-e C-b</kbd><dt><code>texinfo-format-buffer</code><dd><a name="index-texinfo_002dformat_002dbuffer-1151"></a>Format the current buffer for Info.
+</dl>
+
+ <p>The <code>texinfo-format-region</code> and <code>texinfo-format-buffer</code>
+commands provide you with some error checking, and other functions can
+provide you with further help in finding formatting errors. These
+procedures are described in an appendix; see <a href="#Catching-Mistakes">Catching Mistakes</a>.
+However, the <code>makeinfo</code> program is often faster and
+provides better error checking (see <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a>).
+
+<div class="node">
+<p><hr>
+<a name="Batch-Formatting"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Tag-and-Split-Files">Tag and Split Files</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#texinfo_002dformat-commands">texinfo-format commands</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-an-Info-File">Creating an Info File</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h4 class="subsection">21.1.7 Batch Formatting</h4>
+
+<p><a name="index-Batch-formatting-for-Info-1152"></a><a name="index-Info-batch-formatting-1153"></a>
+You can format Texinfo files for Info using <code>batch-texinfo-format</code>
+and Emacs Batch mode. You can run Emacs in Batch mode from any shell,
+including a shell inside of Emacs. (See <a href="emacs.html#Command-Arguments">Command Arguments (The GNU Emacs Manual)</a>.)
+
+ <p>Here is a shell command to format all the files that end in
+<span class="file">.texinfo</span> in the current directory:
+
+<pre class="example"> emacs -batch -funcall batch-texinfo-format *.texinfo
+</pre>
+ <p class="noindent">Emacs processes all the files listed on the command line, even if an
+error occurs while attempting to format some of them.
+
+ <p>Run <code>batch-texinfo-format</code> only with Emacs in Batch mode as shown;
+it is not interactive. It kills the Batch mode Emacs on completion.
+
+ <p><code>batch-texinfo-format</code> is convenient if you lack <code>makeinfo</code>
+and want to format several Texinfo files at once. When you use Batch
+mode, you create a new Emacs process. This frees your current Emacs, so
+you can continue working in it. (When you run
+<code>texinfo-format-region</code> or <code>texinfo-format-buffer</code>, you cannot
+use that Emacs for anything else until the command finishes.)
+
+<div class="node">
+<p><hr>
+<a name="Tag-and-Split-Files"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Batch-Formatting">Batch Formatting</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-an-Info-File">Creating an Info File</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h4 class="subsection">21.1.8 Tag Files and Split Files</h4>
+
+<p><a name="index-Making-a-tag-table-automatically-1154"></a><a name="index-Tag-table_002c-making-automatically-1155"></a>
+If a Texinfo file has more than 30,000 bytes,
+<code>texinfo-format-buffer</code> automatically creates a tag table
+for its Info file; <code>makeinfo</code> always creates a tag table. With
+a <dfn>tag table</dfn>, Info can jump to new nodes more quickly than it can
+otherwise.
+
+ <p><a name="index-Indirect-subfiles-1156"></a>In addition, if the Texinfo file contains more than about 300,000
+bytes, <code>texinfo-format-buffer</code> and <code>makeinfo</code> split the
+large Info file into shorter <dfn>indirect</dfn> subfiles of about 300,000
+bytes each. Big files are split into smaller files so that Emacs does
+not need to make a large buffer to hold the whole of a large Info
+file; instead, Emacs allocates just enough memory for the small, split-off
+file that is needed at the time. This way, Emacs avoids wasting
+memory when you run Info. (Before splitting was implemented, Info
+files were always kept short and <dfn>include files</dfn> were designed as
+a way to create a single, large printed manual out of the smaller Info
+files. See <a href="#Include-Files">Include Files</a>, for more information. Include files are
+still used for very large documents, such as <cite>The Emacs Lisp
+Reference Manual</cite>, in which each chapter is a separate file.)
+
+ <p>When a file is split, Info itself makes use of a shortened version of
+the original file that contains just the tag table and references to
+the files that were split off. The split-off files are called
+<dfn>indirect</dfn> files.
+
+ <p>The split-off files have names that are created by appending <span class="samp">-1</span><!-- /@w -->,
+<span class="samp">-2</span><!-- /@w -->, <span class="samp">-3</span><!-- /@w --> and so on to the file name specified by the
+<code>@setfilename</code> command. The shortened version of the original file
+continues to have the name specified by <code>@setfilename</code>.
+
+ <p>At one stage in writing this document, for example, the Info file was saved
+as the file <span class="file">test-texinfo</span> and that file looked like this:
+
+<pre class="example"> Info file: test-texinfo, -*-Text-*-
+ produced by texinfo-format-buffer
+ from file: new-texinfo-manual.texinfo
+
+ ^_
+ Indirect:
+ test-texinfo-1: 102
+ test-texinfo-2: 50422
+ test-texinfo-3: 101300
+ ^_^L
+ Tag table:
+ (Indirect)
+ Node: overview^?104
+ Node: info file^?1271
+ Node: printed manual^?4853
+ Node: conventions^?6855
+ ...
+</pre>
+ <p class="noindent">(But <span class="file">test-texinfo</span> had far more nodes than are shown here.) Each of
+the split-off, indirect files, <span class="file">test-texinfo-1</span>,
+<span class="file">test-texinfo-2</span>, and <span class="file">test-texinfo-3</span>, is listed in this file
+after the line that says <span class="samp">Indirect:</span>. The tag table is listed after
+the line that says <span class="samp">Tag table:</span>.
+
+ <p>In the list of indirect files, the number following the file name
+records the cumulative number of bytes in the preceding indirect files,
+not counting the file list itself, the tag table, or the permissions
+text in each file. In the tag table, the number following the node name
+records the location of the beginning of the node, in bytes from the
+beginning of the (unsplit) output.
+
+ <p>If you are using <code>texinfo-format-buffer</code> to create Info files,
+you may want to run the <code>Info-validate</code> command. (The
+<code>makeinfo</code> command does such a good job on its own, you do not
+need <code>Info-validate</code>.) However, you cannot run the <kbd>M-x
+Info-validate</kbd> node-checking command on indirect files. For
+information on how to prevent files from being split and how to
+validate the structure of the nodes, see <a href="#Using-Info_002dvalidate">Using Info-validate</a>.
+
+<div class="node">
+<p><hr>
+<a name="Installing-an-Info-File"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Creating-an-Info-File">Creating an Info File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Creating-and-Installing-Info-Files">Creating and Installing Info Files</a>
+<br>
+</div>
+
+<h3 class="section">21.2 Installing an Info File</h3>
+
+<p><a name="index-Installing-an-Info-file-1157"></a><a name="index-Info-file-installation-1158"></a><a name="index-_0040file_007bdir_007d-directory-for-Info-installation-1159"></a>
+Info files are usually kept in the <span class="file">info</span> directory. You can read
+Info files using the standalone Info program or the Info reader built
+into Emacs. (see <a href="info.html#Top">info</a>, for an introduction to Info.)
+
+<ul class="menu">
+<li><a accesskey="1" href="#Directory-File">Directory File</a>: The top level menu for all Info files.
+<li><a accesskey="2" href="#New-Info-File">New Info File</a>: Listing a new Info file.
+<li><a accesskey="3" href="#Other-Info-Directories">Other Info Directories</a>: How to specify Info files that are
+ located in other directories.
+<li><a accesskey="4" href="#Installing-Dir-Entries">Installing Dir Entries</a>: How to specify what menu entry to add
+ to the Info directory.
+<li><a accesskey="5" href="#Invoking-install_002dinfo">Invoking install-info</a>: <code>install-info</code> options.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Directory-File"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#New-Info-File">New Info File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Installing-an-Info-File">Installing an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.2.1 The Directory File <span class="file">dir</span></h4>
+
+<p>For Info to work, the <span class="file">info</span> directory must contain a file that
+serves as a top level directory for the Info system. By convention,
+this file is called <span class="file">dir</span>. (You can find the location of this file
+within Emacs by typing <kbd>C-h i</kbd> to enter Info and then typing
+<kbd>C-x C-f</kbd> to see the pathname to the <span class="file">info</span> directory.)
+
+ <p>The <span class="file">dir</span> file is itself an Info file. It contains the top level
+menu for all the Info files in the system. The menu looks like
+this:
+
+<pre class="example"> * Menu:
+ * Info: (info). Documentation browsing system.
+ * Emacs: (emacs). The extensible, self-documenting
+ text editor.
+ * Texinfo: (texinfo). With one source file, make
+ either a printed manual using
+ @TeX{} or an Info file.
+ ...
+</pre>
+ <p>Each of these menu entries points to the `Top' node of the Info file
+that is named in parentheses. (The menu entry does not need to
+specify the `Top' node, since Info goes to the `Top' node if no node
+name is mentioned. See <a href="#Other-Info-Files">Nodes in Other Info Files</a>.)
+
+ <p>Thus, the <span class="samp">Info</span> entry points to the `Top' node of the
+<span class="file">info</span> file and the <span class="samp">Emacs</span> entry points to the `Top' node
+of the <span class="file">emacs</span> file.
+
+ <p>In each of the Info files, the `Up' pointer of the `Top' node refers
+back to the <code>dir</code> file. For example, the line for the `Top'
+node of the Emacs manual looks like this in Info:
+
+<pre class="example"> File: emacs Node: Top, Up: (DIR), Next: Distrib
+</pre>
+ <p class="noindent">In this case, the <span class="file">dir</span> file name is written in upper case
+letters&mdash;it can be written in either upper or lower case. This is not
+true in general, it is a special case for <span class="file">dir</span>.
+
+<div class="node">
+<p><hr>
+<a name="New-Info-File"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Other-Info-Directories">Other Info Directories</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Directory-File">Directory File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Installing-an-Info-File">Installing an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.2.2 Listing a New Info File</h4>
+
+<p><a name="index-Adding-a-new-Info-file-1160"></a><a name="index-Listing-a-new-Info-file-1161"></a><a name="index-New-Info-file_002c-listing-it-in-_0040file_007bdir_007d-file-1162"></a><a name="index-Info-file_002c-listing-a-new-1163"></a><a name="index-_0040file_007bdir_007d-file-listing-1164"></a>
+To add a new Info file to your system, you must write a menu entry to
+add to the menu in the <span class="file">dir</span> file in the <span class="file">info</span> directory.
+For example, if you were adding documentation for GDB, you would write
+the following new entry:
+
+<pre class="example"> * GDB: (gdb). The source-level C debugger.
+</pre>
+ <p class="noindent">The first part of the menu entry is the menu entry name, followed by a
+colon. The second part is the name of the Info file, in parentheses,
+followed by a period. The third part is the description.
+
+ <p>The name of an Info file often has a <span class="file">.info</span> extension. Thus, the
+Info file for GDB might be called either <span class="file">gdb</span> or <span class="file">gdb.info</span>.
+The Info reader programs automatically try the file name both with and
+without <span class="file">.info</span><a rel="footnote" href="#fn-10" name="fnd-10"><sup>10</sup></a>; so it is better to avoid
+clutter and not to write <span class="samp">.info</span> explicitly in the menu entry. For
+example, the GDB menu entry should use just <span class="samp">gdb</span> for the file
+name, not <span class="samp">gdb.info</span>.
+
+<div class="node">
+<p><hr>
+<a name="Other-Info-Directories"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Installing-Dir-Entries">Installing Dir Entries</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#New-Info-File">New Info File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Installing-an-Info-File">Installing an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.2.3 Info Files in Other Directories</h4>
+
+<p><a name="index-Installing-Info-in-another-directory-1165"></a><a name="index-Info-installed-in-another-directory-1166"></a><a name="index-Another-Info-directory-1167"></a><a name="index-_0040file_007bdir_007d-files-and-Info-directories-1168"></a>
+If an Info file is not in the <span class="file">info</span> directory, there are three
+ways to specify its location:
+
+ <ol type=1 start=1>
+<li>Write the pathname in the <span class="file">dir</span> file as the second part of the menu.
+
+ <li>If you are using Emacs, list the name of the file in a second <span class="file">dir</span>
+file, in its directory; and then add the name of that directory to the
+<code>Info-directory-list</code> variable in your personal or site
+initialization file.
+
+ <p>This variable tells Emacs where to look for <span class="file">dir</span> files (the files
+must be named <span class="file">dir</span>). Emacs merges the files named <span class="file">dir</span> from
+each of the listed directories. (In Emacs version 18, you can set the
+<code>Info-directory</code> variable to the name of only one
+directory.)
+
+ <li>Specify the Info directory name in the <code>INFOPATH</code> environment
+variable in your <span class="file">.profile</span> or <span class="file">.cshrc</span> initialization file.
+(Only you and others who set this environment variable will be able to
+find Info files whose location is specified this way.)
+ </ol>
+
+ <p>For example, to reach a test file in the <span class="file">/home/bob/info</span>
+directory, you could add an entry like this to the menu in the
+standard <span class="file">dir</span> file:
+
+<pre class="example"> * Test: (/home/bob/info/info-test). Bob's own test file.
+</pre>
+ <p class="noindent">In this case, the absolute file name of the <span class="file">info-test</span> file is
+written as the second part of the menu entry.
+
+ <p>Alternatively, you could write the following in your <span class="file">.emacs</span> file:
+
+ <p><a name="index-Info_002ddirectory_002dlist-1169"></a>
+<pre class="example"> (require 'info)
+ (setq Info-directory-list
+ (cons (expand-file-name "/home/bob/info")
+ Info-directory-list))
+</pre>
+ <p>This tells Emacs to merge the system <span class="file">dir</span> file with the <span class="file">dir</span>
+file in <span class="file">/home/bob/info</span>. Thus, Info will list the
+<span class="file">/home/bob/info/info-test</span> file as a menu entry in the
+<span class="file">/home/bob/info/dir</span> file. Emacs does the merging only when
+<kbd>M-x info</kbd> is first run, so if you want to set
+<code>Info-directory-list</code> in an Emacs session where you've already run
+<code>info</code>, you must <code>(setq Info-dir-contents nil)</code> to force Emacs
+to recompose the <span class="file">dir</span> file.
+
+ <p><a name="index-INFOPATH-1170"></a><a name="index-Environment-variable-_0040code_007bINFOPATH_007d-1171"></a>Finally, you can tell Info where to look by setting the <code>INFOPATH</code>
+environment variable in your shell startup file, such as <span class="file">.cshrc</span>,
+<span class="file">.profile</span> or <span class="file">autoexec.bat</span>. If you use a Bourne-compatible
+shell such as <code>sh</code> or <code>bash</code> for your shell command
+interpreter, you set the <code>INFOPATH</code> environment variable in the
+<span class="file">.profile</span> initialization file; but if you use <code>csh</code> or
+<code>tcsh</code>, you set the variable in the <span class="file">.cshrc</span> initialization
+file. On MS-DOS/MS-Windows systems, you must set <code>INFOPATH</code> in
+your <span class="file">autoexec.bat</span> file or in the Registry. Each type of shell
+uses a different syntax.
+
+ <ul>
+<li>In a <span class="file">.cshrc</span> file, you could set the <code>INFOPATH</code>
+variable as follows:
+
+ <pre class="smallexample"> setenv INFOPATH .:~/info:/usr/local/emacs/info
+ </pre>
+ <li>In a <span class="file">.profile</span> file, you would achieve the same effect by
+writing:
+
+ <pre class="smallexample"> INFOPATH=.:$HOME/info:/usr/local/emacs/info
+ export INFOPATH
+ </pre>
+ <li><a name="index-autoexec_002ebat-1172"></a>In a <span class="file">autoexec.bat</span> file, you write this command<a rel="footnote" href="#fn-11" name="fnd-11"><sup>11</sup></a>:
+
+ <pre class="smallexample"> set INFOPATH=.;%HOME%/info;c:/usr/local/emacs/info
+ </pre>
+ </ul>
+
+<p class="noindent">The <span class="samp">.</span> indicates the current directory as usual. Emacs uses the
+<code>INFOPATH</code> environment variable to initialize the value of Emacs's
+own <code>Info-directory-list</code> variable. The stand-alone Info reader
+merges any files named <span class="file">dir</span> in any directory listed in the
+<span class="env">INFOPATH</span> variable into a single menu presented to you in the node
+called <span class="samp">(dir)Top</span>.
+
+ <p><a name="index-Colon_002c-last-in-_0040env_007bINFOPATH_007d-1173"></a>However you set <span class="env">INFOPATH</span>, if its last character is a
+colon<a rel="footnote" href="#fn-12" name="fnd-12"><sup>12</sup></a>, this
+is replaced by the default (compiled-in) path. This gives you a way to
+augment the default path with new directories without having to list all
+the standard places. For example (using <code>sh</code> syntax):
+
+<pre class="example"> INFOPATH=/local/info:
+ export INFOPATH
+</pre>
+ <p class="noindent">will search <span class="file">/local/info</span> first, then the standard directories.
+Leading or doubled colons are not treated specially.
+
+ <p><a name="index-_0040file_007bdir_007d-file_002c-creating-your-own-1174"></a>When you create your own <span class="file">dir</span> file for use with
+<code>Info-directory-list</code> or <span class="env">INFOPATH</span>, it's easiest to start by
+copying an existing <span class="file">dir</span> file and replace all the text after the
+<span class="samp">* Menu:</span> with your desired entries. That way, the punctuation and
+special CTRL-_ characters that Info needs will be present.
+
+<div class="node">
+<p><hr>
+<a name="Installing-Dir-Entries"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Invoking-install_002dinfo">Invoking install-info</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Other-Info-Directories">Other Info Directories</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Installing-an-Info-File">Installing an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.2.4 Installing Info Directory Files</h4>
+
+<p>When you install an Info file onto your system, you can use the program
+<code>install-info</code> to update the Info directory file <span class="file">dir</span>.
+Normally the makefile for the package runs <code>install-info</code>, just
+after copying the Info file into its proper installed location.
+
+ <p><a name="index-dircategory-1175"></a><a name="index-direntry-1176"></a>In order for the Info file to work with <code>install-info</code>, you include
+the commands <code>@dircategory</code> and
+<code>@direntry</code><small class="dots">...</small><code>@end direntry</code> in the Texinfo source
+file. Use <code>@direntry</code> to specify the menu entries to add to the
+Info directory file, and use <code>@dircategory</code> to specify which part
+of the Info directory to put it in. Here is how these commands are used
+in this manual:
+
+<pre class="smallexample"> @dircategory Texinfo documentation system
+ @direntry
+ * Texinfo: (texinfo). The GNU documentation format.
+ * install-info: (texinfo)Invoking install-info. ...
+ ...
+ @end direntry
+</pre>
+ <p>Here's what this produces in the Info file:
+
+<pre class="smallexample"> INFO-DIR-SECTION Texinfo documentation system
+ START-INFO-DIR-ENTRY
+ * Texinfo: (texinfo). The GNU documentation format.
+ * install-info: (texinfo)Invoking install-info. ...
+ ...
+ END-INFO-DIR-ENTRY
+</pre>
+ <p class="noindent">The <code>install-info</code> program sees these lines in the Info file, and
+that is how it knows what to do.
+
+ <p>Always use the <code>@direntry</code> and <code>@dircategory</code> commands near
+the beginning of the Texinfo input, before the first <code>@node</code>
+command. If you use them later on in the input, <code>install-info</code>
+will not notice them.
+
+ <p>If you use <code>@dircategory</code> more than once in the Texinfo source,
+each usage specifies the `current' category; any subsequent
+<code>@direntry</code> commands will add to that category.
+
+ <p><a name="index-Free-Software-Directory-1177"></a><a name="index-Dir-categories_002c-choosing-1178"></a><a name="index-Categories_002c-choosing-1179"></a>When choosing a category name for the <code>@dircategory</code> command, we
+recommend consulting the <a href="http://www.gnu.org/directory">Free Software Directory</a>. If your program is not listed there,
+or listed incorrectly or incompletely, please report the situation to
+the directory maintainers (<a href="mailto:bug-directory@gnu.org">bug-directory@gnu.org</a>) so that the
+category names can be kept in sync.
+
+ <p>Here are a few examples (see the <span class="file">util/dir-example</span> file in the
+Texinfo distribution for large sample <code>dir</code> file):
+
+<pre class="display"> Emacs
+ Localization
+ Printing
+ Software development
+ Software libraries
+ Text creation and manipulation
+</pre>
+ <p><a name="index-Invoking-nodes_002c-including-in-dir-file-1180"></a>Each `Invoking' node for every program installed should have a
+corresponding <code>@direntry</code>. This lets users easily find the
+documentation for the different programs they can run, as with the
+traditional <span class="command">man</span> system.
+
+<div class="node">
+<p><hr>
+<a name="Invoking-install_002dinfo"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Installing-Dir-Entries">Installing Dir Entries</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Installing-an-Info-File">Installing an Info File</a>
+<br>
+</div>
+
+<h4 class="subsection">21.2.5 Invoking <span class="command">install-info</span></h4>
+
+<p><a name="index-install_002dinfo-1181"></a>
+<code>install-info</code> inserts menu entries from an Info file into the
+top-level <span class="file">dir</span> file in the Info system (see the previous sections
+for an explanation of how the <span class="file">dir</span> file works). It's most often
+run as part of software installation, or when constructing a <span class="file">dir</span> file
+for all manuals on a system. Synopsis:
+
+<pre class="example"> install-info [<var>option</var>]... [<var>info-file</var> [<var>dir-file</var>]]
+</pre>
+ <p>If <var>info-file</var> or <var>dir-file</var> are not specified, the options
+(described below) that define them must be. There are no compile-time
+defaults, and standard input is never used. <code>install-info</code> can
+read only one Info file and write only one <span class="file">dir</span> file per invocation.
+
+ <p><a name="index-_0040file_007bdir_007d_002c-created-by-_0040code_007binstall_002dinfo_007d-1182"></a>If <var>dir-file</var> (however specified) does not exist,
+<code>install-info</code> creates it if possible (with no entries).
+
+ <p><a name="index-Compressed-files_002c-reading-1183"></a><a name="index-Dir-files_002c-compressed-1184"></a>If any input file is compressed with <code>gzip</code> (see <a href="gzip.html#Invoking-gzip">Invoking gzip (Gzip)</a>), <code>install-info</code> automatically uncompresses it
+for reading. And if <var>dir-file</var> is compressed, <code>install-info</code>
+also automatically leaves it compressed after writing any changes.
+If <var>dir-file</var> itself does not exist, <code>install-info</code> tries to
+open <var>dir-file</var><span class="file">.gz</span>.
+
+ <p>Options:
+
+ <dl>
+<dt><code>--delete</code><dd><a name="index-_002d_002ddelete-1185"></a>Delete the entries in <var>info-file</var> from <var>dir-file</var>. The file
+name in the entry in <var>dir-file</var> must be <var>info-file</var> (except for
+an optional <span class="samp">.info</span> in either one). Don't insert any new entries.
+
+ <br><dt><code>--dir-file=</code><var>name</var><dt><code>-d </code><var>name</var><dd><a name="index-_002d_002ddir_002dfile_003d_0040var_007bname_007d-1186"></a><a name="index-_002dd-_0040var_007bname_007d-1187"></a>Specify file name of the Info directory file. This is equivalent to
+using the <var>dir-file</var> argument.
+
+ <br><dt><code>--entry=</code><var>text</var><dt><code>-e </code><var>text</var><dd><a name="index-_002d_002dentry_003d_0040var_007btext_007d-1188"></a><a name="index-_002de-_0040var_007btext_007d-1189"></a>Insert <var>text</var> as an Info directory entry; <var>text</var> should have the
+form of an Info menu item line plus zero or more extra lines starting
+with whitespace. If you specify more than one entry, they are all
+added. If you don't specify any entries, they are determined from
+information in the Info file itself.
+
+ <br><dt><code>--help</code><dt><code>-h</code><dd><a name="index-_002d_002dhelp-1190"></a><a name="index-_002dh-1191"></a>Display a usage message listing basic usage and all available options,
+then exit successfully.
+
+ <br><dt><code>--info-file=</code><var>file</var><dt><code>-i </code><var>file</var><dd><a name="index-_002d_002dinfo_002dfile_003d_0040var_007bfile_007d-1192"></a><a name="index-_002di-_0040var_007bfile_007d-1193"></a>Specify Info file to install in the directory.
+Equivalent to using the <var>info-file</var> argument.
+
+ <br><dt><code>--info-dir=</code><var>dir</var><dt><code>-D </code><var>dir</var><dd><a name="index-_002d_002dinfo_002ddir_003d_0040var_007bdir_007d-1194"></a><a name="index-_002dD-_0040var_007bdir_007d-1195"></a>Specify the directory where the directory file <span class="file">dir</span> resides.
+Equivalent to <span class="samp">--dir-file=</span><var>dir</var><span class="samp">/dir</span>.
+
+ <br><dt><code>--item=</code><var>text</var><dd><a name="index-_002d_002ditem_003d_0040var_007btext_007d-1196"></a>Same as <span class="samp">--entry=</span><var>text</var>. An Info directory entry is actually
+a menu item.
+
+ <br><dt><code>--quiet</code><dd><a name="index-_002d_002dquiet-1197"></a>Suppress warnings.
+
+ <br><dt><code>--remove</code><dt><code>-r</code><dd><a name="index-_002d_002dremove-1198"></a><a name="index-_002dr-1199"></a>Same as <span class="samp">--delete</span>.
+
+ <br><dt><code>--section=</code><var>sec</var><dt><code>-s </code><var>sec</var><dd><a name="index-_002d_002dsection_003d_0040var_007bsec_007d-1200"></a><a name="index-_002ds-_0040var_007bsec_007d-1201"></a>Put this file's entries in section <var>sec</var> of the directory. If you
+specify more than one section, all the entries are added in each of the
+sections. If you don't specify any sections, they are determined from
+information in the Info file itself.
+
+ <br><dt><code>--version</code><dt><code>-V</code><dd><a name="index-_002d_002dversion-1202"></a><a name="index-_002dV-1203"></a><a name="index-Version-number_002c-for-install_002dinfo-1204"></a>Display version information and exit successfully.
+
+ </dl>
+
+<div class="node">
+<p><hr>
+<a name="Generating-HTML"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Command-List">Command List</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Creating-and-Installing-Info-Files">Creating and Installing Info Files</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="chapter">22 Generating HTML</h2>
+
+<p><a name="index-HTML-output-1205"></a>
+<span class="command">makeinfo</span> generates Info output by default, but given the
+<span class="option">--html</span> option, it will generate HTML, for web browsers and
+other programs. This chapter gives some details on such HTML output.
+
+ <p><span class="command">makeinfo</span> can also write in XML and Docbook format, but we do
+not as yet describe these further. See <a href="#Output-Formats">Output Formats</a>, for a brief
+overview of all the output formats.
+
+<ul class="menu">
+<li><a accesskey="1" href="#HTML-Translation">HTML Translation</a>: Details of the HTML output.
+<li><a accesskey="2" href="#HTML-Splitting">HTML Splitting</a>: How HTML output is split.
+<li><a accesskey="3" href="#HTML-CSS">HTML CSS</a>: Influencing HTML output with Cascading Style Sheets.
+<li><a accesskey="4" href="#HTML-Xref">HTML Xref</a>: Cross-references in HTML output.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="HTML-Translation"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#HTML-Splitting">HTML Splitting</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Generating-HTML">Generating HTML</a>
+<br>
+</div>
+
+<h3 class="section">22.1 HTML Translation</h3>
+
+<p><span class="command">makeinfo</span> will include segments of Texinfo source between
+<code>@ifhtml</code> and <code>@end ifhtml</code> in the HTML output (but not
+any of the other conditionals, by default). Source between
+<code>@html</code> and <code>@end html</code> is passed without change to the
+output (i.e., suppressing the normal escaping of input <span class="samp">&lt;</span>,
+<span class="samp">&gt;</span> and <span class="samp">&amp;</span> characters which have special significance in
+HTML). See <a href="#Conditional-Commands">Conditional Commands</a>.
+
+ <p><a name="index-_002d_002dfootnote_002dstyle_0040r_007b_002c-ignored-in-HTML-output_007d-1206"></a>The <span class="option">--footnote-style</span> option is currently ignored for HTML output;
+footnotes are always linked to the end of the output file.
+
+ <p><a name="index-Navigation-bar_002c-in-HTML-output-1207"></a>By default, a navigation bar is inserted at the start of each node,
+analogous to Info output. The <span class="samp">--no-headers</span> option suppresses
+this if used with <span class="samp">--no-split</span>. Header <code>&lt;link&gt;</code> elements in
+split output can support info-like navigation with browsers like Lynx
+and Emacs&nbsp;W3<!-- /@w --> which implement this HTML&nbsp;<!-- /@w -->1.0 feature.
+
+ <p><a name="index-HTML-output_002c-browser-compatibility-of-1208"></a>The HTML generated is mostly standard (i.e., HTML&nbsp;<!-- /@w -->2.0, RFC-1866).
+One exception is that HTML&nbsp;<!-- /@w -->3.2 tables are generated from the
+<code>@multitable</code> command, but tagged to degrade as well as possible
+in browsers without table support. The HTML&nbsp;<!-- /@w -->4 <span class="samp">lang</span>
+attribute on the <span class="samp">&lt;html&gt;</span> attribute is also used. (Please report
+output from an error-free run of <code>makeinfo</code> which has browser
+portability problems as a bug.)
+
+<div class="node">
+<p><hr>
+<a name="HTML-Splitting"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#HTML-CSS">HTML CSS</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#HTML-Translation">HTML Translation</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Generating-HTML">Generating HTML</a>
+<br>
+</div>
+
+<h3 class="section">22.2 HTML Splitting</h3>
+
+<p><a name="index-Split-HTML-output-1209"></a><a name="index-HTML-output_002c-split-1210"></a>
+When splitting output (which is the default), <span class="command">makeinfo</span>
+writes HTML output into (generally) one output file per Texinfo source
+<code>@node</code>.
+
+ <p>The output file name is the node name with special characters replaced
+by <span class="samp">-</span>'s, so it can work as a filename. In the unusual case of
+two different nodes having the same name after this treatment, they
+are written consecutively to the same file, with HTML anchors so each
+can be referred to separately. If <span class="command">makeinfo</span> is run on a
+system which does not distinguish case in filenames, nodes which are
+the same except for case will also be folded into the same output
+file.
+
+ <p>When splitting, the HTML output files are written into a subdirectory,
+with the name chosen as follows:
+ <ol type=1 start=1>
+<li><span class="command">makeinfo</span> first tries the subdirectory with the base name
+from <code>@setfilename</code> (that is, any extension is removed). For
+example, HTML output for <code>@setfilename gcc.info</code> would be
+written into a subdirectory named <span class="samp">gcc</span>.
+
+ <li>If that directory cannot be created for any reason, then
+<span class="command">makeinfo</span> tries appending <span class="samp">.html</span> to the directory name.
+For example, output for <code>@setfilename texinfo</code> would be written
+to <span class="samp">texinfo.html</span>.
+
+ <li>If the <var>name</var><span class="samp">.html</span> directory can't be
+created either, <code>makeinfo</code> gives up.
+
+ </ol>
+
+<p class="noindent">In any case, the top-level output file within the directory
+is always named <span class="samp">index.html</span>.
+
+ <p>Monolithic output (<code>--no-split</code>) is named according to
+<code>@setfilename</code> (with any <span class="samp">.info</span> extension is replaced with
+<span class="samp">.html</span>) or <code>--output</code> (the argument is used literally).
+
+<div class="node">
+<p><hr>
+<a name="HTML-CSS"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#HTML-Xref">HTML Xref</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#HTML-Splitting">HTML Splitting</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Generating-HTML">Generating HTML</a>
+<br>
+</div>
+
+<h3 class="section">22.3 HTML CSS</h3>
+
+<p><a name="index-HTML_002c-and-CSS-1211"></a><a name="index-CSS_002c-and-HTML-output-1212"></a><a name="index-Cascading-Style-Sheets_002c-and-HTML-output-1213"></a>
+Cascading Style Sheets (CSS for short) is an Internet standard for
+influencing the display of HTML documents: see
+<a href="http://www.w3.org/Style/CSS/">http://www.w3.org/Style/CSS/</a>.
+
+ <p>By default, <span class="command">makeinfo</span> includes a few simple CSS commands to
+better implement the appearance of some of the environments. Here
+are two of them, as an example:
+
+<pre class="example"> pre.display { font-family:inherit }
+ pre.smalldisplay { font-family:inherit; font-size:smaller }
+</pre>
+ <p>A full explanation of CSS is (far) beyond this manual; please see the
+reference above. In brief, however, this specification tells the web
+browser to use a `smaller' font size for <code>@smalldisplay</code> text,
+and to use the `inherited' font (generally a regular roman typeface)
+for both <code>@smalldisplay</code> and <code>@display</code>. By default, the
+HTML <span class="samp">&lt;pre&gt;</span> command uses a monospaced font.
+
+ <p>You can influence the CSS in the HTML output with the
+<span class="option">--css-include=</span><var>file</var> option to <span class="command">makeinfo</span>. This
+includes the contents <var>file</var> in the HTML output, as you might
+expect. However, the details are somewhat tricky, as described in the
+following, to provide maximum flexibility.
+
+ <p><a name="index-_0040_0040import-specifications_002c-in-CSS-files-1214"></a>The CSS file may begin with so-called <span class="samp">@import</span> directives,
+which link to external CSS specifications for browsers to use when
+interpreting the document. Again, a full description is beyond our
+scope here, but we'll describe how they work syntactically, so we can
+explain how <span class="command">makeinfo</span> handles them.
+
+ <p><a name="index-Comments_002c-in-CSS-files-1215"></a>There can be more than one <span class="samp">@import</span>, but they have to come
+first in the file, with only whitespace and comments interspersed, no
+normal definitions. (Technical exception: an <span class="samp">@charset</span>
+directive may precede the <span class="samp">@import</span>'s. This does not alter
+<span class="command">makeinfo</span>'s behavior, it just copies the <span class="samp">@charset</span> if
+present.) Comments in CSS files are delimited by <span class="samp">/* ... */</span>, as
+in C. An <span class="samp">@import</span> directive must be in one of these two forms:
+
+<pre class="example"> @import url(http://example.org/foo.css);
+ @import "http://example.net/bar.css";
+</pre>
+ <p>As far as <span class="command">makeinfo</span> is concerned, the crucial characters are
+the <span class="samp">@</span> at the beginning and the semicolon terminating the
+directive. When reading the CSS file, it simply copies any such
+<span class="samp">@</span>-directive into the output, as follows:
+
+ <ul>
+<li>If <var>file</var> contains only normal CSS declarations, it is
+included after <span class="command">makeinfo</span>'s default CSS, thus overriding it.
+
+ <li>If <var>file</var> begins with <span class="samp">@import</span> specifications (see
+below), then the <span class="samp">import</span>'s are included first (they have to come
+first, according to the standard), and then <span class="command">makeinfo</span>'s
+default CSS is included. If you need to override <span class="command">makeinfo</span>'s
+defaults from an <span class="samp">@import</span>, you can do so with the <span class="samp">!
+important</span> CSS construct, as in:
+ <pre class="example"> pre.smallexample { font-size: inherit ! important }
+ </pre>
+ <li>If <var>file</var> contains both <span class="samp">@import</span> and inline CSS
+specifications, the <span class="samp">@import</span>'s are included first, then
+<span class="command">makeinfo</span>'s defaults, and lastly the inline CSS from
+<var>file</var>.
+
+ <li>Any @-directive other than <span class="samp">@import</span> and <span class="samp">@charset</span>
+is treated as a CSS declaration, meaning <span class="command">makeinfo</span> includes
+its default CSS and then the rest of the file.
+
+ </ul>
+
+ <p>If the CSS file is malformed or erroneous, <span class="command">makeinfo</span>'s output
+is unspecified. <span class="command">makeinfo</span> does not try to interpret the
+meaning of the CSS file in any way; it just looks for the special
+<span class="samp">@</span> and <span class="samp">;</span> characters and blindly copies the text into the
+output. Comments in the CSS file may or may not be included in the
+output.
+
+<div class="node">
+<p><hr>
+<a name="HTML-Xref"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#HTML-CSS">HTML CSS</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Generating-HTML">Generating HTML</a>
+<br>
+</div>
+
+<h3 class="section">22.4 HTML Cross-references</h3>
+
+<p><a name="index-HTML-cross_002dreferences-1216"></a><a name="index-Cross_002dreferences_002c-in-HTML-output-1217"></a>
+Cross-references between Texinfo manuals in HTML format amount, in the
+end, to a standard HTML <code>&lt;a&gt;</code> link, but the details are
+unfortunately complex. This section describes the algorithm used in
+detail, so that Texinfo can cooperate with other programs, such as
+<span class="command">texi2html</span>, by writing mutually compatible HTML files.
+
+ <p>This algorithm may or may not be used for links <em>within</em> HTML
+output for a Texinfo file. Since no issues of compatibility arise in
+such cases, we do not need to specify this.
+
+ <p>We try to support references to such &ldquo;external&rdquo; manuals in both
+monolithic and split forms. A <dfn>monolithic</dfn> (mono) manual is
+entirely contained in one file, and a <dfn>split</dfn> manual has a file
+for each node. (See <a href="#HTML-Splitting">HTML Splitting</a>.)
+
+ <p><a name="index-Dumas_002c-Patrice-1218"></a>Acknowledgement: this algorithm was primarily devised by Patrice Dumas
+in 2003&ndash;04.
+
+<ul class="menu">
+<li><a accesskey="1" href="#HTML-Xref-Link-Basics">Link Basics</a>
+<li><a accesskey="2" href="#HTML-Xref-Node-Name-Expansion">Node Expansion</a>
+<li><a accesskey="3" href="#HTML-Xref-Command-Expansion">Command Expansion</a>
+<li><a accesskey="4" href="#HTML-Xref-8_002dbit-Character-Expansion">8-bit Expansion</a>
+<li><a accesskey="5" href="#HTML-Xref-Mismatch">Mismatch</a>
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="HTML-Xref-Link-Basics"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#HTML-Xref-Node-Name-Expansion">HTML Xref Node Name Expansion</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#HTML-Xref">HTML Xref</a>
+<br>
+</div>
+
+<h4 class="subsection">22.4.1 HTML Cross-reference Link Basics</h4>
+
+<p><a name="index-HTML-cross_002dreference-link-basics-1219"></a>
+For our purposes, an HTML link consists of four components: a host
+name, a directory part, a file part, and a target part. We
+always assume the <code>http</code> protocol. For example:
+
+<pre class="example"> http://<var>host</var>/<var>dir</var>/<var>file</var>.html#<var>target</var>
+</pre>
+ <p>The information to construct a link comes from the node name and
+manual name in the cross-reference command in the Texinfo source
+(see <a href="#Cross-References">Cross References</a>), and from <dfn>external information</dfn>, which
+is currently simply hardwired. In the future, it may come from an
+external data file.
+
+ <p>We now consider each part in turn.
+
+ <p>The <var>host</var> is hardwired to be the local host. This could either
+be the literal string <span class="samp">localhost</span>, or, according to the rules for
+HTML links, the <span class="samp">http://localhost/</span> could be omitted entirely.
+
+ <p>The <var>dir</var> and <var>file</var> parts are more complicated, and depend on
+the relative split/mono nature of both the manual being processed and
+the manual that the cross-reference refers to. The underlying idea is
+that there is one directory for Texinfo manuals in HTML, and each
+manual is either available as a monolithic file <span class="file">manual.html</span>, or a
+split subdirectory <span class="file">manual/*.html</span>. Here are the cases:
+
+ <ul>
+<li>If the present manual is split, and the referent manual is also split,
+the directory is <span class="samp">../</span><var>referent/</var> and the file is the
+expanded node name (described later).
+
+ <li>If the present manual is split, and the referent manual is mono, the
+directory is <span class="samp">../</span> and the file is <var>referent</var><span class="file">.html</span>.
+
+ <li>If the present manual is mono, and the referent manual is split, the
+directory is <var>referent</var><span class="file">/</span> and the file is the expanded node
+name.
+
+ <li>If the present manual is mono, and the referent manual is also mono,
+the directory is <span class="file">./</span> (or just the empty string), and the file is
+<var>referent</var><span class="file">.html</span>.
+
+ </ul>
+
+ <p>Any directory part in the filename argument of the source
+cross-reference command is ignored. Thus, <code>@xref{,,,../foo}</code>
+and <code>@xref{,,,foo}</code> both use <span class="samp">foo</span> as the manual name.
+This is because any such attempted hardwiring of the directory is very
+unlikely to be useful for both Info and HTML output.
+
+ <p>Finally, the <var>target</var> part is always the expanded node name.
+
+ <p>Whether the present manual is split or mono is determined by user
+option; <span class="command">makeinfo</span> defaults to split, with the
+<span class="option">--no-split</span> option overriding this.
+
+ <p>Whether the referent manual is split or mono is another bit of the
+external information. For now, <span class="command">makeinfo</span> simply assumes the
+referent manual is the same as the present manual.
+
+ <p>There can be a mismatch between the format of the referent manual that
+the generating software assumes, and the format it's actually present
+in. See <a href="#HTML-Xref-Mismatch">HTML Xref Mismatch</a>.
+
+<div class="node">
+<p><hr>
+<a name="HTML-Xref-Node-Name-Expansion"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#HTML-Xref-Command-Expansion">HTML Xref Command Expansion</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#HTML-Xref-Link-Basics">HTML Xref Link Basics</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#HTML-Xref">HTML Xref</a>
+<br>
+</div>
+
+<h4 class="subsection">22.4.2 HTML Cross-reference Node Name Expansion</h4>
+
+<p><a name="index-HTML-cross_002dreference-node-name-expansion-1220"></a><a name="index-node-name-expansion_002c-in-HTML-cross_002dreferences-1221"></a><a name="index-expansion_002c-of-node-names-in-HTML-cross_002dreferences-1222"></a>
+As mentioned in the previous section, the key part of the HTML
+cross-reference algorithm is the conversion of node names in the
+Texinfo source into strings suitable for HTML identifiers and
+filenames. The restrictions are similar for each: plain ASCII
+letters, numbers, and the <span class="samp">-</span> and <span class="samp">_</span> characters are all
+that can be used.
+
+ <p>Cross-references in Texinfo can actually refer either to nodes or
+anchors (see <a href="#anchor">anchor</a>), but anchors are treated identically to nodes
+in this context, so we'll continue to say &ldquo;node&rdquo; names for
+simplicity.
+
+ <p>(@-commands and 8-bit characters are not presently handled by
+<span class="command">makeinfo</span> for HTML cross-references. See the next section.)
+
+ <p>A special exception: the Top node (see <a href="#The-Top-Node">The Top Node</a>) is always
+mapped to the file <span class="file">index.html</span>, to match web server software.
+However, the HTML <em>target</em> is <span class="samp">Top</span>. Thus (in the split case):
+<pre class="example"> @xref{Top, Introduction,, emacs, The GNU Emacs Manual}.
+ =&gt; &lt;a href="emacs/index.html#Top"&gt;
+</pre>
+ <ol type=1 start=1>
+<li>The standard ASCII letters (a-z and A-z), and numbers (0-9) are not
+modified. All other characters are changed as specified below.
+
+ <li>Multiple consecutive space, tab and newline characters are transformed
+into just one space. (It's not possible to have newlines in node
+names with the current implementation, but we specify it anyway, just
+in case.)
+
+ <li>Leading and trailing spaces are removed.
+
+ <li>After the above has been applied, each remaining space character is
+converted into a <span class="samp">-</span> character.
+
+ <li>Other ASCII 7-bit characters are transformed into <span class="samp">_00</span><var>xx</var>,
+where <var>xx</var> is the ASCII character code in (lowercase) hexadecimal.
+This includes <span class="samp">_</span>, which is mapped to <span class="samp">_005f</span>.
+
+ </ol>
+
+ <p>For example:
+
+<pre class="example"> @node A node --- with _'%
+ =&gt; A-node-_002d_002d_002d-with-_005f_0027_0025
+</pre>
+ <p>Notice in particular:
+
+ <ul>
+<li><span class="samp">_</span> =&gt; <span class="samp">_005f</span>
+<li><span class="samp">-</span> =&gt; <span class="samp">_002d</span>
+<li><span class="samp">A node</span> =&gt; <span class="samp">A-node</span>
+</ul>
+
+ <p>On case-folding computer systems, nodes differing only by case will be
+mapped to the same file.
+
+ <p>In particular, as mentioned above, Top always maps to the file
+<span class="file">index.html</span>. Thus, on a case-folding system, Top and a node
+named `Index' will both be written to <span class="file">index.html</span>.
+
+ <p>Fortunately, the targets serve to distinguish these cases, since HTML
+target names are always case-sensitive, independent of operating
+system.
+
+<div class="node">
+<p><hr>
+<a name="HTML-Xref-Command-Expansion"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#HTML-Xref-8_002dbit-Character-Expansion">HTML Xref 8-bit Character Expansion</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#HTML-Xref-Node-Name-Expansion">HTML Xref Node Name Expansion</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#HTML-Xref">HTML Xref</a>
+<br>
+</div>
+
+<h4 class="subsection">22.4.3 HTML Cross-reference Command Expansion</h4>
+
+<p><a name="index-HTML-cross_002dreference-command-expansion-1223"></a>
+In standard Texinfo, node names may not contain @-commands.
+<span class="command">makeinfo</span> has an option <span class="option">--commands-in-node-names</span>
+which partially supports it (see <a href="#Invoking-makeinfo">Invoking makeinfo</a>), but it is not
+robust and not recommended.
+
+ <p>Thus, <span class="command">makeinfo</span> also does not fully implement this part of
+the HTML cross-reference algorithm, but it is documented here for the
+sake of completeness.
+
+ <p>First, comments are removed.
+
+ <p>Next, any <code>@value</code> commands (see <a href="#set-value">set value</a>) and macro invocations
+(see <a href="#Invoking-Macros">Invoking Macros</a>) are fully expanded.
+
+ <p>Then, for the following commands, the command name and braces are removed,
+the text of the argument is recursively transformed:
+<pre class="example"> @asis @b @cite @code @command @dfn @dmn @dotless
+ @emph @env @file @indicateurl @kbd @key
+ @samp @sc @strong @t @var @w
+</pre>
+ <p class="noindent">For <code>@sc</code>, any letters are capitalized.
+
+ <p>The following commands are replaced by constant text, as shown. If
+any of these commands have non-empty arguments, as in
+<code>@TeX{bad}</code>, it is an error, and the result is unspecified.
+`(space)' means a space character, `(nothing)' means the empty string,
+etc. The notation `U+<var>xxxx</var>' means Unicode code point <var>xxxx</var>.
+There are further transformations of many of these expansions for the
+final file or target name, such as space characters to <span class="samp">-</span>, etc.,
+according to the other rules.
+
+ <p><table summary=""><tr align="left"><td valign="top" width="30%"><code>@(newline)</code> </td><td valign="top" width="50%">(space)
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@(space)</code> </td><td valign="top" width="50%">(space)
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@(tab)</code> </td><td valign="top" width="50%">(space)
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@!</code> </td><td valign="top" width="50%"><span class="samp">!</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@*</code> </td><td valign="top" width="50%">(space)
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@-</code> </td><td valign="top" width="50%">(nothing)
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@.</code> </td><td valign="top" width="50%"><span class="samp">.</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@:</code> </td><td valign="top" width="50%">(nothing)
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@?</code> </td><td valign="top" width="50%"><span class="samp">?</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@@</code> </td><td valign="top" width="50%"><span class="samp">@</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@{</code> </td><td valign="top" width="50%"><span class="samp">{</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@}</code> </td><td valign="top" width="50%"><span class="samp">}</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@LaTeX</code> </td><td valign="top" width="50%"><span class="samp">LaTeX</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@TeX</code> </td><td valign="top" width="50%"><span class="samp">TeX</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@bullet</code> </td><td valign="top" width="50%">U+2022
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@comma</code> </td><td valign="top" width="50%"><span class="samp">,</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@copyright</code> </td><td valign="top" width="50%">U+00A9
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@dots</code> </td><td valign="top" width="50%">U+2026
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@enddots</code> </td><td valign="top" width="50%"><span class="samp">...</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@equiv</code> </td><td valign="top" width="50%">U+2261
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@error</code> </td><td valign="top" width="50%"><span class="samp">error--&gt;</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@exclamdown</code> </td><td valign="top" width="50%">U+00A1
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@expansion</code> </td><td valign="top" width="50%">U+2192
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@minus</code> </td><td valign="top" width="50%">U+2212
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@ordf</code> </td><td valign="top" width="50%">U+00AA
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@ordm</code> </td><td valign="top" width="50%">U+00BA
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@point</code> </td><td valign="top" width="50%">U+2217
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@pounds</code> </td><td valign="top" width="50%">U+00A3
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@print</code> </td><td valign="top" width="50%"><span class="samp">-|</span>
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@questiondown</code> </td><td valign="top" width="50%">U+00BF
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@registeredsymbol</code> </td><td valign="top" width="50%">U+00AE
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@result</code> </td><td valign="top" width="50%">U+21D2
+<br></td></tr><tr align="left"><td valign="top" width="30%"><code>@tie</code> </td><td valign="top" width="50%">(space)
+ <br></td></tr></table>
+
+ <p>An <code>@acronym</code> command is replaced by the first argument,
+followed by the second argument in parentheses, if present.
+See <a href="#acronym">acronym</a>.
+
+ <p>An <code>@email</code> command is replaced by the <var>text</var> argument if
+present, else the address. See <a href="#email">email</a>.
+
+ <p>An <code>@image</code> command is replaced by the filename (first)
+argument. See <a href="#Images">Images</a>.
+
+ <p>A <code>@verb</code> command is replaced by its transformed argument.
+See <a href="#verb">verb</a>.
+
+ <p>Any other command is an error, and the result is unspecified.
+
+<div class="node">
+<p><hr>
+<a name="HTML-Xref-8_002dbit-Character-Expansion"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#HTML-Xref-Mismatch">HTML Xref Mismatch</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#HTML-Xref-Command-Expansion">HTML Xref Command Expansion</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#HTML-Xref">HTML Xref</a>
+<br>
+</div>
+
+<h4 class="subsection">22.4.4 HTML Cross-reference 8-bit Character Expansion</h4>
+
+<p><a name="index-HTML-cross_002dreference-8_002dbit-character-expansion-1224"></a><a name="index-8_002dbit-characters_002c-in-HTML-cross_002dreferences-1225"></a><a name="index-Expansion-of-8_002dbit-characters-in-HTML-cross_002dreferences-1226"></a>
+Characters other than plain 7-bit ASCII are transformed into the
+corresponding Unicode code point(s), in Normalization Form C, which
+uses precomposed characters where available. (This is the
+normalization form recommended by the W3C and other bodies.)
+
+ <p>These will then be further transformed by the rules above into the
+string <span class="samp">_</span><var>xxxx</var>, where <var>xxxx</var> is the code point in hex.
+
+ <p>For example, combining this rule and the previous section:
+
+<pre class="example"> @node @b{A} @TeX{} @u{B} @point{}@enddots{}
+ =&gt; A-TeX-B_0306-_2605_002e_002e_002e
+</pre>
+ <p>Notice: 1)&nbsp;<!-- /@w --><code>@enddots</code> expands to three periods which in turn expands
+to three <span class="samp">_002e</span>'s; 2)&nbsp;<!-- /@w --><code>@u{B}</code> is a `B' with a breve
+accent, which does not exist as a pre-accented Unicode character,
+therefore expands to <span class="samp">B_0306</span> (B with combining breve).
+
+ <p>For the definition of Unicode Normalization Form C, see Unicode report
+UAX#15, <a href="http://www.unicode.org/reports/tr15/">http://www.unicode.org/reports/tr15/</a>. Many related
+documents and implementations are available elsewhere on the web.
+
+<div class="node">
+<p><hr>
+<a name="HTML-Xref-Mismatch"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#HTML-Xref-8_002dbit-Character-Expansion">HTML Xref 8-bit Character Expansion</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#HTML-Xref">HTML Xref</a>
+<br>
+</div>
+
+<h4 class="subsection">22.4.5 HTML Cross-reference Mismatch</h4>
+
+<p><a name="index-HTML-cross_002dreference-mismatch-1227"></a><a name="index-Mismatched-HTML-cross_002dreference-source-and-target-1228"></a>
+As mentioned earlier (see <a href="#HTML-Xref-Link-Basics">HTML Xref Link Basics</a>), the generating
+software has to guess whether a given manual being cross-referenced is
+available in split or monolithic form&mdash;and, inevitably, it might
+guess wrong. However, it is possible when the referent manual itself
+is generated, it is possible to handle at least some mismatches.
+
+ <p>In the case where we assume the referent is split, but it is actually
+available in mono, the only recourse would be to generate a
+<span class="file">manual/</span> subdirectory full of HTML files which redirect back to
+the monolithic <span class="file">manual.html</span>. Since this is essentially the same
+as a split manual in the first place, it's not very appealing.
+
+ <p>On the other hand, in the case where we assume the referent is mono,
+but it is actually available in split, it is possible to use
+JavaScript to redirect from the putatively monolithic
+<span class="file">manual.html</span> to the different <span class="file">manual/node.html</span> files.
+Here's an example:
+
+<pre class="example"> function redirect() {
+ switch (location.hash) {
+ case "#Node1":
+ location.replace("manual/Node1.html#Node1"); break;
+ case "#Node2" :
+ location.replace("manual/Node2.html#Node2"); break;
+ ...
+ default:;
+ }
+ }
+</pre>
+ <p>Then, in the <code>&lt;body&gt;</code> tag of <span class="file">manual.html</span>:
+
+<pre class="example"> &lt;body onLoad="redirect();"&gt;
+</pre>
+ <p>Once again, this is something the software which generated the
+<em>referent</em> manual has to do in advance, it's not something the
+software generating the actual cross-reference in the present manual
+can control.
+
+ <p>Ultimately, we hope to allow for an external configuration file to
+control which manuals are available from where, and how.
+
+<div class="node">
+<p><hr>
+<a name="Command-List"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Tips">Tips</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Generating-HTML">Generating HTML</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="appendix">Appendix A @-Command List</h2>
+
+<p><a name="index-Alphabetical-_0040_0040_002dcommand-list-1229"></a><a name="index-List-of--_0040_0040_002dcommands-1230"></a><a name="index-_0040_0040_002dcommand-list-1231"></a><a name="index-Reference-to-_0040_0040_002dcommands-1232"></a>
+Here is an alphabetical list of the @-commands in Texinfo. Square
+brackets, <tt>[</tt>&nbsp;<!-- /@w --><tt>]</tt>, indicate optional arguments; an ellipsis,
+<span class="samp">...</span>, indicates repeated text.
+
+ <p>More specifics on the general syntax of different @-commands are
+given in the section below.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Command-Syntax">Command Syntax</a>: General syntax for varieties of @-commands.
+</ul>
+
+ <pre class="sp">
+
+</pre>
+ <dl>
+<dt><code>@</code><var>whitespace</var><dd>An <code>@</code> followed by a space, tab, or newline produces a normal,
+stretchable, interword space. See <a href="#Multiple-Spaces">Multiple Spaces</a>.
+
+ <br><dt><code>@!</code><dd>Generate an exclamation point that really does end a sentence (usually
+after an end-of-sentence capital letter). See <a href="#Ending-a-Sentence">Ending a Sentence</a>.
+
+ <br><dt><code>@"</code><dt><code>@'</code><dd>Generate an umlaut or acute accent, respectively, over the next
+character, as in &ouml; and &oacute;. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@*</code><dd>Force a line break. See <a href="#Line-Breaks">Line Breaks</a>.
+
+ <br><dt><code>@,{</code><var>c</var><code>}</code><dd>Generate a cedilla accent under <var>c</var>, as in &ccedil;. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@-</code><dd>Insert a discretionary hyphenation point. See <a href="#_002d-and-hyphenation">- and hyphenation</a>.
+
+ <br><dt><code>@.</code><dd>Produce a period that really does end a sentence (usually after an
+end-of-sentence capital letter). See <a href="#Ending-a-Sentence">Ending a Sentence</a>.
+
+ <br><dt><code>@/</code><dd>Produces no output, but allows a line break. See <a href="#Line-Breaks">Line Breaks</a>.
+
+ <br><dt><code>@:</code><dd>Indicate to TeX that an immediately preceding period, question
+mark, exclamation mark, or colon does not end a sentence. Prevent
+TeX from inserting extra whitespace as it does at the end of a
+sentence. The command has no effect on the Info file output.
+See <a href="#Not-Ending-a-Sentence">Not Ending a Sentence</a>.
+
+ <br><dt><code>@=</code><dd>Generate a macron (bar) accent over the next character, as in o&macr;.
+See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@?</code><dd>Generate a question mark that really does end a sentence (usually after
+an end-of-sentence capital letter). See <a href="#Ending-a-Sentence">Ending a Sentence</a>.
+
+ <br><dt><code>@@</code><dd>Stands for an at sign, <span class="samp">@</span>.
+See <a href="#Atsign-Braces-Comma">Inserting @ and {} and ,</a>.
+
+ <br><dt><code>@\</code><dd>Stands for a backslash (<span class="samp">\</span>) inside <code>@math</code>.
+See <a href="#math"><code>math</code></a>.
+
+ <br><dt><code>@^</code><dt><code>@`</code><dd>Generate a circumflex (hat) or grave accent, respectively, over the next
+character, as in &ocirc; and &egrave;.
+See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@{</code><dd>Stands for a left brace, <span class="samp">{</span>.
+See <a href="#Atsign-Braces-Comma">Inserting @ and {} and ,</a>.
+
+ <br><dt><code>@}</code><dd>Stands for a right-hand brace, <span class="samp">}</span>.<br>
+See <a href="#Atsign-Braces-Comma">Inserting @ and {} and ,</a>.
+
+ <br><dt><code>@~</code><dd>Generate a tilde accent over the next character, as in &Ntilde;.
+See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@AA{}</code><dt><code>@aa{}</code><dd>Generate the uppercase and lowercase Scandinavian A-ring letters,
+respectively: &Aring;, &aring;. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@acronym{</code><var>abbrev</var><code>}</code><dd>Tag <var>abbrev</var> as an acronym, that is, an abbreviation written in all
+capital letters, such as `NASA'. See <a href="#acronym"><code>acronym</code></a>.
+
+ <br><dt><code>@AE{}</code><dt><code>@ae{}</code><dd>Generate the uppercase and lowercase AE ligatures, respectively:
+&AElig;, &aelig;. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <dt><code>@afivepaper</code><dd>Change page dimensions for the A5 paper size. See <a href="#A4-Paper">A4 Paper</a>.
+
+ <br><dt><code>@afourlatex</code><dt><code>@afourpaper</code><dt><code>@afourwide</code><dd>Change page dimensions for the A4 paper size. See <a href="#A4-Paper">A4 Paper</a>.
+
+ <br><dt><code>@alias </code><var>new</var><code>=</code><var>existing</var><dd>Make the command <span class="samp">@</span><var>new</var> an alias for the existing command
+<span class="samp">@</span><var>existing</var>. See <a href="#alias">alias</a>.
+
+ <br><dt><code>@anchor{</code><var>name</var><code>}</code><dd>Define <var>name</var> as the current location for use as a cross-reference
+target. See <a href="#anchor"><code>@anchor</code></a>.
+
+ <br><dt><code>@appendix </code><var>title</var><dd>Begin an appendix. The title appears in the table
+of contents of a printed manual. In Info, the title is
+underlined with asterisks. See <a href="#unnumbered-_0026-appendix">The <code>@unnumbered</code> and <code>@appendix</code> Commands</a>.
+
+ <br><dt><code>@appendixsec </code><var>title</var><dt><code>@appendixsection </code><var>title</var><dd>Begin an appendix section within an appendix. The section title appears
+in the table of contents of a printed manual. In Info, the title is
+underlined with equal signs. <code>@appendixsection</code> is a longer
+spelling of the <code>@appendixsec</code> command. See <a href="#unnumberedsec-appendixsec-heading">Section Commands</a>.
+
+ <br><dt><code>@appendixsubsec </code><var>title</var><dd>Begin an appendix subsection within an appendix. The title appears
+in the table of contents of a printed manual. In Info, the title is
+underlined with hyphens. See <a href="#unnumberedsubsec-appendixsubsec-subheading">Subsection Commands</a>.
+
+ <br><dt><code>@appendixsubsubsec </code><var>title</var><dd>Begin an appendix subsubsection within an appendix subsection. The
+title appears in the table of contents of a printed manual. In Info,
+the title is underlined with periods. See <a href="#subsubsection">The `subsub' Commands</a>.
+
+ <br><dt><code>@asis</code><dd>Used following <code>@table</code>, <code>@ftable</code>, and <code>@vtable</code> to
+print the table's first column without highlighting (&ldquo;as is&rdquo;).
+See <a href="#Two_002dcolumn-Tables">Making a Two-column Table</a>.
+
+ <br><dt><code>@author </code><var>author</var><dd>Typeset <var>author</var> flushleft and underline it. See <a href="#title-subtitle-author">The <code>@title</code> and <code>@author</code> Commands</a>.
+
+ <br><dt><code>@b{</code><var>text</var><code>}</code><dd>Print <var>text</var> in <b>bold</b> font. No effect in Info. See <a href="#Fonts">Fonts</a>.
+
+ <br><dt><code>@bullet{}</code><dd>Generate a large round dot, or the closest possible
+thing to one. See <a href="#bullet"><code>@bullet</code></a>.
+
+ <br><dt><code>@bye</code><dd>Stop formatting a file. The formatters do not see the contents of a
+file following an <code>@bye</code> command. See <a href="#Ending-a-File">Ending a File</a>.
+
+ <br><dt><code>@c </code><var>comment</var><dd>Begin a comment in Texinfo. The rest of the line does not appear in
+either the Info file or the printed manual. A synonym for
+<code>@comment</code>. See <a href="#Comments">Comments</a>.
+
+ <br><dt><code>@caption</code><dd>Define the full caption for a <code>@float</code>. See <a href="#caption-shortcaption">caption shortcaption</a>.
+
+ <br><dt><code>@cartouche</code><dd>Highlight an example or quotation by drawing a box with rounded
+corners around it. Pair with <code>@end cartouche</code>. No effect in
+Info. See <a href="#cartouche">Drawing Cartouches Around Examples</a>.)
+
+ <br><dt><code>@center </code><var>line-of-text</var><dd>Center the line of text following the command.
+See <a href="#titlefont-center-sp"><code>@center</code></a>.
+
+ <br><dt><code>@centerchap </code><var>line-of-text</var><dd>Like <code>@chapter</code>, but centers the chapter title. See <a href="#chapter"><code>@chapter</code></a>.
+
+ <br><dt><code>@chapheading </code><var>title</var><dd>Print a chapter-like heading in the text, but not in the table of
+contents of a printed manual. In Info, the title is underlined with
+asterisks. See <a href="#majorheading-_0026-chapheading"><code>@majorheading</code> and <code>@chapheading</code></a>.
+
+ <br><dt><code>@chapter </code><var>title</var><dd>Begin a chapter. The chapter title appears in the table of
+contents of a printed manual. In Info, the title is underlined with
+asterisks. See <a href="#chapter"><code>@chapter</code></a>.
+
+ <br><dt><code>@cindex </code><var>entry</var><dd>Add <var>entry</var> to the index of concepts. See <a href="#Index-Entries">Defining the Entries of an Index</a>.
+
+ <br><dt><code>@cite{</code><var>reference</var><code>}</code><dd>Highlight the name of a book or other reference that lacks a
+companion Info file. See <a href="#cite"><code>@cite</code></a>.
+
+ <br><dt><code>@clear </code><var>flag</var><dd>Unset <var>flag</var>, preventing the Texinfo formatting commands from
+formatting text between subsequent pairs of <code>@ifset </code><var>flag</var>
+and <code>@end ifset</code> commands, and preventing
+<code>@value{</code><var>flag</var><code>}</code> from expanding to the value to which
+<var>flag</var> is set.
+See <a href="#set-clear-value"><code>@set</code> <code>@clear</code> <code>@value</code></a>.
+
+ <br><dt><code>@code{</code><var>sample-code</var><code>}</code><dd>Highlight text that is an expression, a syntactically complete token
+of a program, or a program name. See <a href="#code"><code>@code</code></a>.
+
+ <br><dt><code>@comma{}</code><dd>Insert a comma `,' character; only needed when a literal comma would
+be taken as an argument separator. See <a href="#Inserting-a-Comma">Inserting a Comma</a>.
+
+ <br><dt><code>@command{</code><var>command-name</var><code>}</code><dd>Indicate a command name, such as <span class="command">ls</span>.
+See <a href="#command"><code>@command</code></a>.
+
+ <br><dt><code>@comment </code><var>comment</var><dd>Begin a comment in Texinfo. The rest of the line does not appear in
+either the Info file or the printed manual. A synonym for <code>@c</code>.
+See <a href="#Comments">Comments</a>.
+
+ <br><dt><code>@contents</code><dd>Print a complete table of contents. Has no effect in Info, which uses
+menus instead. See <a href="#Contents">Generating a Table of Contents</a>.
+
+ <br><dt><code>@copyright{}</code><dd>Generate the copyright symbol &copy;. See <a href="#copyright-symbol"><code>@copyright{}</code></a>.
+
+ <br><dt><code>@defcodeindex </code><var>index-name</var><dd>Define a new index and its indexing command. Print entries in an
+<code>@code</code> font. See <a href="#New-Indices">Defining New Indices</a>.
+
+ <br><dt><code>@defcv </code><var>category</var> <var>class</var> <var>name</var><dt><code>@defcvx </code><var>category</var> <var>class</var> <var>name</var><dd>Format a description for a variable associated with a class in
+object-oriented programming. Takes three arguments: the category of
+thing being defined, the class to which it belongs, and its name.
+See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@deffn </code><var>category</var> <var>name</var> <var>arguments</var><code>...</code><dt><code>@deffnx </code><var>category</var> <var>name</var> <var>arguments</var><code>...</code><dd>Format a description for a function, interactive command, or similar
+entity that may take arguments. <code>@deffn</code> takes as arguments the
+category of entity being described, the name of this particular
+entity, and its arguments, if any. See <a href="#Definition-Commands">Definition Commands</a>.
+
+ <br><dt><code>@defindex </code><var>index-name</var><dd>Define a new index and its indexing command. Print entries in a roman
+font. See <a href="#New-Indices">Defining New Indices</a>.
+
+ <br><dt><code>@definfoenclose </code><var>newcmd</var><code>, </code><var>before</var><code>, </code><var>after</var><code>,</code><dd>Create new @-command <var>newcmd</var> for Info that marks text by enclosing
+it in strings that precede and follow the text. See <a href="#definfoenclose">definfoenclose</a>.
+
+ <br><dt><code>@defivar </code><var>class</var> <var>instance-variable-name</var><dt><code>@defivarx </code><var>class</var> <var>instance-variable-name</var><dd>This command formats a description for an instance variable in
+object-oriented programming. The command is equivalent to <span class="samp">@defcv
+{Instance Variable} ...</span>. See <a href="#Definition-Commands">Definition Commands</a>, and
+<a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@defmac </code><var>macroname</var> <var>arguments</var><code>...</code><dt><code>@defmacx </code><var>macroname</var> <var>arguments</var><code>...</code><dd>Format a description for a macro. The command is equivalent to
+<span class="samp">@deffn Macro ...</span>. See <a href="#Definition-Commands">Definition Commands</a>, and
+<a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@defmethod </code><var>class</var> <var>method-name</var> <var>arguments</var><code>...</code><dt><code>@defmethodx </code><var>class</var> <var>method-name</var> <var>arguments</var><code>...</code><dd>Format a description for a method in object-oriented programming. The
+command is equivalent to <span class="samp">@defop Method ...</span>. Takes as
+arguments the name of the class of the method, the name of the
+method, and its arguments, if any. See <a href="#Definition-Commands">Definition Commands</a>, and
+<a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@defop </code><var>category</var> <var>class</var> <var>name</var> <var>arguments</var><code>...</code><dt><code>@defopx </code><var>category</var> <var>class</var> <var>name</var> <var>arguments</var><code>...</code><dd>Format a description for an operation in object-oriented programming.
+<code>@defop</code> takes as arguments the overall name of the category of
+operation, the name of the class of the operation, the name of the
+operation, and its arguments, if any. See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#Abstract-Objects">Abstract Objects</a>.
+
+ <br><dt><code>@defopt </code><var>option-name</var><dt><code>@defoptx </code><var>option-name</var><dd>Format a description for a user option. The command is equivalent to
+<span class="samp">@defvr {User Option} ...</span>. See <a href="#Definition-Commands">Definition Commands</a>, and
+<a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@defspec </code><var>special-form-name</var> <var>arguments</var><code>...</code><dt><code>@defspecx </code><var>special-form-name</var> <var>arguments</var><code>...</code><dd>Format a description for a special form. The command is equivalent to
+<span class="samp">@deffn {Special Form} ...</span>. See <a href="#Definition-Commands">Definition Commands</a>,
+and <a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@deftp </code><var>category</var> <var>name-of-type</var> <var>attributes</var><code>...</code><dt><code>@deftpx </code><var>category</var> <var>name-of-type</var> <var>attributes</var><code>...</code><dd>Format a description for a data type. <code>@deftp</code> takes as arguments
+the category, the name of the type (which is a word like <span class="samp">int</span> or
+<span class="samp">float</span>), and then the names of attributes of objects of that type.
+See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#Data-Types">Data Types</a>.
+
+ <br><dt><code>@deftypecv </code><var>category</var> <var>class</var> <var>data-type</var> <var>name</var><dt><code>@deftypecvx </code><var>category</var> <var>class</var> <var>data-type</var> <var>name</var><dd>Format a description for a typed class variable in object-oriented programming.
+See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#Abstract-Objects">Abstract Objects</a>.
+
+ <br><dt><code>@deftypefn </code><var>classification</var> <var>data-type</var> <var>name</var> <var>arguments</var><code>...</code><dt><code>@deftypefnx </code><var>classification</var> <var>data-type</var> <var>name</var> <var>arguments</var><code>...</code><dd>Format a description for a function or similar entity that may take
+arguments and that is typed. <code>@deftypefn</code> takes as arguments the
+classification of entity being described, the type, the name of the
+entity, and its arguments, if any. See <a href="#Definition-Commands">Definition Commands</a>, and
+<a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@deftypefun </code><var>data-type</var> <var>function-name</var> <var>arguments</var><code>...</code><dt><code>@deftypefunx </code><var>data-type</var> <var>function-name</var> <var>arguments</var><code>...</code><dd>Format a description for a function in a typed language.
+The command is equivalent to <span class="samp">@deftypefn Function ...</span>.
+See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@deftypeivar </code><var>class</var> <var>data-type</var> <var>variable-name</var><dt><code>@deftypeivarx </code><var>class</var> <var>data-type</var> <var>variable-name</var><dd>Format a description for a typed instance variable in object-oriented
+programming. See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#Abstract-Objects">Abstract Objects</a>.
+
+ <br><dt><code>@deftypemethod </code><var>class</var> <var>data-type</var> <var>method-name</var> <var>arguments</var><code>...</code><dt><code>@deftypemethodx </code><var>class</var> <var>data-type</var> <var>method-name</var> <var>arguments</var><code>...</code><dd>Format a description for a typed method in object-oriented programming.
+See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@deftypeop </code><var>category</var> <var>class</var> <var>data-type</var> <var>name</var> <var>arguments</var><code>...</code><dt><code>@deftypeopx </code><var>category</var> <var>class</var> <var>data-type</var> <var>name</var> <var>arguments</var><code>...</code><dd>Format a description for a typed operation in object-oriented programming.
+See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#Abstract-Objects">Abstract Objects</a>.
+
+ <br><dt><code>@deftypevar </code><var>data-type</var> <var>variable-name</var><dt><code>@deftypevarx </code><var>data-type</var> <var>variable-name</var><dd>Format a description for a variable in a typed language. The command is
+equivalent to <span class="samp">@deftypevr Variable ...</span>. See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@deftypevr </code><var>classification</var> <var>data-type</var> <var>name</var><dt><code>@deftypevrx </code><var>classification</var> <var>data-type</var> <var>name</var><dd>Format a description for something like a variable in a typed
+language&mdash;an entity that records a value. Takes as arguments the
+classification of entity being described, the type, and the name of the
+entity. See <a href="#Definition-Commands">Definition Commands</a>, and <a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@defun </code><var>function-name</var> <var>arguments</var><code>...</code><dt><code>@defunx </code><var>function-name</var> <var>arguments</var><code>...</code><dd>Format a description for functions. The command is equivalent to
+<span class="samp">@deffn Function ...</span>. See <a href="#Definition-Commands">Definition Commands</a>, and
+<a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@defvar </code><var>variable-name</var><dt><code>@defvarx </code><var>variable-name</var><dd>Format a description for variables. The command is equivalent to
+<span class="samp">@defvr Variable ...</span>. See <a href="#Definition-Commands">Definition Commands</a>, and
+<a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@defvr </code><var>category</var> <var>name</var><dt><code>@defvrx </code><var>category</var> <var>name</var><dd>Format a description for any kind of variable. <code>@defvr</code> takes
+as arguments the category of the entity and the name of the entity.
+See <a href="#Definition-Commands">Definition Commands</a>,
+and <a href="#deffnx">Def Cmds in Detail</a>.
+
+ <br><dt><code>@detailmenu</code><dd>Avoid <code>makeinfo</code> confusion stemming from the detailed node listing
+in a master menu. See <a href="#Master-Menu-Parts">Master Menu Parts</a>.
+
+ <br><dt><code>@dfn{</code><var>term</var><code>}</code><dd>Highlight the introductory or defining use of a term.
+See <a href="#dfn"><code>@dfn</code></a>.
+
+ <br><dt><code>@dircategory </code><var>dirpart</var><dd>Specify a part of the Info directory menu where this file's entry should
+go. See <a href="#Installing-Dir-Entries">Installing Dir Entries</a>.
+
+ <br><dt><code>@direntry</code><dd>Begin the Info directory menu entry for this file. Pair with
+<code>@end direntry</code>. See <a href="#Installing-Dir-Entries">Installing Dir Entries</a>.
+
+ <br><dt><code>@display</code><dd>Begin a kind of example. Like <code>@example</code> (indent text, do not
+fill), but do not select a new font. Pair with <code>@end display</code>.
+See <a href="#display"><code>@display</code></a>.
+
+ <br><dt><code>@dmn{</code><var>dimension</var><code>}</code><dd>Format a unit of measure, as in 12<span class="dmn">pt</span>. Causes TeX to insert a
+thin space before <var>dimension</var>. No effect in Info.
+See <a href="#dmn"><code>@dmn</code></a>.
+
+ <br><dt><code>@docbook</code><dd>Enter Docbook completely. Pair with <code>@end docbook</code>. See <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a>.
+
+ <br><dt><code>@documentdescription</code><dd>Set the document description text, included in the HTML output. Pair
+with <code>@end documentdescription</code>. See <a href="#documentdescription"><code>@documentdescription</code></a>.
+
+ <br><dt><code>@documentencoding </code><var>enc</var><dd>Declare the input encoding to be <var>enc</var>.
+See <a href="#documentencoding"><code>@documentencoding</code></a>.
+
+ <br><dt><code>@documentlanguage </code><var>CC</var><dd>Declare the document language as the two-character ISO-639 abbreviation
+<var>CC</var>. See <a href="#documentlanguage"><code>@documentlanguage</code></a>.
+
+ <br><dt><code>@dotaccent{</code><var>c</var><code>}</code><dd>Generate a dot accent over the character <var>c</var>, as in o..
+See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@dots{}</code><dd>Insert an ellipsis: <span class="samp">...</span>.
+See <a href="#dots"><code>@dots</code></a>.
+
+ <br><dt><code>@email{</code><var>address</var><code>[, </code><var>displayed-text</var><code>]}</code><dd>Indicate an electronic mail address.
+See <a href="#email"><code>@email</code></a>.
+
+ <br><dt><code>@emph{</code><var>text</var><code>}</code><dd>Highlight <var>text</var>; text is displayed in <em>italics</em> in printed
+output, and surrounded by asterisks in Info. See <a href="#Emphasis">Emphasizing Text</a>.
+
+ <br><dt><code>@end </code><var>environment</var><dd>Ends <var>environment</var>, as in <span class="samp">@end example</span>. See <a href="#Formatting-Commands">@-commands</a>.
+
+ <br><dt><code>@env{</code><var>environment-variable</var><code>}</code><dd>Indicate an environment variable name, such as <span class="env">PATH</span>.
+See <a href="#env"><code>@env</code></a>.
+
+ <br><dt><code>@enddots{}</code><dd>Generate an end-of-sentence of ellipsis, like this <small class="enddots">....</small>
+See <a href="#dots"><code>@dots{}</code></a>.
+
+ <br><dt><code>@enumerate [</code><var>number-or-letter</var><code>]</code><dd>Begin a numbered list, using <code>@item</code> for each entry.
+Optionally, start list with <var>number-or-letter</var>. Pair with
+<code>@end enumerate</code>. See <a href="#enumerate"><code>@enumerate</code></a>.
+
+ <br><dt><code>@equiv{}</code><dd>Indicate to the reader the exact equivalence of two forms with a
+glyph: <span class="samp">==</span>. See <a href="#Equivalence">Equivalence</a>.
+
+ <br><dt><code>@error{}</code><dd>Indicate to the reader with a glyph that the following text is
+an error message: <span class="samp">error--&gt;</span>. See <a href="#Error-Glyph">Error Glyph</a>.
+
+ <br><dt><code>@evenfooting [</code><var>left</var><code>] @| [</code><var>center</var><code>] @| [</code><var>right</var><code>]</code><dt><code>@evenheading [</code><var>left</var><code>] @| [</code><var>center</var><code>] @| [</code><var>right</var><code>]</code><dd>Specify page footings resp. headings for even-numbered (left-hand)
+pages. See <a href="#Custom-Headings">How to Make Your Own Headings</a>.
+
+ <br><dt><code>@everyfooting [</code><var>left</var><code>] @| [</code><var>center</var><code>] @| [</code><var>right</var><code>]</code><dt><code>@everyheading [</code><var>left</var><code>] @| [</code><var>center</var><code>] @| [</code><var>right</var><code>]</code><dd>Specify page footings resp. headings for every page. Not relevant to
+Info. See <a href="#Custom-Headings">How to Make Your Own Headings</a>.
+
+ <br><dt><code>@example</code><dd>Begin an example. Indent text, do not fill, and select fixed-width font.
+Pair with <code>@end example</code>. See <a href="#example"><code>@example</code></a>.
+
+ <br><dt><code>@exampleindent </code><var>indent</var><dd>Indent example-like environments by <var>indent</var> number of spaces
+(perhaps 0). See <a href="#exampleindent">Paragraph Indenting</a>.
+
+ <br><dt><code>@exclamdown{}</code><dd>Produce an upside-down exclamation point. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@exdent </code><var>line-of-text</var><dd>Remove any indentation a line might have. See <a href="#exdent">Undoing the Indentation of a Line</a>.
+
+ <br><dt><code>@expansion{}</code><dd>Indicate the result of a macro expansion to the reader with a special
+glyph: <span class="samp">==&gt;</span>.
+See <a href="#expansion">==&gt; Indicating an Expansion</a>.
+
+ <br><dt><code>@file{</code><var>filename</var><code>}</code><dd>Highlight the name of a file, buffer, node, or directory. See <a href="#file"><code>@file</code></a>.
+
+ <br><dt><code>@finalout</code><dd>Prevent TeX from printing large black warning rectangles beside
+over-wide lines. See <a href="#Overfull-hboxes">Overfull hboxes</a>.
+
+ <br><dt><code>@findex </code><var>entry</var><dd>Add <var>entry</var> to the index of functions. See <a href="#Index-Entries">Defining the Entries of an Index</a>.
+
+ <br><dt><code>@float</code><dd>Environment to define floating material. Pair with <code>@end float</code>.
+See <a href="#Floats">Floats</a>.
+
+ <br><dt><code>@flushleft</code><dt><code>@flushright</code><dd>Left justify every line but leave the right end ragged.
+Leave font as is. Pair with <code>@end flushleft</code>.
+<code>@flushright</code> analogous.
+See <a href="#flushleft-_0026-flushright"><code>@flushleft</code> and <code>@flushright</code></a>.
+
+ <br><dt><code>@footnote{</code><var>text-of-footnote</var><code>}</code><dd>Enter a footnote. Footnote text is printed at the bottom of the page
+by TeX; Info may format in either `End' node or `Separate' node style.
+See <a href="#Footnotes">Footnotes</a>.
+
+ <br><dt><code>@footnotestyle </code><var>style</var><dd>Specify an Info file's footnote style, either <span class="samp">end</span> for the end
+node style or <span class="samp">separate</span> for the separate node style.
+See <a href="#Footnotes">Footnotes</a>.
+
+ <br><dt><code>@format</code><dd>Begin a kind of example. Like <code>@display</code>, but do not narrow the
+margins. Pair with <code>@end format</code>. See <a href="#example"><code>@example</code></a>.
+
+ <br><dt><code>@ftable </code><var>formatting-command</var><dd>Begin a two-column table, using <code>@item</code> for each entry.
+Automatically enter each of the items in the first column into the
+index of functions. Pair with <code>@end ftable</code>. The same as
+<code>@table</code>, except for indexing. See <a href="#ftable-vtable"><code>@ftable</code> and <code>@vtable</code></a>.
+
+ <br><dt><code>@group</code><dd>Hold text together that must appear on one printed page. Pair with
+<code>@end group</code>. Not relevant to Info. See <a href="#group"><code>@group</code></a>.
+
+ <br><dt><code>@H{</code><var>c</var><code>}</code><dd>Generate the long Hungarian umlaut accent over <var>c</var>, as in o''.
+
+ <br><dt><code>@heading </code><var>title</var><dd>Print an unnumbered section-like heading in the text, but not in the
+table of contents of a printed manual. In Info, the title is
+underlined with equal signs. See <a href="#unnumberedsec-appendixsec-heading">Section Commands</a>.
+
+ <br><dt><code>@headings </code><var>on-off-single-double</var><dd>Turn page headings on or off, and/or specify single-sided or double-sided
+page headings for printing. See <a href="#headings-on-off">The <code>@headings</code> Command</a>.
+
+ <br><dt><code>@html</code><dd>Enter HTML completely. Pair with <code>@end html</code>. See <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a>.
+
+ <br><dt><code>@hyphenation{</code><var>hy-phen-a-ted words</var><code>}</code><dd>Explicitly define hyphenation points. See <a href="#_002d-and-hyphenation"><code>@-</code> and <code>@hyphenation</code></a>.
+
+ <br><dt><code>@i{</code><var>text</var><code>}</code><dd>Print <var>text</var> in <i>italic</i> font. No effect in Info. See <a href="#Fonts">Fonts</a>.
+
+ <br><dt><code>@ifclear </code><var>flag</var><dd>If <var>flag</var> is cleared, the Texinfo formatting commands format text
+between <code>@ifclear </code><var>flag</var> and the following <code>@end
+ifclear</code> command.
+See <a href="#set-clear-value"><code>@set</code> <code>@clear</code> <code>@value</code></a>.
+
+ <br><dt><code>@ifdocbook</code><dt><code>@ifhtml</code><dt><code>@ifinfo</code><dd>Begin text that will appear only in the given output format.
+<code>@ifinfo</code> output appears in both Info and (for historical
+compatibility) plain text output. Pair with <code>@end ifdocbook</code>
+resp. <code>@end ifhtml</code> resp. <code>@end ifinfo</code>.
+See <a href="#Conditionals">Conditionals</a>.
+
+ <br><dt><code>@ifnotdocbook</code><dt><code>@ifnothtml</code><dt><code>@ifnotinfo</code><dt><code>@ifnotplaintext</code><dt><code>@ifnottex</code><dt><code>@ifnotxml</code><dd>Begin a stretch of text that will be ignored in one output format but
+not the others. The text appears in the formats not specified:
+<code>@ifnothtml</code> text is omitted from html output, etc. The exception
+is <code>@ifnotinfo</code> text, which is omitted from plain text output as
+well as Info output. Pair with the corresponding <code>@end
+ifnot</code><var>format</var>. See <a href="#Conditionals">Conditionals</a>.
+
+ <br><dt><code>@ifplaintext</code><dd>Begin text that will appear only in the plain text output.
+Pair with <code>@end ifplaintext</code>. See <a href="#Conditionals">Conditionals</a>.
+
+ <br><dt><code>@ifset </code><var>flag</var><dd>If <var>flag</var> is set, the Texinfo formatting commands format text
+between <code>@ifset </code><var>flag</var> and the following <code>@end ifset</code>
+command.
+See <a href="#set-clear-value"><code>@set</code> <code>@clear</code> <code>@value</code></a>.
+
+ <br><dt><code>@iftex</code><dd>Begin text that will not appear in the Info file or other output, but
+will be processed only by TeX. Pair with <code>@end iftex</code>.
+See <a href="#Conditionals">Conditionally Visible Text</a>.
+
+ <br><dt><code>@ifxml</code><dd>Begin text that will appear only in the XML output. Pair with
+<code>@end ifxml</code>. See <a href="#Conditionals">Conditionals</a>.
+
+ <br><dt><code>@ignore</code><dd>Begin text that will not appear in any output. Pair with <code>@end
+ignore</code>. See <a href="#Comments">Comments and Ignored Text</a>.
+
+ <br><dt><code>@image{</code><var>filename</var><code>, [</code><var>width</var><code>], [</code><var>height</var><code>], [</code><var>alt</var><code>], [</code><var>ext</var><code>]}</code><dd>Include graphics image in external <var>filename</var> scaled to the given
+<var>width</var> and/or <var>height</var>, using <var>alt</var> text and looking for
+<var>filename</var><span class="samp">.</span><var>ext</var> in HTML. See <a href="#Images">Images</a>.
+
+ <br><dt><code>@include </code><var>filename</var><dd>Incorporate the contents of the file <var>filename</var> into the Info file
+or printed document. See <a href="#Include-Files">Include Files</a>.
+
+ <br><dt><code>@indicateurl{</code><var>indicateurl</var><code>}</code><dd>Indicate text that is a uniform resource locator for the World Wide
+Web. See <a href="#indicateurl"><code>@indicateurl</code></a>.
+
+ <br><dt><code>@inforef{</code><var>node-name</var><code>, [</code><var>entry-name</var><code>], </code><var>info-file-name</var><code>}</code><dd>Make a cross reference to an Info file for which there is no printed
+manual. See <a href="#inforef">Cross references using <code>@inforef</code></a>.
+
+ <br><dt><code>\input </code><var>macro-definitions-file</var><dd>Use the specified macro definitions file. This command is used only
+in the first line of a Texinfo file to cause TeX to make use of the
+<span class="file">texinfo</span> macro definitions file. The backslash in <code>\input</code>
+is used instead of an <code>@</code> because TeX does not
+recognize <code>@</code> until after it has read the definitions file.
+See <a href="#Texinfo-File-Header">Texinfo File Header</a>.
+
+ <br><dt><code>@item</code><dd>Indicate the beginning of a marked paragraph for <code>@itemize</code> and
+<code>@enumerate</code>; indicate the beginning of the text of a first column
+entry for <code>@table</code>, <code>@ftable</code>, and <code>@vtable</code>.
+See <a href="#Lists-and-Tables">Lists and Tables</a>.
+
+ <br><dt><code>@itemize </code><var>mark-generating-character-or-command</var><dd>Produce a sequence of indented paragraphs, with a mark inside the left
+margin at the beginning of each paragraph. Pair with <code>@end
+itemize</code>. See <a href="#itemize"><code>@itemize</code></a>.
+
+ <br><dt><code>@itemx</code><dd>Like <code>@item</code> but do not generate extra vertical space above the
+item text. See <a href="#itemx"><code>@itemx</code></a>.
+
+ <br><dt><code>@kbd{</code><var>keyboard-characters</var><code>}</code><dd>Indicate text that is characters of input to be typed by
+users. See <a href="#kbd"><code>@kbd</code></a>.
+
+ <br><dt><code>@kbdinputstyle </code><var>style</var><dd>Specify when <code>@kbd</code> should use a font distinct from <code>@code</code>.
+See <a href="#kbd"><code>@kbd</code></a>.
+
+ <br><dt><code>@key{</code><var>key-name</var><code>}</code><dd>Indicate a name for a key on a keyboard.
+See <a href="#key"><code>@key</code></a>.
+
+ <br><dt><code>@kindex </code><var>entry</var><dd>Add <var>entry</var> to the index of keys.
+See <a href="#Index-Entries">Defining the Entries of an Index</a>.
+
+ <br><dt><code>@L{}</code><dt><code>@l{}</code><dd>Generate the uppercase and lowercase Polish suppressed-L letters,
+respectively: /L, /l.
+
+ <br><dt><code>@LaTeX{}</code><dd>Insert the logo LaTeX. See <a href="#tex">TeX and LaTeX</a>.
+
+ <br><dt><code>@lisp</code><dd>Begin an example of Lisp code. Indent text, do not fill, and select
+fixed-width font. Pair with <code>@end lisp</code>. See <a href="#lisp"><code>@lisp</code></a>.
+
+ <br><dt><code>@listoffloats</code><dd>Produce a table-of-contents-like listing of <code>@float</code>s.
+See <a href="#listoffloats">listoffloats</a>.
+
+ <br><dt><code>@lowersections</code><dd>Change subsequent chapters to sections, sections to subsections, and so
+on. See <a href="#Raise_002flower-sections"><code>@raisesections</code> and <code>@lowersections</code></a>.
+
+ <br><dt><code>@macro </code><var>macroname</var><code> {</code><var>params</var><code>}</code><dd>Define a new Texinfo command <code>@</code><var>macroname</var><code>{</code><var>params</var><code>}</code>.
+Only supported by <code>makeinfo</code> and <code>texi2dvi</code>. See <a href="#Defining-Macros">Defining Macros</a>.
+
+ <br><dt><code>@majorheading </code><var>title</var><dd>Print a chapter-like heading in the text, but not in the table of
+contents of a printed manual. Generate more vertical whitespace before
+the heading than the <code>@chapheading</code> command. See <a href="#majorheading-_0026-chapheading"><code>@majorheading</code> and <code>@chapheading</code></a>.
+
+ <br><dt><code>@math{</code><var>mathematical-expression</var><code>}</code><dd>Format a mathematical expression.
+See <a href="#math"><code>@math</code>: Inserting Mathematical Expressions</a>.
+
+ <br><dt><code>@menu</code><dd>Mark the beginning of a menu of nodes in Info. No effect in a printed
+manual. Pair with <code>@end menu</code>. See <a href="#Menus">Menus</a>.
+
+ <br><dt><code>@minus{}</code><dd>Generate a minus sign, `&minus;'. See <a href="#minus"><code>@minus</code></a>.
+
+ <br><dt><code>@multitable </code><var>column-width-spec</var><dd>Begin a multi-column table. Pair with <code>@end multitable</code>.
+See <a href="#Multitable-Column-Widths">Multitable Column Widths</a>.
+
+ <br><dt><code>@need </code><var>n</var><dd>Start a new page in a printed manual if fewer than <var>n</var> mils
+(thousandths of an inch) remain on the current page. See <a href="#need"><code>@need</code></a>.
+
+ <br><dt><code>@node </code><var>name</var><code>, </code><var>next</var><code>, </code><var>previous</var><code>, </code><var>up</var><dd>Define the beginning of a new node in Info, and serve as a locator for
+references for TeX. See <a href="#node"><code>@node</code></a>.
+
+ <br><dt><code>@noindent</code><dd>Prevent text from being indented as if it were a new paragraph.
+See <a href="#noindent"><code>@noindent</code></a>.
+
+ <br><dt><code>@novalidate</code><dd>Suppress validation of node references, omit creation of auxiliary files
+with TeX. Use before <code>@setfilename</code>. See <a href="#Pointer-Validation">Pointer Validation</a>.
+
+ <br><dt><code>@O{}</code><dt><code>@o{}</code><dd>Generate the uppercase and lowercase O-with-slash letters, respectively:
+&Oslash;, &oslash;.
+
+ <br><dt><code>@oddfooting [</code><var>left</var><code>] @| [</code><var>center</var><code>] @| [</code><var>right</var><code>]</code><dt><code>@oddheading [</code><var>left</var><code>] @| [</code><var>center</var><code>] @| [</code><var>right</var><code>]</code><dd>Specify page footings resp. headings for odd-numbered (right-hand)
+pages. See <a href="#Custom-Headings">How to Make Your Own Headings</a>.
+
+ <br><dt><code>@OE{}</code><dt><code>@oe{}</code><dd>Generate the uppercase and lowercase OE ligatures, respectively:
+&OElig;, &oelig;. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@option{</code><var>option-name</var><code>}</code><dd>Indicate a command-line option, such as <span class="option">-l</span> or <span class="option">--help</span>.
+See <a href="#option"><code>@option</code></a>.
+
+ <br><dt><code>@page</code><dd>Start a new page in a printed manual. No effect in Info.
+See <a href="#page"><code>@page</code></a>.
+
+ <br><dt><code>@pagesizes [</code><var>width</var><code>][, </code><var>height</var><code>]</code><dd>Change page dimensions. See <a href="#pagesizes">pagesizes</a>.
+
+ <br><dt><code>@paragraphindent </code><var>indent</var><dd>Indent paragraphs by <var>indent</var> number of spaces (perhaps 0); preserve
+source file indentation if <var>indent</var> is <code>asis</code>.
+See <a href="#paragraphindent">Paragraph Indenting</a>.
+
+ <br><dt><code>@pindex </code><var>entry</var><dd>Add <var>entry</var> to the index of programs. See <a href="#Index-Entries">Defining the Entries of an Index</a>.
+
+ <br><dt><code>@point{}</code><dd>Indicate the position of point in a buffer to the reader with a
+glyph: <span class="samp">-!-</span>. See <a href="#Point-Glyph">Indicating Point in a Buffer</a>.
+
+ <br><dt><code>@pounds{}</code><dd>Generate the pounds sterling currency sign.
+See <a href="#pounds"><code>@pounds{}</code></a>.
+
+ <br><dt><code>@print{}</code><dd>Indicate printed output to the reader with a glyph:
+<span class="samp">-|</span>. See <a href="#Print-Glyph">Print Glyph</a>.
+
+ <br><dt><code>@printindex </code><var>index-name</var><dd>Print an alphabetized two-column index in a printed manual or generate
+an alphabetized menu of index entries for Info. See <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a>.
+
+ <br><dt><code>@pxref{</code><var>node-name</var><code>, [</code><var>entry</var><code>], [</code><var>topic-or-title</var><code>], [</code><var>info-file</var><code>], [</code><var>manual</var><code>]}</code><dd>Make a reference that starts with a lower case `see' in a printed
+manual. Use within parentheses only. Do not follow command with a
+punctuation mark&mdash;the Info formatting commands automatically insert
+terminating punctuation as needed. Only the first argument is mandatory.
+See <a href="#pxref"><code>@pxref</code></a>.
+
+ <br><dt><code>@questiondown{}</code><dd>Generate an upside-down question mark. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@quotation</code><dd>Narrow the margins to indicate text that is quoted from another real
+or imaginary work. Takes optional argument of prefix text. Pair with
+<code>@end quotation</code>. See <a href="#quotation"><code>@quotation</code></a>.
+
+ <br><dt><code>@r{</code><var>text</var><code>}</code><dd>Print <var>text</var> in <span class="roman">roman</span> font. No effect in Info.
+See <a href="#Fonts">Fonts</a>.
+
+ <br><dt><code>@raisesections</code><dd>Change subsequent sections to chapters, subsections to sections, and so
+on. See <a href="#Raise_002flower-sections"><code>@raisesections</code> and <code>@lowersections</code></a>.
+
+ <br><dt><code>@ref{</code><var>node-name</var><code>, [</code><var>entry</var><code>], [</code><var>topic-or-title</var><code>], [</code><var>info-file</var><code>], [</code><var>manual</var><code>]}</code><dd>Make a reference. In a printed manual, the reference does not start
+with a `See'. Follow command with a punctuation mark. Only the first
+argument is mandatory. See <a href="#ref"><code>@ref</code></a>.
+
+ <br><dt><code>@refill</code><dd>This command used to refill and indent the paragraph after all the
+other processing has been done. It is no longer needed, since all
+formatters now automatically refill as needed, but you may still see
+it in the source to some manuals, as it does no harm.
+
+ <br><dt><code>@registeredsymbol{}</code><dd>Generate the legal symbol &reg;. See <a href="#registered-symbol"><code>@registeredsymbol{}</code></a>.
+
+ <br><dt><code>@result{}</code><dd>Indicate the result of an expression to the reader with a special
+glyph: <span class="samp">=&gt;</span>. See <a href="#result"><code>@result</code></a>.
+
+ <br><dt><code>@ringaccent{</code><var>c</var><code>}</code><dd>Generate a ring accent over the next character, as in o*.
+See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@samp{</code><var>text</var><code>}</code><dd>Highlight <var>text</var> that is a literal example of a sequence of
+characters. Used for single characters, for statements, and often for
+entire shell commands. See <a href="#samp"><code>@samp</code></a>.
+
+ <br><dt><code>@sc{</code><var>text</var><code>}</code><dd>Set <var>text</var> in a printed output in <span class="sc">the small caps font</span> and
+set text in the Info file in uppercase letters.
+See <a href="#Smallcaps">Smallcaps</a>.
+
+ <br><dt><code>@section </code><var>title</var><dd>Begin a section within a chapter. In a printed manual, the section
+title is numbered and appears in the table of contents. In Info, the
+title is underlined with equal signs. See <a href="#section"><code>@section</code></a>.
+
+ <br><dt><code>@set </code><var>flag</var><code> [</code><var>string</var><code>]</code><dd>Make <var>flag</var> active, causing the Texinfo formatting commands to
+format text between subsequent pairs of <code>@ifset </code><var>flag</var> and
+<code>@end ifset</code> commands. Optionally, set value of <var>flag</var> to
+<var>string</var>.
+See <a href="#set-clear-value"><code>@set</code> <code>@clear</code> <code>@value</code></a>.
+
+ <br><dt><code>@setchapternewpage </code><var>on-off-odd</var><dd>Specify whether chapters start on new pages, and if so, whether on
+odd-numbered (right-hand) new pages. See <a href="#setchapternewpage"><code>@setchapternewpage</code></a>.
+
+ <br><dt><code>@setcontentsaftertitlepage</code><dd>Put the table of contents after the <span class="samp">@end titlepage</span> even if the
+<code>@contents</code> command is not there. See <a href="#Contents">Contents</a>.
+
+ <br><dt><code>@setfilename </code><var>info-file-name</var><dd>Provide a name to be used by the Info file. This command is essential
+for TeX formatting as well, even though it produces no output.
+See <a href="#setfilename"><code>@setfilename</code></a>.
+
+ <br><dt><code>@setshortcontentsaftertitlepage</code><dd>Place the short table of contents after the <span class="samp">@end titlepage</span>
+command even if the <code>@shortcontents</code> command is not there.
+See <a href="#Contents">Contents</a>.
+
+ <br><dt><code>@settitle </code><var>title</var><dd>Provide a title for page headers in a printed manual, and the default
+document description for HTML <span class="samp">&lt;head&gt;</span>.
+See <a href="#settitle"><code>@settitle</code></a>.
+
+ <br><dt><code>@shortcaption</code><dd>Define the short caption for a <code>@float</code>. See <a href="#caption-shortcaption">caption shortcaption</a>.
+
+ <br><dt><code>@shortcontents</code><dd>Print a short table of contents. Not relevant to Info, which uses
+menus rather than tables of contents. A synonym for
+<code>@summarycontents</code>. See <a href="#Contents">Generating a Table of Contents</a>.
+
+ <br><dt><code>@shorttitlepage </code><var>title</var><dd>Generate a minimal title page. See <a href="#titlepage"><code>@titlepage</code></a>.
+
+ <br><dt><code>@smallbook</code><dd>Cause TeX to produce a printed manual in a 7 by 9.25 inch format
+rather than the regular 8.5 by 11 inch format. See <a href="#smallbook">Printing Small Books</a>. Also, see <a href="#small">small</a>.
+
+ <br><dt><code>@smalldisplay</code><dd>Begin a kind of example. Like <code>@smallexample</code> (narrow margins, no
+filling), but do not select the fixed-width font. Pair with <code>@end
+smalldisplay</code>. See <a href="#small">small</a>.
+
+ <br><dt><code>@smallexample</code><dd>Indent text to indicate an example. Do not fill, select fixed-width
+font, narrow the margins. In printed manuals, print text in a smaller
+font than with <code>@example</code>. Pair with <code>@end smallexample</code>.
+See <a href="#small">small</a>.
+
+ <br><dt><code>@smallformat</code><dd>Begin a kind of example. Like <code>@smalldisplay</code>, but do not narrow
+the margins. Pair with <code>@end smallformat</code>. See <a href="#small">small</a>.
+
+ <br><dt><code>@smalllisp</code><dd>Begin an example of Lisp code. Same as <code>@smallexample</code>. Pair
+with <code>@end smalllisp</code>. See <a href="#small">small</a>.
+
+ <br><dt><code>@sp </code><var>n</var><dd>Skip <var>n</var> blank lines. See <a href="#sp"><code>@sp</code></a>.
+
+ <br><dt><code>@ss{}</code><dd>Generate the German sharp-S es-zet letter, &szlig;. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@strong {</code><var>text</var><code>}</code><dd>Emphasize <var>text</var> by typesetting it in a <strong>bold</strong> font for the
+printed manual and by surrounding it with asterisks for Info.
+See <a href="#emph-_0026-strong">Emphasizing Text</a>.
+
+ <br><dt><code>@subheading </code><var>title</var><dd>Print an unnumbered subsection-like heading in the text, but not in
+the table of contents of a printed manual. In Info, the title is
+underlined with hyphens. See <a href="#unnumberedsubsec-appendixsubsec-subheading"><code>@unnumberedsubsec</code> <code>@appendixsubsec</code> <code>@subheading</code></a>.
+
+ <br><dt><code>@subsection </code><var>title</var><dd>Begin a subsection within a section. In a printed manual, the
+subsection title is numbered and appears in the table of contents. In
+Info, the title is underlined with hyphens. See <a href="#subsection"><code>@subsection</code></a>.
+
+ <br><dt><code>@subsubheading </code><var>title</var><dd>Print an unnumbered subsubsection-like heading in the text, but not in
+the table of contents of a printed manual. In Info, the title is
+underlined with periods. See <a href="#subsubsection">The `subsub' Commands</a>.
+
+ <br><dt><code>@subsubsection </code><var>title</var><dd>Begin a subsubsection within a subsection. In a printed manual,
+the subsubsection title is numbered and appears in the table of
+contents. In Info, the title is underlined with periods.
+See <a href="#subsubsection">The `subsub' Commands</a>.
+
+ <br><dt><code>@subtitle </code><var>title</var><dd>In a printed manual, set a subtitle in a normal sized font flush to
+the right-hand side of the page. Not relevant to Info, which does not
+have title pages. See <a href="#title-subtitle-author"><code>@title</code> <code>@subtitle</code> and <code>@author</code> Commands</a>.
+
+ <br><dt><code>@summarycontents</code><dd>Print a short table of contents. Not relevant to Info, which uses
+menus rather than tables of contents. A synonym for
+<code>@shortcontents</code>. See <a href="#Contents">Generating a Table of Contents</a>.
+
+ <br><dt><code>@syncodeindex </code><var>from-index</var> <var>into-index</var><dd>Merge the index named in the first argument into the index named in
+the second argument, printing the entries from the first index in
+<code>@code</code> font. See <a href="#Combining-Indices">Combining Indices</a>.
+
+ <br><dt><code>@synindex </code><var>from-index</var> <var>into-index</var><dd>Merge the index named in the first argument into the index named in
+the second argument. Do not change the font of <var>from-index</var>
+entries. See <a href="#Combining-Indices">Combining Indices</a>.
+
+ <br><dt><code>@t{</code><var>text</var><code>}</code><dd>Print <var>text</var> in a <tt>fixed-width</tt>, typewriter-like font.
+No effect in Info. See <a href="#Fonts">Fonts</a>.
+
+ <br><dt><code>@tab</code><dd>Separate columns in a multitable. See <a href="#Multitable-Rows">Multitable Rows</a>.
+
+ <br><dt><code>@table </code><var>formatting-command</var><dd>Begin a two-column table, using <code>@item</code> for each entry. Write
+each first column entry on the same line as <code>@item</code>. First
+column entries are printed in the font resulting from
+<var>formatting-command</var>. Pair with <code>@end table</code>.
+See <a href="#Two_002dcolumn-Tables">Making a Two-column Table</a>.
+Also see <a href="#ftable-vtable"><code>@ftable</code> and <code>@vtable</code></a>,
+and <a href="#itemx"><code>@itemx</code></a>.
+
+ <br><dt><code>@TeX{}</code><dd>Insert the logo TeX. See <a href="#tex">TeX and LaTeX</a>.
+
+ <br><dt><code>@tex</code><dd>Enter TeX completely. Pair with <code>@end tex</code>. See <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a>.
+
+ <br><dt><code>@thischapter</code><dt><code>@thischaptername</code><dt><code>@thisfile</code><dt><code>@thispage</code><dt><code>@thistitle</code><dd>Only allowed in a heading or footing. Stands for the number and name of
+the current chapter (in the format `Chapter 1: Title'), the chapter name
+only, the filename, the current page number, and the title of the
+document, respectively. See <a href="#Custom-Headings">How to Make Your Own Headings</a>.
+
+ <br><dt><code>@tie{}</code><dd>Generate a normal interword space at which a line break is not allowed.
+See <a href="#tie"><code>@tie{}</code></a>.
+
+ <br><dt><code>@tieaccent{</code><var>cc</var><code>}</code><dd>Generate a tie-after accent over the next two characters <var>cc</var>, as in
+`oo['. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@tindex </code><var>entry</var><dd>Add <var>entry</var> to the index of data types. See <a href="#Index-Entries">Defining the Entries of an Index</a>.
+
+ <br><dt><code>@title </code><var>title</var><dd>In a printed manual, set a title flush to the left-hand side of the
+page in a larger than normal font and underline it with a black rule.
+Not relevant to Info, which does not have title pages. See <a href="#title-subtitle-author">The <code>@title</code> <code>@subtitle</code> and <code>@author</code> Commands</a>.
+
+ <br><dt><code>@titlefont{</code><var>text</var><code>}</code><dd>In a printed manual, print <var>text</var> in a larger than normal font.
+Not relevant to Info, which does not have title pages.
+See <a href="#titlefont-center-sp">The <code>@titlefont</code> <code>@center</code> and <code>@sp</code> Commands</a>.
+
+ <br><dt><code>@titlepage</code><dd>Indicate to Texinfo the beginning of the title page. Write command on
+a line of its own. Pair with <code>@end titlepage</code>. Nothing between
+<code>@titlepage</code> and <code>@end titlepage</code> appears in Info.
+See <a href="#titlepage"><code>@titlepage</code></a>.
+
+ <br><dt><code>@today{}</code><dd>Insert the current date, in `1 Jan 1900' style. See <a href="#Custom-Headings">How to Make Your Own Headings</a>.
+
+ <br><dt><code>@top </code><var>title</var><dd>In a Texinfo file to be formatted with <code>makeinfo</code>, identify the
+topmost <code>@node</code> in the file, which must be written on the line
+immediately preceding the <code>@top</code> command. Used for
+<code>makeinfo</code>'s node pointer insertion feature. The title is
+underlined with asterisks. Both the <code>@node</code> line and the <code>@top</code>
+line normally should be enclosed by <code>@ifnottex</code> and <code>@end
+ifnottex</code>. In TeX and <code>texinfo-format-buffer</code>, the <code>@top</code>
+command is merely a synonym for <code>@unnumbered</code>. See <a href="#makeinfo-Pointer-Creation">Creating Pointers with <code>makeinfo</code></a>.
+
+ <br><dt><code>@u{</code><var>c</var><code>}</code><dt><code>@ubaraccent{</code><var>c</var><code>}</code><dt><code>@udotaccent{</code><var>c</var><code>}</code><dd>Generate a breve, underbar, or underdot accent, respectively, over or
+under the character <var>c</var>, as in o(, o_,
+.o. See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@unnumbered </code><var>title</var><dd>In a printed manual, begin a chapter that appears without chapter
+numbers of any kind. The title appears in the table of contents of a
+printed manual. In Info, the title is underlined with asterisks.
+See <a href="#unnumbered-_0026-appendix"><code>@unnumbered</code> and <code>@appendix</code></a>.
+
+ <br><dt><code>@unnumberedsec </code><var>title</var><dd>In a printed manual, begin a section that appears without section
+numbers of any kind. The title appears in the table of contents of a
+printed manual. In Info, the title is underlined with equal signs.
+See <a href="#unnumberedsec-appendixsec-heading">Section Commands</a>.
+
+ <br><dt><code>@unnumberedsubsec </code><var>title</var><dd>In a printed manual, begin an unnumbered subsection within a
+chapter. The title appears in the table of contents of a printed
+manual. In Info, the title is underlined with hyphens.
+See <a href="#unnumberedsubsec-appendixsubsec-subheading"><code>@unnumberedsubsec</code> <code>@appendixsubsec</code> <code>@subheading</code></a>.
+
+ <br><dt><code>@unnumberedsubsubsec </code><var>title</var><dd>In a printed manual, begin an unnumbered subsubsection within a
+chapter. The title appears in the table of contents of a printed
+manual. In Info, the title is underlined with periods.
+See <a href="#subsubsection">The `subsub' Commands</a>.
+
+ <br><dt><code>@uref{</code><var>url</var><code>[, </code><var>displayed-text</var><code>][, </code><var>replacement</var><code>}</code><dt><code>@url{</code><var>url</var><code>[, </code><var>displayed-text</var><code>][, </code><var>replacement</var><code>}</code><dd>Define a cross reference to an external uniform resource locator for the
+World Wide Web. See <a href="#uref"><code>@uref</code></a>.
+
+ <br><dt><code>@v{</code><var>c</var><code>}</code><dd>Generate check accent over the character <var>c</var>, as in o&lt;.
+See <a href="#Inserting-Accents">Inserting Accents</a>.
+
+ <br><dt><code>@value{</code><var>flag</var><code>}</code><dd>Replace <var>flag</var> with the value to which it is set by <code>@set
+</code><var>flag</var>.
+See <a href="#set-clear-value"><code>@set</code> <code>@clear</code> <code>@value</code></a>.
+
+ <br><dt><code>@var{</code><var>metasyntactic-variable</var><code>}</code><dd>Highlight a metasyntactic variable, which is something that stands for
+another piece of text. See <a href="#var">Indicating Metasyntactic Variables</a>.
+
+ <br><dt><code>@verb{</code><var>delim</var> <var>literal</var> <var>delim</var><code>}</code><dd>Output <var>literal</var>, delimited by the single character <var>delim</var>,
+exactly as is (in the fixed-width font), including any whitespace or
+Texinfo special characters. See <a href="#verb"><code>verb</code></a>.
+
+ <br><dt><code>@verbatim</code><dd>Output the text of the environment exactly as is (in the fixed-width
+font). Pair with <code>@end verbatim</code>. See <a href="#verbatim"><code>verbatim</code></a>.
+
+ <br><dt><code>@verbatiminclude </code><var>filename</var><dd>Output the contents of <var>filename</var> exactly as is (in the fixed-width font).
+See <a href="#verbatiminclude"><code>verbatiminclude</code></a>.
+
+ <br><dt><code>@vindex </code><var>entry</var><dd>Add <var>entry</var> to the index of variables. See <a href="#Index-Entries">Defining the Entries of an Index</a>.
+
+ <br><dt><code>@vskip </code><var>amount</var><dd>In a printed manual, insert whitespace so as to push text on the
+remainder of the page towards the bottom of the page. Used in
+formatting the copyright page with the argument <span class="samp">0pt plus
+1filll</span>. (Note spelling of <span class="samp">filll</span>.) <code>@vskip</code> may be used
+only in contexts ignored for Info. See <a href="#Copyright">Copyright</a>.
+
+ <br><dt><code>@vtable </code><var>formatting-command</var><dd>Begin a two-column table, using <code>@item</code> for each entry.
+Automatically enter each of the items in the first column into the
+index of variables. Pair with <code>@end vtable</code>. The same as
+<code>@table</code>, except for indexing. See <a href="#ftable-vtable"><code>@ftable</code> and <code>@vtable</code></a>.
+
+ <br><dt><code>@w{</code><var>text</var><code>}</code><dd>Prevent <var>text</var> from being split across two lines.
+See <a href="#w"><code>@w</code></a>.
+
+ <br><dt><code>@xml</code><dd>Enter XML completely. Pair with <code>@end xml</code>. See <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a>.
+
+ <br><dt><code>@xref{</code><var>node-name</var><code>, [</code><var>entry</var><code>], [</code><var>topic-or-title</var><code>], [</code><var>info-file</var><code>], [</code><var>manual</var><code>]}</code><dd>Make a reference that starts with `See' in a printed manual. Follow
+command with a punctuation mark. Only the first argument is
+mandatory. See <a href="#xref"><code>@xref</code></a>.
+</dl>
+
+<div class="node">
+<p><hr>
+<a name="Command-Syntax"></a>Up:&nbsp;<a rel="up" accesskey="u" href="#Command-List">Command List</a>
+<br>
+</div>
+
+<h3 class="section">A.1 @-Command Syntax</h3>
+
+<p><a name="index-_0040_0040_002dcommand-syntax-1233"></a><a name="index-Syntax_002c-of-_0040_0040_002dcommands-1234"></a><a name="index-Command-syntax-1235"></a>
+The character <span class="samp">@</span> is used to start special Texinfo commands.
+(It has the same meaning that <span class="samp">\</span> has in plain TeX.) Texinfo
+has four types of @-command:
+
+ <dl>
+<dt>1. Non-alphabetic commands.<dd>These commands consist of an @ followed by a punctuation mark or other
+character that is not part of the alphabet. Non-alphabetic commands are
+almost always part of the text within a paragraph, and never take any
+argument. The two characters (@ and the other one) are complete in
+themselves; none is followed by braces. The non-alphabetic commands
+are: <code>@.</code>, <code>@:</code>, <code>@*</code>, <code>@</code><kbd>SPACE</kbd>,
+<code>@</code><kbd>TAB</kbd>, <code>@</code><kbd>NL</kbd>, <code>@@</code>, <code>@{</code>, and
+<code>@}</code>.
+
+ <br><dt>2. Alphabetic commands that do not require arguments.<dd>These commands start with @ followed by a word followed by left- and
+right-hand braces. These commands insert special symbols in the
+document; they do not require arguments. For example,
+<code>@dots{}</code> =&gt; <span class="samp">...</span>, <code>@equiv{}</code>
+=&gt; <span class="samp">==</span>, <code>@TeX{}</code> =&gt; `TeX',
+and <code>@bullet{}</code> =&gt; <span class="samp">&bull;</span>.
+
+ <br><dt>3. Alphabetic commands that require arguments within braces.<dd>These commands start with @ followed by a letter or a word, followed by an
+argument within braces. For example, the command <code>@dfn</code> indicates
+the introductory or defining use of a term; it is used as follows: <span class="samp">In
+Texinfo, @@-commands are @dfn{mark-up} commands.</span>
+
+ <br><dt>4. Alphabetic commands that occupy an entire line.<dd>These commands occupy an entire line. The line starts with @,
+followed by the name of the command (a word); for example, <code>@center</code>
+or <code>@cindex</code>. If no argument is needed, the word is followed by
+the end of the line. If there is an argument, it is separated from
+the command name by a space. Braces are not used.
+</dl>
+
+ <p><a name="index-Braces-and-argument-syntax-1236"></a>Thus, the alphabetic commands fall into classes that have
+different argument syntaxes. You cannot tell to which class a command
+belongs by the appearance of its name, but you can tell by the
+command's meaning: if the command stands for a glyph, it is in
+class 2 and does not require an argument; if it makes sense to use the
+command together with other text as part of a paragraph, the command
+is in class 3 and must be followed by an argument in braces;
+otherwise, it is in class 4 and uses the rest of the line as its
+argument.
+
+ <p>The purpose of having a different syntax for commands of classes 3 and
+4 is to make Texinfo files easier to read, and also to help the GNU
+Emacs paragraph and filling commands work properly. There is only one
+exception to this rule: the command <code>@refill</code>, which is always
+used at the end of a paragraph immediately following the final period
+or other punctuation character. <code>@refill</code> takes no argument and
+does <em>not</em> require braces. <code>@refill</code> never confuses the
+Emacs paragraph commands because it cannot appear at the beginning of
+a line. It is also no longer needed, since all formatters now refill
+paragraphs automatically.
+
+<div class="node">
+<p><hr>
+<a name="Tips"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Sample-Texinfo-Files">Sample Texinfo Files</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Command-List">Command List</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="appendix">Appendix B Tips and Hints</h2>
+
+<p>Here are some tips for writing Texinfo documentation:
+
+ <p><a name="index-Tips-1237"></a><a name="index-Usage-tips-1238"></a><a name="index-Hints-1239"></a>
+ <ul>
+<li>Write in the present tense, not in the past or the future.
+
+ <li>Write actively! For example, write &ldquo;We recommend that <small class="dots">...</small>&rdquo; rather
+than &ldquo;It is recommended that <small class="dots">...</small>&rdquo;.
+
+ <li>Use 70 or 72 as your fill column. Longer lines are hard to read.
+
+ <li>Include a copyright notice and copying permissions.
+</ul>
+
+<h5 class="subsubheading">Index, Index, Index!</h5>
+
+<p>Write many index entries, in different ways.
+Readers like indices; they are helpful and convenient.
+
+ <p>Although it is easiest to write index entries as you write the body of
+the text, some people prefer to write entries afterwards. In either
+case, write an entry before the paragraph to which it applies. This
+way, an index entry points to the first page of a paragraph that is
+split across pages.
+
+ <p>Here are more hints we have found valuable:
+
+ <ul>
+<li>Write each index entry differently, so each entry refers to a different
+place in the document.
+
+ <li>Write index entries only where a topic is discussed significantly. For
+example, it is not useful to index &ldquo;debugging information&rdquo; in a
+chapter on reporting bugs. Someone who wants to know about debugging
+information will certainly not find it in that chapter.
+
+ <li>Consistently capitalize the first word of every concept index entry,
+or else consistently use lower case. Terse entries often call for
+lower case; longer entries for capitalization. Whichever case
+convention you use, please use one or the other consistently! Mixing
+the two styles looks bad.
+
+ <li>Always capitalize or use upper case for those words in an index for
+which this is proper, such as names of countries or acronyms. Always
+use the appropriate case for case-sensitive names, such as those in C or
+Lisp.
+
+ <li>Write the indexing commands that refer to a whole section immediately
+after the section command, and write the indexing commands that refer to
+a paragraph before that paragraph.
+
+ <p>In the example that follows, a blank line comes after the index
+entry for &ldquo;Leaping&rdquo;:
+
+ <pre class="example"> @section The Dog and the Fox
+ @cindex Jumping, in general
+ @cindex Leaping
+
+ @cindex Dog, lazy, jumped over
+ @cindex Lazy dog jumped over
+ @cindex Fox, jumps over dog
+ @cindex Quick fox jumps over dog
+ The quick brown fox jumps over the lazy dog.
+ </pre>
+ <p class="noindent">(Note that the example shows entries for the same concept that are
+written in different ways&mdash;<span class="samp">Lazy dog</span>, and <span class="samp">Dog, lazy</span>&mdash;so
+readers can look up the concept in different ways.)
+</ul>
+
+<h5 class="subsubheading">Blank Lines</h5>
+
+ <ul>
+<li>Insert a blank line between a sectioning command and the first following
+sentence or paragraph, or between the indexing commands associated with
+the sectioning command and the first following sentence or paragraph, as
+shown in the tip on indexing. Otherwise, a formatter may fold title and
+paragraph together.
+
+ <li>Always insert a blank line before an <code>@table</code> command and after an
+<code>@end table</code> command; but never insert a blank line after an
+<code>@table</code> command or before an <code>@end table</code> command.
+
+ <p>For example,
+
+ <pre class="example"> Types of fox:
+
+ @table @samp
+ @item Quick
+ Jump over lazy dogs.
+
+ @item Brown
+ Also jump over lazy dogs.
+ @end table
+ @noindent
+ On the other hand, ...
+ </pre>
+ <p>Insert blank lines before and after <code>@itemize</code> <small class="dots">...</small> <code>@end
+itemize</code> and <code>@enumerate</code> <small class="dots">...</small> <code>@end enumerate</code> in the
+same way.
+</ul>
+
+<h5 class="subsubheading">Complete Phrases</h5>
+
+<p>Complete phrases are easier to read than <small class="dots">...</small>
+
+ <ul>
+<li>Write entries in an itemized list as complete sentences; or at least, as
+complete phrases. Incomplete expressions <small class="dots">...</small> awkward <small class="dots">...</small> like
+this.
+
+ <li>Write the prefatory sentence or phrase for a multi-item list or table as
+a complete expression. Do not write &ldquo;You can set:&rdquo;; instead, write
+&ldquo;You can set these variables:&rdquo;. The former expression sounds cut off.
+</ul>
+
+<h5 class="subsubheading">Editions, Dates and Versions</h5>
+
+<p>Include edition numbers, version numbers, and dates in the
+<code>@copying</code> text (for people reading the Texinfo file, and for the
+legal copyright in the output files). Then use <code>@insertcopying</code>
+in the <code>@titlepage</code> section (for people reading the printed
+output) and the Top node (for people reading the online output).
+
+ <p>It is easiest to do this using <code>@set</code> and <code>@value</code>.
+See <a href="#value-Example"><code>@value</code> Example</a>, and <a href="#GNU-Sample-Texts">GNU Sample Texts</a>.
+
+<h5 class="subsubheading">Definition Commands</h5>
+
+<p>Definition commands are <code>@deffn</code>, <code>@defun</code>,
+<code>@defmac</code>, and the like, and enable you to write descriptions in
+a uniform format.
+
+ <ul>
+<li>Write just one definition command for each entity you define with a
+definition command. The automatic indexing feature creates an index
+entry that leads the reader to the definition.
+
+ <li>Use <code>@table</code> <small class="dots">...</small> <code>@end table</code> in an appendix that
+contains a summary of functions, not <code>@deffn</code> or other definition
+commands.
+</ul>
+
+<h5 class="subsubheading">Capitalization</h5>
+
+ <ul>
+<li>Capitalize &ldquo;Texinfo&rdquo;; it is a name. Do not write the <span class="samp">x</span> or
+<span class="samp">i</span> in upper case.
+
+ <li>Capitalize &ldquo;Info&rdquo;; it is a name.
+
+ <li>Write TeX using the <code>@TeX{}</code> command. Note the uppercase
+<span class="samp">T</span> and <span class="samp">X</span>. This command causes the formatters to
+typeset the name according to the wishes of Donald Knuth, who wrote
+TeX.
+</ul>
+
+<h5 class="subsubheading">Spaces</h5>
+
+<p>Do not use spaces to format a Texinfo file, except inside of
+<code>@example</code> <small class="dots">...</small> <code>@end example</code> and other literal
+environments and commands.
+
+ <p>For example, TeX fills the following:
+
+<pre class="example"> @kbd{C-x v}
+ @kbd{M-x vc-next-action}
+ Perform the next logical operation
+ on the version-controlled file
+ corresponding to the current buffer.
+</pre>
+ <p class="noindent">so it looks like this:
+
+ <blockquote>
+`C-x v' `M-x vc-next-action' Perform the next logical operation on the
+version-controlled file corresponding to the current buffer.
+</blockquote>
+
+<p class="noindent">In this case, the text should be formatted with
+<code>@table</code>, <code>@item</code>, and <code>@itemx</code>, to create a table.
+
+<h5 class="subsubheading">@code, @samp, @var, and <span class="samp">---</span></h5>
+
+ <ul>
+<li>Use <code>@code</code> around Lisp symbols, including command names.
+For example,
+
+ <pre class="example"> The main function is @code{vc-next-action}, ...
+ </pre>
+ <li>Avoid putting letters such as <span class="samp">s</span> immediately after an
+<span class="samp">@code</span>. Such letters look bad.
+
+ <li>Use <code>@var</code> around meta-variables. Do not write angle brackets
+around them.
+
+ <li>Use three hyphens in a row, <span class="samp">---</span>, to indicate a long dash. TeX
+typesets these as a long dash and the Info formatters reduce three
+hyphens to two.
+</ul>
+
+<h5 class="subsubheading">Periods Outside of Quotes</h5>
+
+<p>Place periods and other punctuation marks <em>outside</em> of quotations,
+unless the punctuation is part of the quotation. This practice goes
+against publishing conventions in the United States, but enables the
+reader to distinguish between the contents of the quotation and the
+whole passage.
+
+ <p>For example, you should write the following sentence with the period
+outside the end quotation marks:
+
+<pre class="example"> Evidently, <span class="samp">au</span> is an abbreviation for ``author''.
+</pre>
+ <p class="noindent">since <span class="samp">au</span> does <em>not</em> serve as an abbreviation for
+<span class="samp">author.</span> (with a period following the word).
+
+<h5 class="subsubheading">Introducing New Terms</h5>
+
+ <ul>
+<li>Introduce new terms so that a reader who does not know them can
+understand them from context; or write a definition for the term.
+
+ <p>For example, in the following, the terms &ldquo;check in&rdquo;, &ldquo;register&rdquo; and
+&ldquo;delta&rdquo; are all appearing for the first time; the example sentence should be
+rewritten so they are understandable.
+
+ <blockquote>
+The major function assists you in checking in a file to your
+version control system and registering successive sets of changes to
+it as deltas.
+</blockquote>
+
+ <li>Use the <code>@dfn</code> command around a word being introduced, to indicate
+that the reader should not expect to know the meaning already, and
+should expect to learn the meaning from this passage.
+</ul>
+
+<h5 class="subsubheading">@pxref</h5>
+
+<!-- !!! maybe include this in the tips on pxref -->
+<p>Absolutely never use <code>@pxref</code> except in the special context for
+which it is designed: inside parentheses, with the closing parenthesis
+following immediately after the closing brace. One formatter
+automatically inserts closing punctuation and the other does not. This
+means that the output looks right both in printed output and in an Info
+file, but only when the command is used inside parentheses.
+
+<h5 class="subsubheading">Invoking from a Shell</h5>
+
+<p>You can invoke programs such as Emacs, GCC, and <code>gawk</code> from a
+shell. The documentation for each program should contain a section that
+describes this. Unfortunately, if the node names and titles for these
+sections are all different, they are difficult for users to find.
+
+ <p>So, there is a convention to name such sections with a phrase beginning
+with the word `Invoking', as in `Invoking Emacs'; this way, users can
+find the section easily.
+
+<h5 class="subsubheading">ANSI C Syntax</h5>
+
+<p>When you use <code>@example</code> to describe a C function's calling
+conventions, use the ANSI C syntax, like this:
+
+<pre class="example"> void dld_init (char *@var{path});
+</pre>
+ <p class="noindent">And in the subsequent discussion, refer to the argument values by
+writing the same argument names, again highlighted with
+<code>@var</code>.
+
+ <p>Avoid the obsolete style that looks like this:
+
+<pre class="example"> #include &lt;dld.h&gt;
+
+ dld_init (path)
+ char *path;
+</pre>
+ <p>Also, it is best to avoid writing <code>#include</code> above the
+declaration just to indicate that the function is declared in a
+header file. The practice may give the misimpression that the
+<code>#include</code> belongs near the declaration of the function. Either
+state explicitly which header file holds the declaration or, better
+yet, name the header file used for a group of functions at the
+beginning of the section that describes the functions.
+
+<h5 class="subsubheading">Bad Examples</h5>
+
+<p>Here are several examples of bad writing to avoid:
+
+ <p>In this example, say, &ldquo; <small class="dots">...</small> you must <code>@dfn</code>{check
+in} the new version.&rdquo; That flows better.
+
+ <blockquote>
+When you are done editing the file, you must perform a
+<code>@dfn</code>{check in}.
+</blockquote>
+
+ <p>In the following example, say, &ldquo;<small class="dots">...</small> makes a unified interface such as VC
+mode possible.&rdquo;
+
+ <blockquote>
+SCCS, RCS and other version-control systems all perform similar
+functions in broadly similar ways (it is this resemblance which makes
+a unified control mode like this possible).
+</blockquote>
+
+ <p>And in this example, you should specify what `it' refers to:
+
+ <blockquote>
+If you are working with other people, it assists in coordinating
+everyone's changes so they do not step on each other.
+</blockquote>
+
+<h5 class="subsubheading">And Finally <small class="dots">...</small></h5>
+
+ <ul>
+<li>Pronounce TeX as if the <span class="samp">X</span> were a Greek `chi', as the last
+sound in the name `Bach'. But pronounce Texinfo as in `speck':
+&ldquo;teckinfo&rdquo;.
+
+ <li>Write notes for yourself at the very end of a Texinfo file after the
+<code>@bye</code>. None of the formatters process text after the
+<code>@bye</code>; it is as if the text were within <code>@ignore</code> <small class="dots">...</small>
+<code>@end ignore</code>.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Sample-Texinfo-Files"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Include-Files">Include Files</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Tips">Tips</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="appendix">Appendix C Sample Texinfo Files</h2>
+
+<p><a name="index-Sample-Texinfo-files-1240"></a>
+The first example is from the first chapter (see <a href="#Short-Sample">Short Sample</a>),
+given here in its entirety, without commentary. The second
+includes the full texts to be used in GNU manuals.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Short-Sample-Texinfo-File">Short Sample Texinfo File</a>
+<li><a accesskey="2" href="#GNU-Sample-Texts">GNU Sample Texts</a>
+<li><a accesskey="3" href="#Verbatim-Copying-License">Verbatim Copying License</a>
+<li><a accesskey="4" href="#All_002dpermissive-Copying-License">All-permissive Copying License</a>
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Short-Sample-Texinfo-File"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#GNU-Sample-Texts">GNU Sample Texts</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Sample-Texinfo-Files">Sample Texinfo Files</a>
+<br>
+</div>
+
+<h3 class="section">C.1 Short Sample</h3>
+
+<p><a name="index-Sample-Texinfo-file_002c-no-comments-1241"></a>
+Here is a complete, short sample Texinfo file, without any commentary.
+You can see this file, with comments, in the first chapter. See <a href="#Short-Sample">Short Sample</a>.
+
+ <p>In a nutshell: The <span class="command">makeinfo</span> program transforms a Texinfo
+source file such as this into an Info file or HTML; and TeX typesets
+it for a printed manual.
+
+ <pre class="sp">
+
+</pre>
+<pre class="example"> \input texinfo @c -*-texinfo-*-
+ @c %**start of header
+ @setfilename sample.info
+ @settitle Sample Manual 1.0
+ @c %**end of header
+
+ @copying
+ This is a short example of a complete Texinfo file.
+
+ Copyright (C) 2004 Free Software Foundation, Inc.
+ @end copying
+
+ @titlepage
+ @title Sample Title
+ @page
+ @vskip 0pt plus 1filll
+ @insertcopying
+ @end titlepage
+
+ @c Output the table of the contents at the beginning.
+ @contents
+
+ @ifnottex
+ @node Top
+ @top GNU Sample
+
+ @insertcopying
+ @end ifnottex
+
+ @menu
+ * First Chapter:: The first chapter is the
+ only chapter in this sample.
+ * Index:: Complete index.
+ @end menu
+
+
+ @node First Chapter
+ @chapter First Chapter
+
+ @cindex chapter, first
+
+ This is the first chapter.
+ @cindex index entry, another
+
+ Here is a numbered list.
+
+ @enumerate
+ @item
+ This is the first item.
+
+ @item
+ This is the second item.
+ @end enumerate
+
+
+ @node Index
+ @unnumbered Index
+
+ @printindex cp
+
+ @bye
+</pre>
+ <div class="node">
+<p><hr>
+<a name="GNU-Sample-Texts"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Verbatim-Copying-License">Verbatim Copying License</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Short-Sample-Texinfo-File">Short Sample Texinfo File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Sample-Texinfo-Files">Sample Texinfo Files</a>
+<br>
+</div>
+
+<h3 class="section">C.2 GNU Sample Texts</h3>
+
+<p><a name="index-GNU-sample-texts-1242"></a><a name="index-Sample-texts_002c-GNU-1243"></a><a name="index-Full-texts_002c-GNU-1244"></a>
+Following is a sample Texinfo document with the full texts that should
+be used in GNU manuals.
+
+ <p>As well as the legal texts, it also serves as a practical example of how
+many elements in a GNU system can affect the manual. If you're not
+familiar with all these different elements, don't worry. They're not
+required and a perfectly good manual can be written without them.
+They're included here nonetheless because many manuals do (or could)
+benefit from them.
+
+ <p>See <a href="#Short-Sample">Short Sample</a>, for a minimal example of a Texinfo file.
+See <a href="#Beginning-a-File">Beginning a File</a>, for a full explanation of that minimal
+example.
+
+ <p>Here are some notes on the example:
+
+ <ul>
+<li><a name="index-_0024Id-1245"></a><a name="index-CVS-_0024Id-1246"></a><a name="index-RCS-_0024Id-1247"></a><a name="index-Documentation-identification-1248"></a><a name="index-Identification-of-documentation-1249"></a>The <span class="samp">$Id:</span> comment is for the CVS (see <a href="cvs.html#Top">Overview (Concurrent Versions System)</a>) or RCS (see rcsintro(1)) version control
+systems, which expand it into a string such as:
+ <pre class="example"> $Id: texinfo.txi,v 1.52 2004/04/09 21:30:07 karl Exp $
+ </pre>
+ <p>(This is useful in all sources that use version control, not just manuals.)
+You may wish to include the <span class="samp">$Id:</span> comment in the <code>@copying</code>
+text, if you want a completely unambiguous reference to the
+documentation version.
+
+ <p>If you want to literally write <tt>$<!-- /@w -->Id$</tt>, use <code>@w</code>:
+<code>@w{$}Id$</code>.
+
+ <li><a name="index-automake_0040r_007b_002c-and-version-info_007d-1250"></a><a name="index-UPDATED-_0040r_007bAutomake-variable_007d-1251"></a><a name="index-VERSION-_0040r_007bAutomake-variable_007d-1252"></a><a name="index-time_002dstamp_002eel-1253"></a>The <span class="file">version.texi</span> in the <code>@include</code> command is maintained
+automatically by Automake (see <a href="automake.html#Top">Introduction (GNU Automake)</a>). It sets the <span class="samp">VERSION</span> and <span class="samp">UPDATED</span> values used
+elsewhere. If your distribution doesn't use Automake, but you do use
+Emacs, you may find the time-stamp.el package helpful (see <a href="emacs.html#Time-Stamps">Time Stamps (The GNU Emacs Manual)</a>).
+
+ <li>The <code>@syncodeindex</code> command reflects the recommendation to use
+only one index where possible, to make it easier for readers to look up
+index entries.
+
+ <li>The <code>@dircategory</code> is for constructing the Info directory.
+See <a href="#Installing-Dir-Entries">Installing Dir Entries</a>, which includes a variety of recommended
+category names.
+
+ <li>The `Invoking' node is a GNU standard to help users find the basic
+information about command-line usage of a given program. See <a href="standards.html#Manual-Structure-Details">Manual Structure Details (GNU Coding Standards)</a>.
+
+ <li><a name="index-GNU-Free-Documentation-License_002c-including-entire-1254"></a><a name="index-Free-Documentation-License_002c-including-entire-1255"></a>It is best to include the entire GNU Free Documentation License in a GNU
+manual, unless the manual is only a few pages long. Of course this
+sample is even shorter than that, but it includes the FDL anyway in
+order to show one conventional way to do so. The <span class="file">fdl.texi</span> file
+is available on the GNU machines and in the Texinfo and other GNU
+source distributions.
+
+ <p>The FDL provides for omitting itself under certain conditions, but in
+that case the sample texts given here have to be modified. See <a href="#GNU-Free-Documentation-License">GNU Free Documentation License</a>.
+
+ <li>If your manual has invariant sections (again, see the license itself for
+details), then don't forget to change the text here accordingly.
+
+ <li>For documents that express your personal views, feelings or experiences,
+it is more appropriate to use a license permitting only verbatim
+copying, rather than the FDL. See <a href="#Verbatim-Copying-License">Verbatim Copying License</a>.
+
+ </ul>
+
+ <p>Here is the sample document:
+
+<pre class="verbatim">
+\input texinfo @c -*-texinfo-*-
+@comment $Id: texinfo.txi,v 1.52 2004/04/09 21:30:07 karl Exp $
+@comment %**start of header
+@setfilename sample.info
+@include version.texi
+@settitle GNU Sample @value{VERSION}
+@syncodeindex pg cp
+@comment %**end of header
+@copying
+This manual is for GNU Sample
+(version @value{VERSION}, @value{UPDATED}),
+which is an example in the Texinfo documentation.
+
+Copyright @copyright{} 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 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
+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 Texinfo documentation system
+@direntry
+* sample: (sample)Invoking sample.
+@end direntry
+
+@titlepage
+@title GNU Sample
+@subtitle for version @value{VERSION}, @value{UPDATED}
+@author A.U. Thor (@email{bug-texinfo@@gnu.org})
+@page
+@vskip 0pt plus 1filll
+@insertcopying
+@end titlepage
+
+@contents
+
+@ifnottex
+@node Top
+@top GNU Sample
+
+@insertcopying
+@end ifnottex
+
+@menu
+* Invoking sample::
+* Copying This Manual::
+* Index::
+@end menu
+
+
+@node Invoking sample
+@chapter Invoking sample
+
+@pindex sample
+@cindex invoking @command{sample}
+
+This is a sample manual. There is no sample program to
+invoke, but if there was, you could see its basic usage
+and command line options here.
+
+
+@node Copying This Manual
+@appendix Copying This Manual
+
+@menu
+* GNU Free Documentation License:: License for copying this manual.
+@end menu
+
+@include fdl.texi
+
+
+@node Index
+@unnumbered Index
+
+@printindex cp
+
+@bye
+</pre>
+
+<div class="node">
+<p><hr>
+<a name="Verbatim-Copying-License"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#All_002dpermissive-Copying-License">All-permissive Copying License</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#GNU-Sample-Texts">GNU Sample Texts</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Sample-Texinfo-Files">Sample Texinfo Files</a>
+<br>
+</div>
+
+<h3 class="section">C.3 Verbatim Copying License</h3>
+
+<p><a name="index-Verbatim-copying-license-1256"></a><a name="index-License-for-verbatim-copying-1257"></a>
+For software manuals and other documentation, it is important to use a
+license permitting free redistribution and updating, so that when a free
+program is changed, the documentation can be updated as well.
+
+ <p>On the other hand, for documents that express your personal views,
+feelings or experiences, it is more appropriate to use a license
+permitting only verbatim copying.
+
+ <p>Here is sample text for such a license permitting verbatim copying only.
+This is just the license text itself. For a complete sample document,
+see the previous sections.
+
+<pre class="verbatim">
+@copying
+This document is a sample for allowing verbatim copying only.
+
+Copyright @copyright{} 2004 Free Software Foundation, Inc.
+
+@quotation
+Permission is granted to make and distribute verbatim copies
+of this entire document without royalty provided the
+copyright notice and this permission notice are preserved.
+@end quotation
+@end copying
+</pre>
+
+<div class="node">
+<p><hr>
+<a name="All_002dpermissive-Copying-License"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Verbatim-Copying-License">Verbatim Copying License</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Sample-Texinfo-Files">Sample Texinfo Files</a>
+<br>
+</div>
+
+<h3 class="section">C.4 All-permissive Copying License</h3>
+
+<p><a name="index-All_002dpermissive-copying-license-1258"></a><a name="index-License-for-all_002dpermissive-copying-1259"></a>
+For software manuals and other documentation, it is important to use a
+license permitting free redistribution and updating, so that when a free
+program is changed, the documentation can be updated as well.
+
+ <p>On the other hand, for small supporting files, short manuals (under 300
+lines long) and rough documentation (README files, INSTALL files, etc.),
+the full FDL would be overkill. They can use a simple all-permissive
+license.
+
+ <p>Here is sample text for such an all-permissive license. This is just
+the license text itself. For a complete sample document, see the
+previous sections.
+
+<pre class="example"> Copyright &copy; 2004 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved.
+</pre>
+ <div class="node">
+<p><hr>
+<a name="Include-Files"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Headings">Headings</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Sample-Texinfo-Files">Sample Texinfo Files</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="appendix">Appendix D Include Files</h2>
+
+<p><a name="index-Include-files-1260"></a>
+When TeX or an Info formatting command sees an <code>@include</code>
+command in a Texinfo file, it processes the contents of the file named
+by the command and incorporates them into the DVI or Info file being
+created. Index entries from the included file are incorporated into
+the indices of the output file.
+
+ <p>Include files let you keep a single large document as a collection of
+conveniently small parts.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Using-Include-Files">Using Include Files</a>: How to use the <code>@include</code> command.
+<li><a accesskey="2" href="#texinfo_002dmultiple_002dfiles_002dupdate">texinfo-multiple-files-update</a>: How to create and update nodes and
+ menus when using included files.
+<li><a accesskey="3" href="#Include-Files-Requirements">Include Files Requirements</a>: <code>texinfo-multiple-files-update</code> needs.
+<li><a accesskey="4" href="#Sample-Include-File">Sample Include File</a>: A sample outer file with included files
+ within it; and a sample included file.
+<li><a accesskey="5" href="#Include-Files-Evolution">Include Files Evolution</a>: How use of the <code>@include</code> command
+ has changed over time.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Using-Include-Files"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#texinfo_002dmultiple_002dfiles_002dupdate">texinfo-multiple-files-update</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Include-Files">Include Files</a>
+<br>
+</div>
+
+<h3 class="section">D.1 How to Use Include Files</h3>
+
+<p><a name="index-include-1261"></a>
+To include another file within a Texinfo file, write the
+<code>@include</code> command at the beginning of a line and follow it on
+the same line by the name of a file to be included. For example:
+
+<pre class="example"> @include buffers.texi
+</pre>
+ <p>The name of the file is taken literally, with a single exception:
+<code>@value{</code><var>var</var><code>}</code> references are expanded. This makes it
+possible to reliably include files in other directories in a
+distribution. See <a href="#verbatiminclude"><code>@verbatiminclude</code></a>, for
+an example.
+
+ <p>An included file should simply be a segment of text that you expect to
+be included as is into the overall or <dfn>outer</dfn> Texinfo file; it
+should not contain the standard beginning and end parts of a Texinfo
+file. In particular, you should not start an included file with a
+line saying <span class="samp">\input texinfo</span>; if you do, that phrase is inserted
+into the output file as is. Likewise, you should not end an included
+file with an <code>@bye</code> command; nothing after <code>@bye</code> is
+formatted.
+
+ <p>In the past, you were required to write an <code>@setfilename</code> line at the
+beginning of an included file, but no longer. Now, it does not matter
+whether you write such a line. If an <code>@setfilename</code> line exists
+in an included file, it is ignored.
+
+ <p>Conventionally, an included file begins with an <code>@node</code> line that
+is followed by an <code>@chapter</code> line. Each included file is one
+chapter. This makes it easy to use the regular node and menu creating
+and updating commands to create the node pointers and menus within the
+included file. However, the simple Emacs node and menu creating and
+updating commands do not work with multiple Texinfo files. Thus you
+cannot use these commands to fill in the `Next', `Previous', and `Up'
+pointers of the <code>@node</code> line that begins the included file. Also,
+you cannot use the regular commands to create a master menu for the
+whole file. Either you must insert the menus and the `Next',
+`Previous', and `Up' pointers by hand, or you must use the GNU Emacs
+Texinfo mode command, <code>texinfo-multiple-files-update</code>, that is
+designed for <code>@include</code> files.
+
+ <p>When an included file does not have any node lines in it, the
+multiple files update command does not try to create a menu entry
+for it. Consequently, you can include any file, such as a
+version or an update file without node lines, not just files that
+are chapters. Small includable files like this are created by
+Automake (see <a href="#GNU-Sample-Texts">GNU Sample Texts</a>).
+
+<div class="node">
+<p><hr>
+<a name="texinfo_002dmultiple_002dfiles_002dupdate"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Include-Files-Requirements">Include Files Requirements</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Using-Include-Files">Using Include Files</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Include-Files">Include Files</a>
+<br>
+</div>
+
+<h3 class="section">D.2 <code>texinfo-multiple-files-update</code></h3>
+
+<p><a name="index-texinfo_002dmultiple_002dfiles_002dupdate-1262"></a>
+GNU Emacs Texinfo mode provides the <code>texinfo-multiple-files-update</code>
+command. This command creates or updates `Next', `Previous', and `Up'
+pointers of included files as well as those in the outer or overall
+Texinfo file, and it creates or updates a main menu in the outer file.
+Depending whether you call it with optional arguments, the command
+updates only the pointers in the first <code>@node</code> line of the
+included files or all of them:
+
+ <dl>
+<dt><kbd>M-x texinfo-multiple-files-update</kbd><dd>Called without any arguments:
+
+ <ul>
+<li>Create or update the `Next', `Previous', and `Up' pointers of the
+first <code>@node</code> line in each file included in an outer or overall
+Texinfo file.
+
+ <li>Create or update the `Top' level node pointers of the outer or
+overall file.
+
+ <li>Create or update a main menu in the outer file.
+</ul>
+
+ <br><dt><kbd>C-u M-x texinfo-multiple-files-update</kbd><dd>Called with <kbd>C-u</kbd> as a prefix argument:
+
+ <ul>
+<li>Create or update pointers in the first <code>@node</code> line in each
+included file.
+
+ <li>Create or update the `Top' level node pointers of the outer file.
+
+ <li>Create and insert a master menu in the outer file. The master menu
+is made from all the menus in all the included files.
+</ul>
+
+ <br><dt><kbd>C-u 8 M-x texinfo-multiple-files-update</kbd><dd>Called with a numeric prefix argument, such as <kbd>C-u 8</kbd>:
+
+ <ul>
+<li>Create or update <strong>all</strong> the `Next', `Previous', and `Up' pointers
+of all the included files.
+
+ <li>Create or update <strong>all</strong> the menus of all the included
+files.
+
+ <li>Create or update the `Top' level node pointers of the outer or
+overall file.
+
+ <li>And then create a master menu in the outer file. This is similar to
+invoking <code>texinfo-master-menu</code> with an argument when you are
+working with just one file.
+</ul>
+ </dl>
+
+ <p>Note the use of the prefix argument in interactive use: with a regular
+prefix argument, just <kbd>C-u</kbd><!-- /@w -->, the
+<code>texinfo-multiple-files-update</code> command inserts a master menu;
+with a numeric prefix argument, such as <kbd>C-u 8</kbd>, the command
+updates <strong>every</strong> pointer and menu in <strong>all</strong> the files and then inserts a
+master menu.
+
+<div class="node">
+<p><hr>
+<a name="Include-Files-Requirements"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Sample-Include-File">Sample Include File</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#texinfo_002dmultiple_002dfiles_002dupdate">texinfo-multiple-files-update</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Include-Files">Include Files</a>
+<br>
+</div>
+
+<h3 class="section">D.3 Include Files Requirements</h3>
+
+<p><a name="index-Include-files-requirements-1263"></a><a name="index-Requirements-for-include-files-1264"></a>
+If you plan to use the <code>texinfo-multiple-files-update</code> command,
+the outer Texinfo file that lists included files within it should
+contain nothing but the beginning and end parts of a Texinfo file, and
+a number of <code>@include</code> commands listing the included files. It
+should not even include indices, which should be listed in an included
+file of their own.
+
+ <p>Moreover, each of the included files must contain exactly one highest
+level node (conventionally, <code>@chapter</code> or equivalent),
+and this node must be the first node in the included file.
+Furthermore, each of these highest level nodes in each included file
+must be at the same hierarchical level in the file structure.
+Usually, each is an <code>@chapter</code>, an <code>@appendix</code>, or an
+<code>@unnumbered</code> node. Thus, normally, each included file contains
+one, and only one, chapter or equivalent-level node.
+
+ <p>The outer file should contain only <em>one</em> node, the `Top' node. It
+should <em>not</em> contain any nodes besides the single `Top' node. The
+<code>texinfo-multiple-files-update</code> command will not process
+them.
+
+<div class="node">
+<p><hr>
+<a name="Sample-Include-File"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Include-Files-Evolution">Include Files Evolution</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Include-Files-Requirements">Include Files Requirements</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Include-Files">Include Files</a>
+<br>
+</div>
+
+<h3 class="section">D.4 Sample File with <code>@include</code></h3>
+
+<p><a name="index-Sample-_0040code_007b_0040_0040include_007d-file-1265"></a><a name="index-Include-file-sample-1266"></a><a name="index-_0040code_007b_0040_0040include_007d-file-sample-1267"></a>
+Here is an example of an outer Texinfo file with <code>@include</code> files
+within it before running <code>texinfo-multiple-files-update</code>, which
+would insert a main or master menu:
+
+<pre class="example"> \input texinfo @c -*-texinfo-*-
+ <!-- %**start of header -->
+ @setfilename include-example.info
+ @settitle Include Example
+ <!-- %**end of header -->
+
+ ... See <a href="#Sample-Texinfo-Files">Sample Texinfo Files</a>, for
+ examples of the rest of the frontmatter ...
+
+ @ifnottex
+ @node Top
+ @top Include Example
+ @end ifnottex
+
+ @include foo.texinfo
+ @include bar.texinfo
+ @include concept-index.texinfo
+ @bye
+</pre>
+ <p>An included file, such as <span class="file">foo.texinfo</span>, might look like this:
+
+<pre class="example"> @node First
+ @chapter First Chapter
+
+ Contents of first chapter ...
+</pre>
+ <p>The full contents of <span class="file">concept-index.texinfo</span> might be as simple as this:
+
+<pre class="example"> @node Concept Index
+ @unnumbered Concept Index
+
+ @printindex cp
+</pre>
+ <p>The outer Texinfo source file for <cite>The GNU Emacs Lisp Reference
+Manual</cite> is named <span class="file">elisp.texi</span>. This outer file contains a master
+menu with 417 entries and a list of 41 <code>@include</code>
+files.
+
+<div class="node">
+<p><hr>
+<a name="Include-Files-Evolution"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Sample-Include-File">Sample Include File</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Include-Files">Include Files</a>
+<br>
+</div>
+
+<h3 class="section">D.5 Evolution of Include Files</h3>
+
+<p>When Info was first created, it was customary to create many small
+Info files on one subject. Each Info file was formatted from its own
+Texinfo source file. This custom meant that Emacs did not need to
+make a large buffer to hold the whole of a large Info file when
+someone wanted information; instead, Emacs allocated just enough
+memory for the small Info file that contained the particular
+information sought. This way, Emacs could avoid wasting memory.
+
+ <p>References from one file to another were made by referring to the file
+name as well as the node name. (See <a href="#Other-Info-Files">Referring to Other Info Files</a>. Also, see <a href="#Four-and-Five-Arguments"><code>@xref</code> with Four and Five Arguments</a>.)
+
+ <p>Include files were designed primarily as a way to create a single,
+large printed manual out of several smaller Info files. In a printed
+manual, all the references were within the same document, so TeX
+could automatically determine the references' page numbers. The Info
+formatting commands used include files only for creating joint
+indices; each of the individual Texinfo files had to be formatted for
+Info individually. (Each, therefore, required its own
+<code>@setfilename</code> line.)
+
+ <p>However, because large Info files are now split automatically, it is
+no longer necessary to keep them small.
+
+ <p>Nowadays, multiple Texinfo files are used mostly for large documents,
+such as <cite>The GNU Emacs Lisp Reference Manual</cite>, and for projects
+in which several different people write different sections of a
+document simultaneously.
+
+ <p>In addition, the Info formatting commands have been extended to work
+with the <code>@include</code> command so as to create a single large Info
+file that is split into smaller files if necessary. This means that
+you can write menus and cross references without naming the different
+Texinfo files.
+
+<div class="node">
+<p><hr>
+<a name="Headings"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Catching-Mistakes">Catching Mistakes</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Include-Files">Include Files</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="appendix">Appendix E Page Headings</h2>
+
+<p><a name="index-Headings-1268"></a><a name="index-Footings-1269"></a><a name="index-Page-numbering-1270"></a><a name="index-Page-headings-1271"></a><a name="index-Formatting-headings-and-footings-1272"></a>
+Most printed manuals contain headings along the top of every page
+except the title and copyright pages. Some manuals also contain
+footings. (Headings and footings have no meaning to Info, which is
+not paginated.)
+
+<ul class="menu">
+<li><a accesskey="1" href="#Headings-Introduced">Headings Introduced</a>: Conventions for using page headings.
+<li><a accesskey="2" href="#Heading-Format">Heading Format</a>: Standard page heading formats.
+<li><a accesskey="3" href="#Heading-Choice">Heading Choice</a>: How to specify the type of page heading.
+<li><a accesskey="4" href="#Custom-Headings">Custom Headings</a>: How to create your own headings and footings.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Headings-Introduced"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Heading-Format">Heading Format</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Headings">Headings</a>
+<br>
+</div>
+
+<h3 class="section">E.1 Headings Introduced</h3>
+
+<p>Texinfo provides standard page heading formats for manuals that are
+printed on one side of each sheet of paper and for manuals that are
+printed on both sides of the paper. Typically, you will use these
+formats, but you can specify your own format if you wish.
+
+ <p>In addition, you can specify whether chapters should begin on a new
+page, or merely continue the same page as the previous chapter; and if
+chapters begin on new pages, you can specify whether they must be
+odd-numbered pages.
+
+ <p>By convention, a book is printed on both sides of each sheet of paper.
+When you open a book, the right-hand page is odd-numbered, and
+chapters begin on right-hand pages&mdash;a preceding left-hand page is
+left blank if necessary. Reports, however, are often printed on just
+one side of paper, and chapters begin on a fresh page immediately
+following the end of the preceding chapter. In short or informal
+reports, chapters often do not begin on a new page at all, but are
+separated from the preceding text by a small amount of whitespace.
+
+ <p>The <code>@setchapternewpage</code> command controls whether chapters begin
+on new pages, and whether one of the standard heading formats is used.
+In addition, Texinfo has several heading and footing commands that you
+can use to generate your own heading and footing formats.
+
+ <p>In Texinfo, headings and footings are single lines at the tops and
+bottoms of pages; you cannot create multiline headings or footings.
+Each header or footer line is divided into three parts: a left part, a
+middle part, and a right part. Any part, or a whole line, may be left
+blank. Text for the left part of a header or footer line is set
+flushleft; text for the middle part is centered; and, text for the
+right part is set flushright.
+
+<div class="node">
+<p><hr>
+<a name="Heading-Format"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Heading-Choice">Heading Choice</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Headings-Introduced">Headings Introduced</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Headings">Headings</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">E.2 Standard Heading Formats</h3>
+
+<p>Texinfo provides two standard heading formats, one for manuals printed
+on one side of each sheet of paper, and the other for manuals printed
+on both sides of the paper.
+
+ <p>By default, nothing is specified for the footing of a Texinfo file,
+so the footing remains blank.
+
+ <p>The standard format for single-sided printing consists of a header
+line in which the left-hand part contains the name of the chapter, the
+central part is blank, and the right-hand part contains the page
+number.
+
+ <p>A single-sided page looks like this:
+
+<pre class="example"> _______________________
+ | |
+ | chapter page number |
+ | |
+ | Start of text ... |
+ | ... |
+ | |
+</pre>
+ <p>The standard format for two-sided printing depends on whether the page
+number is even or odd. By convention, even-numbered pages are on the
+left- and odd-numbered pages are on the right. (TeX will adjust the
+widths of the left- and right-hand margins. Usually, widths are
+correct, but during double-sided printing, it is wise to check that
+pages will bind properly&mdash;sometimes a printer will produce output in
+which the even-numbered pages have a larger right-hand margin than the
+odd-numbered pages.)
+
+ <p>In the standard double-sided format, the left part of the left-hand
+(even-numbered) page contains the page number, the central part is
+blank, and the right part contains the title (specified by the
+<code>@settitle</code> command). The left part of the right-hand
+(odd-numbered) page contains the name of the chapter, the central part
+is blank, and the right part contains the page number.
+
+ <p>Two pages, side by side as in an open book, look like this:
+
+<pre class="example"> _______________________ _______________________
+ | | | |
+ | page number title | | chapter page number |
+ | | | |
+ | Start of text ... | | More text ... |
+ | ... | | ... |
+ | | | |
+</pre>
+ <p class="noindent">The chapter name is preceded by the word &ldquo;Chapter&rdquo;, the chapter number
+and a colon. This makes it easier to keep track of where you are in the
+manual.
+
+<div class="node">
+<p><hr>
+<a name="Heading-Choice"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Custom-Headings">Custom Headings</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Heading-Format">Heading Format</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Headings">Headings</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">E.3 Specifying the Type of Heading</h3>
+
+<p>TeX does not begin to generate page headings for a standard Texinfo
+file until it reaches the <code>@end titlepage</code> command. Thus, the
+title and copyright pages are not numbered. The <code>@end
+titlepage</code> command causes TeX to begin to generate page headings
+according to a standard format specified by the
+<code>@setchapternewpage</code> command that precedes the
+<code>@titlepage</code> section.
+
+ <p>There are four possibilities:
+
+ <dl>
+<dt>No <code>@setchapternewpage</code> command<dd>Cause TeX to specify the single-sided heading format, with chapters
+on new pages. This is the same as <code>@setchapternewpage on</code>.
+
+ <br><dt><code>@setchapternewpage on</code><dd>Specify the single-sided heading format, with chapters on new pages.
+
+ <br><dt><code>@setchapternewpage off</code><dd>Cause TeX to start a new chapter on the same page as the last page of
+the preceding chapter, after skipping some vertical whitespace. Also
+cause TeX to typeset for single-sided printing. (You can override
+the headers format with the <code>@headings double</code> command; see
+<a href="#headings-on-off">The <code>@headings</code> Command</a>.)
+
+ <br><dt><code>@setchapternewpage odd</code><dd>Specify the double-sided heading format, with chapters on new pages.
+</dl>
+
+<p class="noindent">Texinfo lacks an <code>@setchapternewpage even</code> command.
+
+<div class="node">
+<p><hr>
+<a name="Custom-Headings"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Heading-Choice">Heading Choice</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Headings">Headings</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">E.4 How to Make Your Own Headings</h3>
+
+<p>You can use the standard headings provided with Texinfo or specify
+your own. By default, Texinfo has no footers, so if you specify them,
+the available page size for the main text will be slightly reduced.
+
+ <p>Texinfo provides six commands for specifying headings and
+footings:
+ <ul>
+<li><code>@everyheading</code> <code>@everyfooting</code> generate page headers and
+footers that are the same for both even- and odd-numbered pages.
+<li><code>@evenheading</code> and <code>@evenfooting</code> command generate headers
+and footers for even-numbered (left-hand) pages.
+<li><code>@oddheading</code> and <code>@oddfooting</code> generate headers and footers
+for odd-numbered (right-hand) pages.
+</ul>
+
+ <p>Write custom heading specifications in the Texinfo file immediately
+after the <code>@end titlepage</code> command.
+You must cancel the predefined heading commands with the
+<code>@headings off</code> command before defining your own
+specifications.
+
+ <p>Here is how to tell TeX to place the chapter name at the left, the
+page number in the center, and the date at the right of every header
+for both even- and odd-numbered pages:
+
+<pre class="example"> @headings off
+ @everyheading @thischapter @| @thispage @| @today{}
+</pre>
+ <p class="noindent">You need to divide the left part from the central part and the central
+part from the right part by inserting <span class="samp">@|</span> between parts.
+Otherwise, the specification command will not be able to tell where
+the text for one part ends and the next part begins.
+
+ <p>Each part can contain text or @-commands. The text
+is printed as if the part were within an ordinary paragraph in the
+body of the page. The @-commands replace
+themselves with the page number, date, chapter name, or
+whatever.
+
+ <p>Here are the six heading and footing commands:
+
+ <p><a name="index-everyheading-1273"></a><a name="index-everyfooting-1274"></a>
+ <dl>
+<dt><code>@everyheading </code><var>left</var><code> @| </code><var>center</var><code> @| </code><var>right</var><dt><code>@everyfooting </code><var>left</var><code> @| </code><var>center</var><code> @| </code><var>right</var><dd>
+The `every' commands specify the format for both even- and odd-numbered
+pages. These commands are for documents that are printed on one side
+of each sheet of paper, or for documents in which you want symmetrical
+headers or footers.
+
+ <p><a name="index-evenheading-1275"></a><a name="index-evenfooting-1276"></a><a name="index-oddheading-1277"></a><a name="index-oddfooting-1278"></a><br><dt><code>@evenheading </code><var>left</var><code> @| </code><var>center</var><code> @| </code><var>right</var><dt><code>@oddheading </code><var>left</var><code> @| </code><var>center</var><code> @| </code><var>right</var><dt><code>@evenfooting </code><var>left</var><code> @| </code><var>center</var><code> @| </code><var>right</var><dt><code>@oddfooting </code><var>left</var><code> @| </code><var>center</var><code> @| </code><var>right</var><dd>
+The `even' and `odd' commands specify the format for even-numbered
+pages and odd-numbered pages. These commands are for books and
+manuals that are printed on both sides of each sheet of paper.
+</dl>
+
+ <p>Use the <span class="samp">@this...</span> series of @-commands to
+provide the names of chapters
+and sections and the page number. You can use the
+<span class="samp">@this...</span> commands in the left, center, or right portions
+of headers and footers, or anywhere else in a Texinfo file so long as
+they are between <code>@iftex</code> and <code>@end iftex</code> commands.
+
+ <p>Here are the <span class="samp">@this...</span> commands:
+
+
+<a name="index-thispage-1279"></a>
+<dl><dt><code>@thispage</code><dd>Expands to the current page number.
+<!-- !!! Karl Berry says that `thissection' can fail on page breaks. -->
+
+ <p><a name="index-thischaptername-1280"></a><br><dt><code>@thischaptername</code><dd>Expands to the name of the current chapter.
+
+ <p><a name="index-thischapter-1281"></a><br><dt><code>@thischapter</code><dd>Expands to the number and name of the current
+chapter, in the format `Chapter 1: Title'.
+
+ <p><a name="index-thistitle-1282"></a><br><dt><code>@thistitle</code><dd>Expands to the name of the document, as specified by the
+<code>@settitle</code> command.
+
+ <p><a name="index-thisfile-1283"></a><br><dt><code>@thisfile</code><dd>For <code>@include</code> files only: expands to the name of the current
+<code>@include</code> file. If the current Texinfo source file is not an
+<code>@include</code> file, this command has no effect. This command does
+<em>not</em> provide the name of the current Texinfo source file unless
+it is an <code>@include</code> file. (See <a href="#Include-Files">Include Files</a>, for more
+information about <code>@include</code> files.)
+</dl>
+
+<p class="noindent">You can also use the <code>@today{}</code> command, which expands to the
+current date, in `1 Jan 1900' format.
+<a name="index-today-1284"></a>
+Other @-commands and text are printed in a header or footer just as
+if they were in the body of a page. It is useful to incorporate text,
+particularly when you are writing drafts:
+
+<pre class="example"> @headings off
+ @everyheading @emph{Draft!} @| @thispage @| @thischapter
+ @everyfooting @| @| Version: 0.27: @today{}
+</pre>
+ <p>Beware of overlong titles: they may overlap another part of the
+header or footer and blot it out.
+
+<div class="node">
+<p><hr>
+<a name="Catching-Mistakes"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Copying-This-Manual">Copying This Manual</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Headings">Headings</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="appendix">Appendix F Formatting Mistakes</h2>
+
+<p><a name="index-Structure_002c-catching-mistakes-in-1285"></a><a name="index-Nodes_002c-catching-mistakes-1286"></a><a name="index-Catching-mistakes-1287"></a><a name="index-Correcting-mistakes-1288"></a><a name="index-Mistakes_002c-catching-1289"></a><a name="index-Problems_002c-catching-1290"></a><a name="index-Debugging-the-Texinfo-structure-1291"></a>
+Besides mistakes in the content of your documentation, there are two
+kinds of mistake you can make with Texinfo: you can make mistakes with
+@-commands, and you can make mistakes with the structure of the nodes
+and chapters.
+
+ <p>Emacs has two tools for catching the @-command mistakes and two for
+catching structuring mistakes.
+
+ <p>For finding problems with @-commands, you can run TeX or a region
+formatting command on the region that has a problem; indeed, you can
+run these commands on each region as you write it.
+
+ <p>For finding problems with the structure of nodes and chapters, you can use
+<kbd>C-c C-s</kbd> (<code>texinfo-show-structure</code>) and the related <code>occur</code>
+command and you can use the <kbd>M-x Info-validate</kbd> command.
+
+<ul class="menu">
+<li><a accesskey="1" href="#makeinfo-Preferred">makeinfo Preferred</a>: <code>makeinfo</code> finds errors.
+<li><a accesskey="2" href="#Debugging-with-Info">Debugging with Info</a>: How to catch errors with Info formatting.
+<li><a accesskey="3" href="#Debugging-with-TeX">Debugging with TeX</a>: How to catch errors with TeX formatting.
+<li><a accesskey="4" href="#Using-texinfo_002dshow_002dstructure">Using texinfo-show-structure</a>: How to use <code>texinfo-show-structure</code>.
+<li><a accesskey="5" href="#Using-occur">Using occur</a>: How to list all lines containing a pattern.
+<li><a accesskey="6" href="#Running-Info_002dValidate">Running Info-Validate</a>: How to find badly referenced nodes.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="makeinfo-Preferred"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Debugging-with-Info">Debugging with Info</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Catching-Mistakes">Catching Mistakes</a>
+<br>
+</div>
+
+<h3 class="section">F.1 <code>makeinfo</code> Find Errors</h3>
+
+<p>The <code>makeinfo</code> program does an excellent job of catching errors
+and reporting them&mdash;far better than <code>texinfo-format-region</code> or
+<code>texinfo-format-buffer</code>. In addition, the various functions for
+automatically creating and updating node pointers and menus remove
+many opportunities for human error.
+
+ <p>If you can, use the updating commands to create and insert pointers
+and menus. These prevent many errors. Then use <code>makeinfo</code> (or
+its Texinfo mode manifestations, <code>makeinfo-region</code> and
+<code>makeinfo-buffer</code>) to format your file and check for other
+errors. This is the best way to work with Texinfo. But if you
+cannot use <code>makeinfo</code>, or your problem is very puzzling, then you
+may want to use the tools described in this appendix.
+
+<div class="node">
+<p><hr>
+<a name="Debugging-with-Info"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Debugging-with-TeX">Debugging with TeX</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#makeinfo-Preferred">makeinfo Preferred</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Catching-Mistakes">Catching Mistakes</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">F.2 Catching Errors with Info Formatting</h3>
+
+<p><a name="index-Catching-errors-with-Info-formatting-1292"></a><a name="index-Debugging-with-Info-formatting-1293"></a>
+After you have written part of a Texinfo file, you can use the
+<code>texinfo-format-region</code> or the <code>makeinfo-region</code> command to
+see whether the region formats properly.
+
+ <p>Most likely, however, you are reading this section because for some
+reason you cannot use the <code>makeinfo-region</code> command; therefore, the
+rest of this section presumes that you are using
+<code>texinfo-format-region</code>.
+
+ <p>If you have made a mistake with an @-command,
+<code>texinfo-format-region</code> will stop processing at or after the
+error and display an error message. To see where in the buffer the
+error occurred, switch to the <span class="samp">*Info Region*</span> buffer; the cursor
+will be in a position that is after the location of the error. Also,
+the text will not be formatted after the place where the error
+occurred (or more precisely, where it was detected).
+
+ <p>For example, if you accidentally end a menu with the command <code>@end
+menus</code> with an `s' on the end, instead of with <code>@end menu</code>, you
+will see an error message that says:
+
+<pre class="example"> @end menus is not handled by texinfo
+</pre>
+ <p class="noindent">The cursor will stop at the point in the buffer where the error
+occurs, or not long after it. The buffer will look like this:
+
+<pre class="example"> ---------- Buffer: *Info Region* ----------
+ * Menu:
+
+ * Using texinfo-show-structure:: How to use
+ `texinfo-show-structure'
+ to catch mistakes.
+ * Running Info-Validate:: How to check for
+ unreferenced nodes.
+ @end menus
+ -!-
+ ---------- Buffer: *Info Region* ----------
+</pre>
+ <p>The <code>texinfo-format-region</code> command sometimes provides slightly
+odd error messages. For example, the following cross reference fails to format:
+
+<pre class="example"> (@xref{Catching Mistakes, for more info.)
+</pre>
+ <p class="noindent">In this case, <code>texinfo-format-region</code> detects the missing closing
+brace but displays a message that says <span class="samp">Unbalanced parentheses</span>
+rather than <span class="samp">Unbalanced braces</span>. This is because the formatting
+command looks for mismatches between braces as if they were
+parentheses.
+
+ <p>Sometimes <code>texinfo-format-region</code> fails to detect mistakes. For
+example, in the following, the closing brace is swapped with the
+closing parenthesis:
+
+<pre class="example"> (@xref{Catching Mistakes), for more info.}
+</pre>
+ <p class="noindent">Formatting produces:
+<pre class="example"> (*Note for more info.: Catching Mistakes)
+</pre>
+ <p>The only way for you to detect this error is to realize that the
+reference should have looked like this:
+
+<pre class="example"> (*Note Catching Mistakes::, for more info.)
+</pre>
+ <p>Incidentally, if you are reading this node in Info and type <kbd>f
+&lt;RET&gt;</kbd> (<code>Info-follow-reference</code>), you will generate an error
+message that says:
+
+<pre class="example"> No such node: "Catching Mistakes) The only way ...
+</pre>
+ <p class="noindent">This is because Info perceives the example of the error as the first
+cross reference in this node and if you type a &lt;RET&gt; immediately
+after typing the Info <kbd>f</kbd> command, Info will attempt to go to the
+referenced node. If you type <kbd>f catch &lt;TAB&gt; &lt;RET&gt;</kbd>, Info
+will complete the node name of the correctly written example and take
+you to the `Catching Mistakes' node. (If you try this, you can return
+from the `Catching Mistakes' node by typing <kbd>l</kbd>
+(<code>Info-last</code>).)
+
+<!-- !!! section on using Elisp debugger ignored. -->
+<div class="node">
+<p><hr>
+<a name="Debugging-with-TeX"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Using-texinfo_002dshow_002dstructure">Using texinfo-show-structure</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Debugging-with-Info">Debugging with Info</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Catching-Mistakes">Catching Mistakes</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">F.3 Catching Errors with TeX Formatting</h3>
+
+<p><a name="index-Catching-errors-with-_0040TeX_007b_007d-formatting-1294"></a><a name="index-Debugging-with-_0040TeX_007b_007d-formatting-1295"></a>
+You can also catch mistakes when you format a file with TeX.
+
+ <p>Usually, you will want to do this after you have run
+<code>texinfo-format-buffer</code> (or, better, <code>makeinfo-buffer</code>) on
+the same file, because <code>texinfo-format-buffer</code> sometimes displays
+error messages that make more sense than TeX. (See <a href="#Debugging-with-Info">Debugging with Info</a>, for more information.)
+
+ <p>For example, TeX was run on a Texinfo file, part of which is shown
+here:
+
+<pre class="example"> ---------- Buffer: texinfo.texi ----------
+ name of the Texinfo file as an extension. The
+ @samp{??} are `wildcards' that cause the shell to
+ substitute all the raw index files. (@xref{sorting
+ indices, for more information about sorting
+ indices.)@refill
+ ---------- Buffer: texinfo.texi ----------
+</pre>
+ <p class="noindent">(The cross reference lacks a closing brace.)
+TeX produced the following output, after which it stopped:
+
+<pre class="example"> ---------- Buffer: *tex-shell* ----------
+ Runaway argument?
+ {sorting indices, for more information about sorting
+ indices.) @refill @ETC.
+ ! Paragraph ended before @xref was complete.
+ &lt;to be read again&gt;
+ @par
+ l.27
+
+ ?
+ ---------- Buffer: *tex-shell* ----------
+</pre>
+ <p>In this case, TeX produced an accurate and
+understandable error message:
+
+<pre class="example"> Paragraph ended before @xref was complete.
+</pre>
+ <p class="noindent"><span class="samp">@par</span> is an internal TeX command of no relevance to Texinfo.
+<span class="samp">l.27</span> means that TeX detected the problem on line 27 of the
+Texinfo file. The <span class="samp">?</span> is the prompt TeX uses in this
+circumstance.
+
+ <p>Unfortunately, TeX is not always so helpful, and sometimes you must
+truly be a Sherlock Holmes to discover what went wrong.
+
+ <p>In any case, if you run into a problem like this, you can do one of three
+things.
+
+ <ol type=1 start=1>
+<li>You can tell TeX to continue running and ignore just this error by
+typing &lt;RET&gt; at the <span class="samp">?</span> prompt.
+
+ <li>You can tell TeX to continue running and to ignore all errors as best
+it can by typing <kbd>r &lt;RET&gt;</kbd> at the <span class="samp">?</span> prompt.
+
+ <p>This is often the best thing to do. However, beware: the one error
+may produce a cascade of additional error messages as its consequences
+are felt through the rest of the file. To stop TeX when it is
+producing such an avalanche of error messages, type <kbd>C-c</kbd> (or
+<kbd>C-c C-c</kbd>, if you are running a shell inside Emacs).
+
+ <li>You can tell TeX to stop this run by typing <kbd>x &lt;RET&gt;</kbd>
+at the <span class="samp">?</span> prompt.
+ </ol>
+
+ <p>If you are running TeX inside Emacs, you need to switch to the shell
+buffer and line at which TeX offers the <span class="samp">?</span> prompt.
+
+ <p>Sometimes TeX will format a file without producing error messages even
+though there is a problem. This usually occurs if a command is not ended
+but TeX is able to continue processing anyhow. For example, if you fail
+to end an itemized list with the <code>@end itemize</code> command, TeX will
+write a DVI file that you can print out. The only error message that
+TeX will give you is the somewhat mysterious comment that
+
+<pre class="example"> (@end occurred inside a group at level 1)
+</pre>
+ <p class="noindent">However, if you print the DVI file, you will find that the text
+of the file that follows the itemized list is entirely indented as if
+it were part of the last item in the itemized list. The error message
+is the way TeX says that it expected to find an <code>@end</code>
+command somewhere in the file; but that it could not determine where
+it was needed.
+
+ <p>Another source of notoriously hard-to-find errors is a missing
+<code>@end group</code> command. If you ever are stumped by
+incomprehensible errors, look for a missing <code>@end group</code> command
+first.
+
+ <p>If the Texinfo file lacks header lines,
+TeX may stop in the
+beginning of its run and display output that looks like the following.
+The <span class="samp">*</span> indicates that TeX is waiting for input.
+
+<pre class="example"> This is TeX, Version 3.14159 (Web2c 7.0)
+ (test.texinfo [1])
+ *
+</pre>
+ <p class="noindent">In this case, simply type <kbd>\end &lt;RET&gt;</kbd> after the asterisk. Then
+write the header lines in the Texinfo file and run the TeX command
+again. (Note the use of the backslash, <span class="samp">\</span>. TeX uses <span class="samp">\</span>
+instead of <span class="samp">@</span>; and in this circumstance, you are working
+directly with TeX, not with Texinfo.)
+
+<div class="node">
+<p><hr>
+<a name="Using-texinfo_002dshow_002dstructure"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Using-occur">Using occur</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Debugging-with-TeX">Debugging with TeX</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Catching-Mistakes">Catching Mistakes</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">F.4 Using <code>texinfo-show-structure</code></h3>
+
+<p><a name="index-Showing-the-structure-of-a-file-1296"></a><a name="index-texinfo_002dshow_002dstructure-1297"></a>
+It is not always easy to keep track of the nodes, chapters, sections, and
+subsections of a Texinfo file. This is especially true if you are revising
+or adding to a Texinfo file that someone else has written.
+
+ <p>In GNU Emacs, in Texinfo mode, the <code>texinfo-show-structure</code>
+command lists all the lines that begin with the @-commands that
+specify the structure: <code>@chapter</code>, <code>@section</code>,
+<code>@appendix</code>, and so on. With an argument (<kbd>C-u</kbd><!-- /@w -->
+as prefix argument, if interactive),
+the command also shows the <code>@node</code> lines. The
+<code>texinfo-show-structure</code> command is bound to <kbd>C-c C-s</kbd> in
+Texinfo mode, by default.
+
+ <p>The lines are displayed in a buffer called the <span class="samp">*Occur*</span> buffer,
+indented by hierarchical level. For example, here is a part of what was
+produced by running <code>texinfo-show-structure</code> on this manual:
+
+<pre class="example"> Lines matching "^@\\(chapter \\|sect\\|subs\\|subh\\|
+ unnum\\|major\\|chapheading \\|heading \\|appendix\\)"
+ in buffer texinfo.texi.
+ ...
+ 4177:@chapter Nodes
+ 4198: @heading Two Paths
+ 4231: @section Node and Menu Illustration
+ 4337: @section The @code{@@node} Command
+ 4393: @subheading Choosing Node and Pointer Names
+ 4417: @subsection How to Write an @code{@@node} Line
+ 4469: @subsection @code{@@node} Line Tips
+ ...
+</pre>
+ <p>This says that lines 4337, 4393, and 4417 of <span class="file">texinfo.texi</span> begin
+with the <code>@section</code>, <code>@subheading</code>, and <code>@subsection</code>
+commands respectively. If you move your cursor into the <span class="samp">*Occur*</span>
+window, you can position the cursor over one of the lines and use the
+<kbd>C-c C-c</kbd> command (<code>occur-mode-goto-occurrence</code>), to jump to
+the corresponding spot in the Texinfo file. See <a href="emacs.html#Other-Repeating-Search">Using Occur (The GNU Emacs Manual)</a>, for more
+information about <code>occur-mode-goto-occurrence</code>.
+
+ <p>The first line in the <span class="samp">*Occur*</span> window describes the <dfn>regular
+expression</dfn> specified by <var>texinfo-heading-pattern</var>. This regular
+expression is the pattern that <code>texinfo-show-structure</code> looks for.
+See <a href="emacs.html#Regexps">Using Regular Expressions (The GNU Emacs Manual)</a>,
+for more information.
+
+ <p>When you invoke the <code>texinfo-show-structure</code> command, Emacs will
+display the structure of the whole buffer. If you want to see the
+structure of just a part of the buffer, of one chapter, for example,
+use the <kbd>C-x n n</kbd> (<code>narrow-to-region</code>) command to mark the
+region. (See <a href="emacs.html#Narrowing">Narrowing (The GNU Emacs Manual)</a>.) This is
+how the example used above was generated. (To see the whole buffer
+again, use <kbd>C-x n w</kbd> (<code>widen</code>).)
+
+ <p>If you call <code>texinfo-show-structure</code> with a prefix argument by
+typing <kbd>C-u&nbsp;C-c&nbsp;C-s</kbd><!-- /@w -->, it will list lines beginning with
+<code>@node</code> as well as the lines beginning with the @-sign commands
+for <code>@chapter</code>, <code>@section</code>, and the like.
+
+ <p>You can remind yourself of the structure of a Texinfo file by looking at
+the list in the <span class="samp">*Occur*</span> window; and if you have mis-named a node
+or left out a section, you can correct the mistake.
+
+<div class="node">
+<p><hr>
+<a name="Using-occur"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Running-Info_002dValidate">Running Info-Validate</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Using-texinfo_002dshow_002dstructure">Using texinfo-show-structure</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Catching-Mistakes">Catching Mistakes</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">F.5 Using <code>occur</code></h3>
+
+<p><a name="index-Occurrences_002c-listing-with-_0040code_007b_0040_0040occur_007d-1298"></a><a name="index-occur-1299"></a>
+Sometimes the <code>texinfo-show-structure</code> command produces too much
+information. Perhaps you want to remind yourself of the overall structure
+of a Texinfo file, and are overwhelmed by the detailed list produced by
+<code>texinfo-show-structure</code>. In this case, you can use the <code>occur</code>
+command directly. To do this, type
+
+<pre class="example"> <kbd>M-x occur</kbd>
+</pre>
+ <p class="noindent">and then, when prompted, type a <dfn>regexp</dfn>, a regular expression for
+the pattern you want to match. (See <a href="emacs.html#Regexps">Regular Expressions (The GNU Emacs Manual)</a>.) The <code>occur</code> command works from
+the current location of the cursor in the buffer to the end of the
+buffer. If you want to run <code>occur</code> on the whole buffer, place
+the cursor at the beginning of the buffer.
+
+ <p>For example, to see all the lines that contain the word
+<span class="samp">@chapter</span> in them, just type <span class="samp">@chapter</span>. This will
+produce a list of the chapters. It will also list all the sentences
+with <span class="samp">@chapter</span> in the middle of the line.
+
+ <p>If you want to see only those lines that start with the word
+<span class="samp">@chapter</span>, type <span class="samp">^@chapter</span> when prompted by
+<code>occur</code>. If you want to see all the lines that end with a word
+or phrase, end the last word with a <span class="samp">$</span>; for example,
+<span class="samp">catching mistakes$</span>. This can be helpful when you want to see
+all the nodes that are part of the same chapter or section and
+therefore have the same `Up' pointer.
+
+ <p>See <a href="emacs.html#Other-Repeating-Search">Using Occur (The GNU Emacs Manual)</a>,
+for more information.
+
+<div class="node">
+<p><hr>
+<a name="Running-Info_002dValidate"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Using-occur">Using occur</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Catching-Mistakes">Catching Mistakes</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h3 class="section">F.6 Finding Badly Referenced Nodes</h3>
+
+<p><a name="index-Info_002dvalidate-1300"></a><a name="index-Nodes_002c-checking-for-badly-referenced-1301"></a><a name="index-Checking-for-badly-referenced-nodes-1302"></a><a name="index-Looking-for-badly-referenced-nodes-1303"></a><a name="index-Finding-badly-referenced-nodes-1304"></a><a name="index-Badly-referenced-nodes-1305"></a>
+You can use the <code>Info-validate</code> command to check whether any of
+the `Next', `Previous', `Up' or other node pointers fail to point to a
+node. This command checks that every node pointer points to an
+existing node. The <code>Info-validate</code> command works only on Info
+files, not on Texinfo files.
+
+ <p>The <code>makeinfo</code> program validates pointers automatically, so you
+do not need to use the <code>Info-validate</code> command if you are using
+<code>makeinfo</code>. You only may need to use <code>Info-validate</code> if you
+are unable to run <code>makeinfo</code> and instead must create an Info file
+using <code>texinfo-format-region</code> or <code>texinfo-format-buffer</code>, or
+if you write an Info file from scratch.
+
+<ul class="menu">
+<li><a accesskey="1" href="#Using-Info_002dvalidate">Using Info-validate</a>: How to run <code>Info-validate</code>.
+<li><a accesskey="2" href="#Unsplit">Unsplit</a>: How to create an unsplit file.
+<li><a accesskey="3" href="#Tagifying">Tagifying</a>: How to tagify a file.
+<li><a accesskey="4" href="#Splitting">Splitting</a>: How to split a file manually.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="Using-Info_002dvalidate"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Unsplit">Unsplit</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Running-Info_002dValidate">Running Info-Validate</a>
+<br>
+</div>
+
+<h4 class="subsection">F.6.1 Running <code>Info-validate</code></h4>
+
+<p><a name="index-Running-_0040code_007bInfo_002dvalidate_007d-1306"></a><a name="index-Info-validating-a-large-file-1307"></a><a name="index-Validating-a-large-file-1308"></a>
+To use <code>Info-validate</code>, visit the Info file you wish to check and
+type:
+
+<pre class="example"> M-x Info-validate
+</pre>
+ <p class="noindent">Note that the <code>Info-validate</code> command requires an upper case
+`I'. You may also need to create a tag table before running
+<code>Info-validate</code>. See <a href="#Tagifying">Tagifying</a>.
+
+ <p>If your file is valid, you will receive a message that says &ldquo;File appears
+valid&rdquo;. However, if you have a pointer that does not point to a node,
+error messages will be displayed in a buffer called <span class="samp">*problems in
+info file*</span>.
+
+ <p>For example, <code>Info-validate</code> was run on a test file that contained
+only the first node of this manual. One of the messages said:
+
+<pre class="example"> In node "Overview", invalid Next: Texinfo Mode
+</pre>
+ <p class="noindent">This meant that the node called <span class="samp">Overview</span> had a `Next' pointer that
+did not point to anything (which was true in this case, since the test file
+had only one node in it).
+
+ <p>Now suppose we add a node named <span class="samp">Texinfo Mode</span> to our test case
+but we do not specify a `Previous' for this node. Then we will get
+the following error message:
+
+<pre class="example"> In node "Texinfo Mode", should have Previous: Overview
+</pre>
+ <p class="noindent">This is because every `Next' pointer should be matched by a
+`Previous' (in the node where the `Next' points) which points back.
+
+ <p><code>Info-validate</code> also checks that all menu entries and cross references
+point to actual nodes.
+
+ <p><code>Info-validate</code> requires a tag table and does not work with files
+that have been split. (The <code>texinfo-format-buffer</code> command
+automatically splits large files.) In order to use <code>Info-validate</code>
+on a large file, you must run <code>texinfo-format-buffer</code> with an
+argument so that it does not split the Info file; and you must create a
+tag table for the unsplit file.
+
+<div class="node">
+<p><hr>
+<a name="Unsplit"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Tagifying">Tagifying</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Using-Info_002dvalidate">Using Info-validate</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Running-Info_002dValidate">Running Info-Validate</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h4 class="subsection">F.6.2 Creating an Unsplit File</h4>
+
+<p><a name="index-Creating-an-unsplit-file-1309"></a><a name="index-Unsplit-file-creation-1310"></a>
+You can run <code>Info-validate</code> only on a single Info file that has a
+tag table. The command will not work on the indirect subfiles that
+are generated when a master file is split. If you have a large file
+(longer than 300,000 bytes or so), you need to run the
+<code>texinfo-format-buffer</code> or <code>makeinfo-buffer</code> command in such
+a way that it does not create indirect subfiles. You will also need
+to create a tag table for the Info file. After you have done this,
+you can run <code>Info-validate</code> and look for badly referenced
+nodes.
+
+ <p>The first step is to create an unsplit Info file. To prevent
+<code>texinfo-format-buffer</code> from splitting a Texinfo file into
+smaller Info files, give a prefix to the <kbd>M-x
+texinfo-format-buffer</kbd> command:
+
+<pre class="example"> C-u M-x texinfo-format-buffer
+</pre>
+ <p class="noindent">or else
+
+<pre class="example"> C-u C-c C-e C-b
+</pre>
+ <p class="noindent">When you do this, Texinfo will not split the file and will not create
+a tag table for it.
+<a name="index-Making-a-tag-table-manually-1311"></a><a name="index-Tag-table_002c-making-manually-1312"></a>
+<div class="node">
+<p><hr>
+<a name="Tagifying"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Splitting">Splitting</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Unsplit">Unsplit</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Running-Info_002dValidate">Running Info-Validate</a>
+<br>
+</div>
+
+<h4 class="subsection">F.6.3 Tagifying a File</h4>
+
+<p>After creating an unsplit Info file, you must create a tag table for
+it. Visit the Info file you wish to tagify and type:
+
+<pre class="example"> M-x Info-tagify
+</pre>
+ <p class="noindent">(Note the upper case <span class="samp">I</span> in <code>Info-tagify</code>.) This creates an
+Info file with a tag table that you can validate.
+
+ <p>The third step is to validate the Info file:
+
+<pre class="example"> M-x Info-validate
+</pre>
+ <p class="noindent">(Note the upper case <span class="samp">I</span> in <code>Info-validate</code>.)
+In brief, the steps are:
+
+<pre class="example"> C-u M-x texinfo-format-buffer
+ M-x Info-tagify
+ M-x Info-validate
+</pre>
+ <p>After you have validated the node structure, you can rerun
+<code>texinfo-format-buffer</code> in the normal way so it will construct a
+tag table and split the file automatically, or you can make the tag
+table and split the file manually.
+
+<div class="node">
+<p><hr>
+<a name="Splitting"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Tagifying">Tagifying</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Running-Info_002dValidate">Running Info-Validate</a>
+<br>
+</div>
+
+<!-- node-name, next, previous, up -->
+<h4 class="subsection">F.6.4 Splitting a File Manually</h4>
+
+<p><a name="index-Splitting-an-Info-file-manually-1313"></a><a name="index-Info-file_002c-splitting-manually-1314"></a>
+You should split a large file or else let the
+<code>texinfo-format-buffer</code> or <code>makeinfo-buffer</code> command do it
+for you automatically. (Generally you will let one of the formatting
+commands do this job for you. See <a href="#Creating-an-Info-File">Creating an Info File</a>.)
+
+ <p>The split-off files are called the indirect subfiles.
+
+ <p>Info files are split to save memory. With smaller files, Emacs does not
+have make such a large buffer to hold the information.
+
+ <p>If an Info file has more than 30 nodes, you should also make a tag
+table for it. See <a href="#Using-Info_002dvalidate">Using Info-validate</a>, for information
+about creating a tag table. (Again, tag tables are usually created
+automatically by the formatting command; you only need to create a tag
+table yourself if you are doing the job manually. Most likely, you
+will do this for a large, unsplit file on which you have run
+<code>Info-validate</code>.)
+
+<!-- Info-split is autoloaded in `loaddefs.el' in Emacs 18.51 -->
+<p>Visit the Info file you wish to tagify and split and type the two
+commands:
+
+<pre class="example"> M-x Info-tagify
+ M-x Info-split
+</pre>
+ <p class="noindent">(Note that the <span class="samp">I</span> in <span class="samp">Info</span> is upper case.)
+
+ <p>When you use the <code>Info-split</code> command, the buffer is modified into a
+(small) Info file which lists the indirect subfiles. This file should be
+saved in place of the original visited file. The indirect subfiles are
+written in the same directory the original file is in, with names generated
+by appending <span class="samp">-</span> and a number to the original file name.
+
+ <p>The primary file still functions as an Info file, but it contains just
+the tag table and a directory of subfiles.
+
+<!-- These are no longer ``new'', and the explanations -->
+<!-- are all given elsewhere anyway, I think. -karl, 25apr97. -->
+<!-- So ignore the entire appendix. -->
+<div class="node">
+<p><hr>
+<a name="Copying-This-Manual"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Command-and-Variable-Index">Command and Variable Index</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Catching-Mistakes">Catching Mistakes</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="appendix">Appendix G Copying This Manual</h2>
+
+<ul class="menu">
+<li><a accesskey="1" href="#GNU-Free-Documentation-License">GNU Free Documentation License</a>: License for copying this manual.
+</ul>
+
+<div class="node">
+<p><hr>
+<a name="GNU-Free-Documentation-License"></a>Up:&nbsp;<a rel="up" accesskey="u" href="#Copying-This-Manual">Copying This Manual</a>
+<br>
+</div>
+
+<h3 class="appendixsec">G.1 GNU Free Documentation License</h3>
+
+<p><a name="index-FDL_002c-GNU-Free-Documentation-License-1315"></a><div align="center">Version 1.2, November 2002</div>
+
+<pre class="display"> Copyright &copy; 2000,2001,2002 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.
+</pre>
+ <ol type=1 start=0>
+<li>PREAMBLE
+
+ <p>The purpose of this License is to make a manual, textbook, or other
+functional and useful document <dfn>free</dfn> in the sense of freedom: to
+assure everyone the effective freedom to copy and redistribute it,
+with or without modifying it, either commercially or noncommercially.
+Secondarily, this License preserves for the author and publisher a way
+to get credit for their work, while not being considered responsible
+for modifications made by others.
+
+ <p>This License is a kind of &ldquo;copyleft&rdquo;, which means that derivative
+works of the document must themselves be free in the same sense. It
+complements the GNU General Public License, which is a copyleft
+license designed for free software.
+
+ <p>We have designed this License in order to use it for manuals for free
+software, because free software needs free documentation: a free
+program should come with manuals providing the same freedoms that the
+software does. But this License is not limited to software manuals;
+it can be used for any textual work, regardless of subject matter or
+whether it is published as a printed book. We recommend this License
+principally for works whose purpose is instruction or reference.
+
+ <li>APPLICABILITY AND DEFINITIONS
+
+ <p>This License applies to any manual or other work, in any medium, that
+contains a notice placed by the copyright holder saying it can be
+distributed under the terms of this License. Such a notice grants a
+world-wide, royalty-free license, unlimited in duration, to use that
+work under the conditions stated herein. The &ldquo;Document&rdquo;, below,
+refers to any such manual or work. Any member of the public is a
+licensee, and is addressed as &ldquo;you&rdquo;. You accept the license if you
+copy, modify or distribute the work in a way requiring permission
+under copyright law.
+
+ <p>A &ldquo;Modified Version&rdquo; of the Document means any work containing the
+Document or a portion of it, either copied verbatim, or with
+modifications and/or translated into another language.
+
+ <p>A &ldquo;Secondary Section&rdquo; is a named appendix or a front-matter section
+of the Document that deals exclusively with the relationship of the
+publishers or authors of the Document to the Document's overall
+subject (or to related matters) and contains nothing that could fall
+directly within that overall subject. (Thus, if the Document is in
+part a textbook of mathematics, a Secondary Section may not explain
+any mathematics.) The relationship could be a matter of historical
+connection with the subject or with related matters, or of legal,
+commercial, philosophical, ethical or political position regarding
+them.
+
+ <p>The &ldquo;Invariant Sections&rdquo; are certain Secondary Sections whose titles
+are designated, as being those of Invariant Sections, in the notice
+that says that the Document is released under this License. If a
+section does not fit the above definition of Secondary then it is not
+allowed to be designated as Invariant. The Document may contain zero
+Invariant Sections. If the Document does not identify any Invariant
+Sections then there are none.
+
+ <p>The &ldquo;Cover Texts&rdquo; are certain short passages of text that are listed,
+as Front-Cover Texts or Back-Cover Texts, in the notice that says that
+the Document is released under this License. A Front-Cover Text may
+be at most 5 words, and a Back-Cover Text may be at most 25 words.
+
+ <p>A &ldquo;Transparent&rdquo; copy of the Document means a machine-readable copy,
+represented in a format whose specification is available to the
+general public, that is suitable for revising the document
+straightforwardly with generic text editors or (for images composed of
+pixels) generic paint programs or (for drawings) some widely available
+drawing editor, and that is suitable for input to text formatters or
+for automatic translation to a variety of formats suitable for input
+to text formatters. A copy made in an otherwise Transparent file
+format whose markup, or absence of markup, has been arranged to thwart
+or discourage subsequent modification by readers is not Transparent.
+An image format is not Transparent if used for any substantial amount
+of text. A copy that is not &ldquo;Transparent&rdquo; is called &ldquo;Opaque&rdquo;.
+
+ <p>Examples of suitable formats for Transparent copies include plain
+<span class="sc">ascii</span> without markup, Texinfo input format, LaTeX input
+format, <acronym>SGML</acronym> or <acronym>XML</acronym> using a publicly available
+<acronym>DTD</acronym>, and standard-conforming simple <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> designed for human modification. Examples
+of transparent image formats include <acronym>PNG</acronym>, <acronym>XCF</acronym> and
+<acronym>JPG</acronym>. Opaque formats include proprietary formats that can be
+read and edited only by proprietary word processors, <acronym>SGML</acronym> or
+<acronym>XML</acronym> for which the <acronym>DTD</acronym> and/or processing tools are
+not generally available, and the machine-generated <acronym>HTML</acronym>,
+PostScript or <acronym>PDF</acronym> produced by some word processors for
+output purposes only.
+
+ <p>The &ldquo;Title Page&rdquo; means, for a printed book, the title page itself,
+plus such following pages as are needed to hold, legibly, the material
+this License requires to appear in the title page. For works in
+formats which do not have any title page as such, &ldquo;Title Page&rdquo; means
+the text near the most prominent appearance of the work's title,
+preceding the beginning of the body of the text.
+
+ <p>A section &ldquo;Entitled XYZ&rdquo; means a named subunit of the Document whose
+title either is precisely XYZ or contains XYZ in parentheses following
+text that translates XYZ in another language. (Here XYZ stands for a
+specific section name mentioned below, such as &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, &ldquo;Endorsements&rdquo;, or &ldquo;History&rdquo;.) To &ldquo;Preserve the Title&rdquo;
+of such a section when you modify the Document means that it remains a
+section &ldquo;Entitled XYZ&rdquo; according to this definition.
+
+ <p>The Document may include Warranty Disclaimers next to the notice which
+states that this License applies to the Document. These Warranty
+Disclaimers are considered to be included by reference in this
+License, but only as regards disclaiming warranties: any other
+implication that these Warranty Disclaimers may have is void and has
+no effect on the meaning of this License.
+
+ <li>VERBATIM COPYING
+
+ <p>You may copy and distribute the Document in any medium, either
+commercially or noncommercially, provided that this License, the
+copyright notices, and the license notice saying this License applies
+to the Document are reproduced in all copies, and that you add no other
+conditions whatsoever to those of this License. You may not use
+technical measures to obstruct or control the reading or further
+copying of the copies you make or distribute. However, you may accept
+compensation in exchange for copies. If you distribute a large enough
+number of copies you must also follow the conditions in section 3.
+
+ <p>You may also lend copies, under the same conditions stated above, and
+you may publicly display copies.
+
+ <li>COPYING IN QUANTITY
+
+ <p>If you publish printed copies (or copies in media that commonly have
+printed covers) of the Document, numbering more than 100, and the
+Document's license notice requires Cover Texts, you must enclose the
+copies in covers that carry, clearly and legibly, all these Cover
+Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
+the back cover. Both covers must also clearly and legibly identify
+you as the publisher of these copies. The front cover must present
+the full title with all words of the title equally prominent and
+visible. You may add other material on the covers in addition.
+Copying with changes limited to the covers, as long as they preserve
+the title of the Document and satisfy these conditions, can be treated
+as verbatim copying in other respects.
+
+ <p>If the required texts for either cover are too voluminous to fit
+legibly, you should put the first ones listed (as many as fit
+reasonably) on the actual cover, and continue the rest onto adjacent
+pages.
+
+ <p>If you publish or distribute Opaque copies of the Document numbering
+more than 100, you must either include a machine-readable Transparent
+copy along with each Opaque copy, or state in or with each Opaque copy
+a computer-network location from which the general network-using
+public has access to download using public-standard network protocols
+a complete Transparent copy of the Document, free of added material.
+If you use the latter option, you must take reasonably prudent steps,
+when you begin distribution of Opaque copies in quantity, to ensure
+that this Transparent copy will remain thus accessible at the stated
+location until at least one year after the last time you distribute an
+Opaque copy (directly or through your agents or retailers) of that
+edition to the public.
+
+ <p>It is requested, but not required, that you contact the authors of the
+Document well before redistributing any large number of copies, to give
+them a chance to provide you with an updated version of the Document.
+
+ <li>MODIFICATIONS
+
+ <p>You may copy and distribute a Modified Version of the Document under
+the conditions of sections 2 and 3 above, provided that you release
+the Modified Version under precisely this License, with the Modified
+Version filling the role of the Document, thus licensing distribution
+and modification of the Modified Version to whoever possesses a copy
+of it. In addition, you must do these things in the Modified Version:
+
+ <ol type=A start=1>
+<li>Use in the Title Page (and on the covers, if any) a title distinct
+from that of the Document, and from those of previous versions
+(which should, if there were any, be listed in the History section
+of the Document). You may use the same title as a previous version
+if the original publisher of that version gives permission.
+
+ <li>List on the Title Page, as authors, one or more persons or entities
+responsible for authorship of the modifications in the Modified
+Version, together with at least five of the principal authors of the
+Document (all of its principal authors, if it has fewer than five),
+unless they release you from this requirement.
+
+ <li>State on the Title page the name of the publisher of the
+Modified Version, as the publisher.
+
+ <li>Preserve all the copyright notices of the Document.
+
+ <li>Add an appropriate copyright notice for your modifications
+adjacent to the other copyright notices.
+
+ <li>Include, immediately after the copyright notices, a license notice
+giving the public permission to use the Modified Version under the
+terms of this License, in the form shown in the Addendum below.
+
+ <li>Preserve in that license notice the full lists of Invariant Sections
+and required Cover Texts given in the Document's license notice.
+
+ <li>Include an unaltered copy of this License.
+
+ <li>Preserve the section Entitled &ldquo;History&rdquo;, Preserve its Title, and add
+to it an item stating at least the title, year, new authors, and
+publisher of the Modified Version as given on the Title Page. If
+there is no section Entitled &ldquo;History&rdquo; in the Document, create one
+stating the title, year, authors, and publisher of the Document as
+given on its Title Page, then add an item describing the Modified
+Version as stated in the previous sentence.
+
+ <li>Preserve the network location, if any, given in the Document for
+public access to a Transparent copy of the Document, and likewise
+the network locations given in the Document for previous versions
+it was based on. These may be placed in the &ldquo;History&rdquo; section.
+You may omit a network location for a work that was published at
+least four years before the Document itself, or if the original
+publisher of the version it refers to gives permission.
+
+ <li>For any section Entitled &ldquo;Acknowledgements&rdquo; or &ldquo;Dedications&rdquo;, Preserve
+the Title of the section, and preserve in the section all the
+substance and tone of each of the contributor acknowledgements and/or
+dedications given therein.
+
+ <li>Preserve all the Invariant Sections of the Document,
+unaltered in their text and in their titles. Section numbers
+or the equivalent are not considered part of the section titles.
+
+ <li>Delete any section Entitled &ldquo;Endorsements&rdquo;. Such a section
+may not be included in the Modified Version.
+
+ <li>Do not retitle any existing section to be Entitled &ldquo;Endorsements&rdquo; or
+to conflict in title with any Invariant Section.
+
+ <li>Preserve any Warranty Disclaimers.
+ </ol>
+
+ <p>If the Modified Version includes new front-matter sections or
+appendices that qualify as Secondary Sections and contain no material
+copied from the Document, you may at your option designate some or all
+of these sections as invariant. To do this, add their titles to the
+list of Invariant Sections in the Modified Version's license notice.
+These titles must be distinct from any other section titles.
+
+ <p>You may add a section Entitled &ldquo;Endorsements&rdquo;, provided it contains
+nothing but endorsements of your Modified Version by various
+parties&mdash;for example, statements of peer review or that the text has
+been approved by an organization as the authoritative definition of a
+standard.
+
+ <p>You may add a passage of up to five words as a Front-Cover Text, and a
+passage of up to 25 words as a Back-Cover Text, to the end of the list
+of Cover Texts in the Modified Version. Only one passage of
+Front-Cover Text and one of Back-Cover Text may be added by (or
+through arrangements made by) any one entity. If the Document already
+includes a cover text for the same cover, previously added by you or
+by arrangement made by the same entity you are acting on behalf of,
+you may not add another; but you may replace the old one, on explicit
+permission from the previous publisher that added the old one.
+
+ <p>The author(s) and publisher(s) of the Document do not by this License
+give permission to use their names for publicity for or to assert or
+imply endorsement of any Modified Version.
+
+ <li>COMBINING DOCUMENTS
+
+ <p>You may combine the Document with other documents released under this
+License, under the terms defined in section 4 above for modified
+versions, provided that you include in the combination all of the
+Invariant Sections of all of the original documents, unmodified, and
+list them all as Invariant Sections of your combined work in its
+license notice, and that you preserve all their Warranty Disclaimers.
+
+ <p>The combined work need only contain one copy of this License, and
+multiple identical Invariant Sections may be replaced with a single
+copy. If there are multiple Invariant Sections with the same name but
+different contents, make the title of each such section unique by
+adding at the end of it, in parentheses, the name of the original
+author or publisher of that section if known, or else a unique number.
+Make the same adjustment to the section titles in the list of
+Invariant Sections in the license notice of the combined work.
+
+ <p>In the combination, you must combine any sections Entitled &ldquo;History&rdquo;
+in the various original documents, forming one section Entitled
+&ldquo;History&rdquo;; likewise combine any sections Entitled &ldquo;Acknowledgements&rdquo;,
+and any sections Entitled &ldquo;Dedications&rdquo;. You must delete all
+sections Entitled &ldquo;Endorsements.&rdquo;
+
+ <li>COLLECTIONS OF DOCUMENTS
+
+ <p>You may make a collection consisting of the Document and other documents
+released under this License, and replace the individual copies of this
+License in the various documents with a single copy that is included in
+the collection, provided that you follow the rules of this License for
+verbatim copying of each of the documents in all other respects.
+
+ <p>You may extract a single document from such a collection, and distribute
+it individually under this License, provided you insert a copy of this
+License into the extracted document, and follow this License in all
+other respects regarding verbatim copying of that document.
+
+ <li>AGGREGATION WITH INDEPENDENT WORKS
+
+ <p>A compilation of the Document or its derivatives with other separate
+and independent documents or works, in or on a volume of a storage or
+distribution medium, is called an &ldquo;aggregate&rdquo; if the copyright
+resulting from the compilation is not used to limit the legal rights
+of the compilation's users beyond what the individual works permit.
+When the Document is included in an aggregate, this License does not
+apply to the other works in the aggregate which are not themselves
+derivative works of the Document.
+
+ <p>If the Cover Text requirement of section 3 is applicable to these
+copies of the Document, then if the Document is less than one half of
+the entire aggregate, the Document's Cover Texts may be placed on
+covers that bracket the Document within the aggregate, or the
+electronic equivalent of covers if the Document is in electronic form.
+Otherwise they must appear on printed covers that bracket the whole
+aggregate.
+
+ <li>TRANSLATION
+
+ <p>Translation is considered a kind of modification, so you may
+distribute translations of the Document under the terms of section 4.
+Replacing Invariant Sections with translations requires special
+permission from their copyright holders, but you may include
+translations of some or all Invariant Sections in addition to the
+original versions of these Invariant Sections. You may include a
+translation of this License, and all the license notices in the
+Document, and any Warranty Disclaimers, provided that you also include
+the original English version of this License and the original versions
+of those notices and disclaimers. In case of a disagreement between
+the translation and the original version of this License or a notice
+or disclaimer, the original version will prevail.
+
+ <p>If a section in the Document is Entitled &ldquo;Acknowledgements&rdquo;,
+&ldquo;Dedications&rdquo;, or &ldquo;History&rdquo;, the requirement (section 4) to Preserve
+its Title (section 1) will typically require changing the actual
+title.
+
+ <li>TERMINATION
+
+ <p>You may not copy, modify, sublicense, or distribute the Document except
+as expressly provided for under this License. Any other attempt to
+copy, modify, sublicense or distribute the Document 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.
+
+ <li>FUTURE REVISIONS OF THIS LICENSE
+
+ <p>The Free Software Foundation may publish new, revised versions
+of the GNU Free Documentation 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. See
+<a href="http://www.gnu.org/copyleft/">http://www.gnu.org/copyleft/</a>.
+
+ <p>Each version of the License is given a distinguishing version number.
+If the Document specifies that a particular numbered version of this
+License &ldquo;or any later version&rdquo; applies to it, you have the option of
+following the terms and conditions either of that specified version or
+of any later version that has been published (not as a draft) by the
+Free Software Foundation. If the Document does not specify a version
+number of this License, you may choose any version ever published (not
+as a draft) by the Free Software Foundation.
+ </ol>
+
+<h4 class="appendixsubsec">G.1.1 ADDENDUM: How to use this License for your documents</h4>
+
+<p>To use this License in a document you have written, include a copy of
+the License in the document and put the following copyright and
+license notices just after the title page:
+
+<pre class="smallexample"> Copyright (C) <var>year</var> <var>your name</var>.
+ Permission is granted to copy, distribute and/or modify this document
+ 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, no Front-Cover Texts, and no Back-Cover
+ Texts. A copy of the license is included in the section entitled ``GNU
+ Free Documentation License''.
+</pre>
+ <p>If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
+replace the &ldquo;with...Texts.&rdquo; line with this:
+
+<pre class="smallexample"> with the Invariant Sections being <var>list their titles</var>, with
+ the Front-Cover Texts being <var>list</var>, and with the Back-Cover Texts
+ being <var>list</var>.
+</pre>
+ <p>If you have Invariant Sections without Cover Texts, or some other
+combination of the three, merge those two alternatives to suit the
+situation.
+
+ <p>If your document contains nontrivial examples of program code, we
+recommend releasing these examples in parallel under your choice of
+free software license, such as the GNU General Public License,
+to permit their use in free software.
+
+<!-- Local Variables: -->
+<!-- ispell-local-pdict: "ispell-dict" -->
+<!-- End: -->
+<div class="node">
+<p><hr>
+<a name="Command-and-Variable-Index"></a>Next:&nbsp;<a rel="next" accesskey="n" href="#Concept-Index">Concept Index</a>,
+Previous:&nbsp;<a rel="previous" accesskey="p" href="#Copying-This-Manual">Copying This Manual</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="unnumbered">Command and Variable Index</h2>
+
+<p>This is an alphabetical list of all the @-commands, assorted Emacs Lisp
+functions, and several variables. To make the list easier to use, the
+commands are listed without their preceding <span class="samp">@</span>.
+
+
+
+<ul class="index-fn" compact>
+<li><a href="#index-_0021-_0040r_007b_0028end-of-sentence_0029_007d-642"><code>! </code><span class="roman">(end of sentence)</span></a>: <a href="#Ending-a-Sentence">Ending a Sentence</a></li>
+<li><a href="#index-_0022-_0040r_007b_0028umlaut-accent_0029_007d-657"><code>&quot; </code><span class="roman">(umlaut accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0027-_0040r_007b_0028umlaut-accent_0029_007d-659"><code>' </code><span class="roman">(umlaut accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_002a-_0040r_007b_0028force-line-break_0029_007d-780"><code>* </code><span class="roman">(force line break)</span></a>: <a href="#Line-Breaks">Line Breaks</a></li>
+<li><a href="#index-_002c-_0040r_007b_0028cedilla-accent_0029_007d-669"><code>, </code><span class="roman">(cedilla accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_002d-_0040r_007b_0028discretionary-hyphen_0029_007d-786"><code>- </code><span class="roman">(discretionary hyphen)</span></a>: <a href="#_002d-and-hyphenation">- and hyphenation</a></li>
+<li><a href="#index-_002e--_0040r_007b_0028end-of-sentence_0029_007d-641"><code>. </code><span class="roman">(end of sentence)</span></a>: <a href="#Ending-a-Sentence">Ending a Sentence</a></li>
+<li><a href="#index-_002f-_0040r_007b_0028allow-line-break_0029_007d-781"><code>/ </code><span class="roman">(allow line break)</span></a>: <a href="#Line-Breaks">Line Breaks</a></li>
+<li><a href="#index-_003ccolon_003e-_0040r_007b_0028suppress-end_002dof_002dsentence-space_0029_007d-638"><code>&lt;colon&gt; </code><span class="roman">(suppress end-of-sentence space)</span></a>: <a href="#Not-Ending-a-Sentence">Not Ending a Sentence</a></li>
+<li><a href="#index-_003cnewline_003e-649"><code>&lt;newline&gt;</code></a>: <a href="#Multiple-Spaces">Multiple Spaces</a></li>
+<li><a href="#index-_003cspace_003e-647"><code>&lt;space&gt;</code></a>: <a href="#Multiple-Spaces">Multiple Spaces</a></li>
+<li><a href="#index-_003ctab_003e-648"><code>&lt;tab&gt;</code></a>: <a href="#Multiple-Spaces">Multiple Spaces</a></li>
+<li><a href="#index-_003d-_0040r_007b_0028macron-accent_0029_007d-661"><code>= </code><span class="roman">(macron accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_003f-_0040r_007b_0028end-of-sentence_0029_007d-643"><code>? </code><span class="roman">(end of sentence)</span></a>: <a href="#Ending-a-Sentence">Ending a Sentence</a></li>
+<li><a href="#index-_0040_0040-_0040r_007b_0028literal-_0040samp_007b_0040_0040_007d_0029_007d-626"><code>@ </code><span class="roman">(literal @)</span></a>: <a href="#Inserting-an-Atsign">Inserting an Atsign</a></li>
+<li><a href="#index-_005c-_0040r_007b_0028literal-_005c-in-_0040code_007b_0040_0040math_007d_0029_007d-753"><code>\ </code><span class="roman">(literal \ in </span><code>@math</code><span class="roman">)</span></a>: <a href="#math">math</a></li>
+<li><a href="#index-_005cemergencystretch-1030"><code>\emergencystretch</code></a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-_005cgdef-_0040r_007bwithin-_0040code_007b_0040_0040tex_007d_007d-897"><code>\gdef </code><span class="roman">within </span><code>@tex</code></a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-_005cinput-_0040r_007b_0028raw-_0040TeX_007b_007d-startup_0029_007d-76"><code>\input </code><span class="roman">(raw TeX startup)</span></a>: <a href="#Minimum">Minimum</a></li>
+<li><a href="#index-_005cmag-_0040r_007b_0028raw-_0040TeX_007b_007d-magnification_0029_007d-1061"><code>\mag </code><span class="roman">(raw TeX magnification)</span></a>: <a href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a></li>
+<li><a href="#index-_005e-_0040r_007b_0028circumflex-accent_0029_007d-663"><code>^ </code><span class="roman">(circumflex accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0060-_0040r_007b_0028grave-accent_0029_007d-665"><code>` </code><span class="roman">(grave accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-AA-695"><code>AA</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-aa-693"><code>aa</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-acronym-429"><code>acronym</code></a>: <a href="#acronym">acronym</a></li>
+<li><a href="#index-AE-699"><code>AE</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-ae-697"><code>ae</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-afourlatex-1046"><code>afourlatex</code></a>: <a href="#A4-Paper">A4 Paper</a></li>
+<li><a href="#index-afourpaper-1045"><code>afourpaper</code></a>: <a href="#A4-Paper">A4 Paper</a></li>
+<li><a href="#index-afourwide-1047"><code>afourwide</code></a>: <a href="#A4-Paper">A4 Paper</a></li>
+<li><a href="#index-alias-963"><code>alias</code></a>: <a href="#alias">alias</a></li>
+<li><a href="#index-anchor-332"><code>anchor</code></a>: <a href="#anchor">anchor</a></li>
+<li><a href="#index-appendix-276"><code>appendix</code></a>: <a href="#unnumbered-_0026-appendix">unnumbered &amp; appendix</a></li>
+<li><a href="#index-appendixsec-281"><code>appendixsec</code></a>: <a href="#unnumberedsec-appendixsec-heading">unnumberedsec appendixsec heading</a></li>
+<li><a href="#index-appendixsection-283"><code>appendixsection</code></a>: <a href="#unnumberedsec-appendixsec-heading">unnumberedsec appendixsec heading</a></li>
+<li><a href="#index-appendixsubsec-287"><code>appendixsubsec</code></a>: <a href="#unnumberedsubsec-appendixsubsec-subheading">unnumberedsubsec appendixsubsec subheading</a></li>
+<li><a href="#index-appendixsubsubsec-292"><code>appendixsubsubsec</code></a>: <a href="#subsubsection">subsubsection</a></li>
+<li><a href="#index-apply-871"><code>apply</code></a>: <a href="#Sample-Function-Definition">Sample Function Definition</a></li>
+<li><a href="#index-asis-516"><code>asis</code></a>: <a href="#table">table</a></li>
+<li><a href="#index-author-204"><code>author</code></a>: <a href="#title-subtitle-author">title subtitle author</a></li>
+<li><a href="#index-b-_0040r_007b_0028bold-font_0029_007d-449"><code>b </code><span class="roman">(bold font)</span></a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-bullet-741"><code>bullet</code></a>: <a href="#bullet">bullet</a></li>
+<li><a href="#index-bye-269"><code>bye</code></a>: <a href="#File-End">File End</a></li>
+<li><a href="#index-bye-263"><code>bye</code></a>: <a href="#Ending-a-File">Ending a File</a></li>
+<li><a href="#index-c-_0040r_007b_0028comment_0029_007d-68"><code>c </code><span class="roman">(comment)</span></a>: <a href="#Comments">Comments</a></li>
+<li><a href="#index-caption-548"><code>caption</code></a>: <a href="#caption-shortcaption">caption shortcaption</a></li>
+<li><a href="#index-cartouche-500"><code>cartouche</code></a>: <a href="#cartouche">cartouche</a></li>
+<li><a href="#index-center-200"><code>center</code></a>: <a href="#titlefont-center-sp">titlefont center sp</a></li>
+<li><a href="#index-centerchap-274"><code>centerchap</code></a>: <a href="#chapter">chapter</a></li>
+<li><a href="#index-chapheading-278"><code>chapheading</code></a>: <a href="#majorheading-_0026-chapheading">majorheading &amp; chapheading</a></li>
+<li><a href="#index-chapter-273"><code>chapter</code></a>: <a href="#chapter">chapter</a></li>
+<li><a href="#index-cite-428"><code>cite</code></a>: <a href="#cite">cite</a></li>
+<li><a href="#index-code-396"><code>code</code></a>: <a href="#code">code</a></li>
+<li><a href="#index-columnfractions-529"><code>columnfractions</code></a>: <a href="#Multitable-Column-Widths">Multitable Column Widths</a></li>
+<li><a href="#index-comma-632"><code>comma</code></a>: <a href="#Inserting-a-Comma">Inserting a Comma</a></li>
+<li><a href="#index-command-423"><code>command</code></a>: <a href="#command">command</a></li>
+<li><a href="#index-comment-67"><code>comment</code></a>: <a href="#Comments">Comments</a></li>
+<li><a href="#index-contents-218"><code>contents</code></a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-copying-180"><code>copying</code></a>: <a href="#copying">copying</a></li>
+<li><a href="#index-copyright-181"><code>copyright</code></a>: <a href="#copying">copying</a></li>
+<li><a href="#index-copyright-744"><code>copyright</code></a>: <a href="#copyright-symbol">copyright symbol</a></li>
+<li><a href="#index-cropmarks-1058"><code>cropmarks</code></a>: <a href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a></li>
+<li><a href="#index-defcodeindex-621"><code>defcodeindex</code></a>: <a href="#New-Indices">New Indices</a></li>
+<li><a href="#index-defcv-852"><code>defcv</code></a>: <a href="#Object_002dOriented-Variables">Object-Oriented Variables</a></li>
+<li><a href="#index-deffn-837"><code>deffn</code></a>: <a href="#Functions-Commands">Functions Commands</a></li>
+<li><a href="#index-deffnx-834"><code>deffnx</code></a>: <a href="#deffnx">deffnx</a></li>
+<li><a href="#index-defindex-620"><code>defindex</code></a>: <a href="#New-Indices">New Indices</a></li>
+<li><a href="#index-definfoenclose-966"><code>definfoenclose</code></a>: <a href="#definfoenclose">definfoenclose</a></li>
+<li><a href="#index-defivar-856"><code>defivar</code></a>: <a href="#Object_002dOriented-Variables">Object-Oriented Variables</a></li>
+<li><a href="#index-defmac-839"><code>defmac</code></a>: <a href="#Functions-Commands">Functions Commands</a></li>
+<li><a href="#index-defmethod-864"><code>defmethod</code></a>: <a href="#Object_002dOriented-Methods">Object-Oriented Methods</a></li>
+<li><a href="#index-defop-861"><code>defop</code></a>: <a href="#Object_002dOriented-Methods">Object-Oriented Methods</a></li>
+<li><a href="#index-defopt-843"><code>defopt</code></a>: <a href="#Variables-Commands">Variables Commands</a></li>
+<li><a href="#index-defspec-840"><code>defspec</code></a>: <a href="#Functions-Commands">Functions Commands</a></li>
+<li><a href="#index-deftp-849"><code>deftp</code></a>: <a href="#Data-Types">Data Types</a></li>
+<li><a href="#index-deftypecv-854"><code>deftypecv</code></a>: <a href="#Object_002dOriented-Variables">Object-Oriented Variables</a></li>
+<li><a href="#index-deftypefn-845"><code>deftypefn</code></a>: <a href="#Typed-Functions">Typed Functions</a></li>
+<li><a href="#index-deftypefun-846"><code>deftypefun</code></a>: <a href="#Typed-Functions">Typed Functions</a></li>
+<li><a href="#index-deftypeivar-858"><code>deftypeivar</code></a>: <a href="#Object_002dOriented-Variables">Object-Oriented Variables</a></li>
+<li><a href="#index-deftypeop-862"><code>deftypeop</code></a>: <a href="#Object_002dOriented-Methods">Object-Oriented Methods</a></li>
+<li><a href="#index-deftypevar-848"><code>deftypevar</code></a>: <a href="#Typed-Variables">Typed Variables</a></li>
+<li><a href="#index-deftypevr-847"><code>deftypevr</code></a>: <a href="#Typed-Variables">Typed Variables</a></li>
+<li><a href="#index-defun-838"><code>defun</code></a>: <a href="#Functions-Commands">Functions Commands</a></li>
+<li><a href="#index-defvar-842"><code>defvar</code></a>: <a href="#Variables-Commands">Variables Commands</a></li>
+<li><a href="#index-defvr-841"><code>defvr</code></a>: <a href="#Variables-Commands">Variables Commands</a></li>
+<li><a href="#index-dfn-427"><code>dfn</code></a>: <a href="#dfn">dfn</a></li>
+<li><a href="#index-dircategory-1175"><code>dircategory</code></a>: <a href="#Installing-Dir-Entries">Installing Dir Entries</a></li>
+<li><a href="#index-direntry-1176"><code>direntry</code></a>: <a href="#Installing-Dir-Entries">Installing Dir Entries</a></li>
+<li><a href="#index-display-482"><code>display</code></a>: <a href="#display">display</a></li>
+<li><a href="#index-dmn-653"><code>dmn</code></a>: <a href="#dmn">dmn</a></li>
+<li><a href="#index-docbook-904"><code>docbook</code></a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-documentdescription-238"><code>documentdescription</code></a>: <a href="#documentdescription">documentdescription</a></li>
+<li><a href="#index-documentencoding-919"><code>documentencoding</code></a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-documentlanguage-912"><code>documentlanguage</code></a>: <a href="#documentlanguage">documentlanguage</a></li>
+<li><a href="#index-dotaccent-671"><code>dotaccent</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-dotless-701"><code>dotless</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-dots-737"><code>dots</code></a>: <a href="#dots">dots</a></li>
+<li><a href="#index-email-438"><code>email</code></a>: <a href="#email">email</a></li>
+<li><a href="#index-emph-442"><code>emph</code></a>: <a href="#emph-_0026-strong">emph &amp; strong</a></li>
+<li><a href="#index-end-506"><code>end</code></a>: <a href="#Introducing-Lists">Introducing Lists</a></li>
+<li><a href="#index-end-459"><code>end</code></a>: <a href="#Quotations-and-Examples">Quotations and Examples</a></li>
+<li><a href="#index-end-titlepage-210"><code>end titlepage</code></a>: <a href="#end-titlepage">end titlepage</a></li>
+<li><a href="#index-enddots-738"><code>enddots</code></a>: <a href="#dots">dots</a></li>
+<li><a href="#index-enumerate-512"><code>enumerate</code></a>: <a href="#enumerate">enumerate</a></li>
+<li><a href="#index-env-421"><code>env</code></a>: <a href="#env">env</a></li>
+<li><a href="#index-equiv-771"><code>equiv</code></a>: <a href="#Equivalence">Equivalence</a></li>
+<li><a href="#index-error-769"><code>error</code></a>: <a href="#Error-Glyph">Error Glyph</a></li>
+<li><a href="#index-evenfooting-1276"><code>evenfooting</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-evenheading-1275"><code>evenheading</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-everyfooting-1274"><code>everyfooting</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-everyheading-1273"><code>everyheading</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-example-466"><code>example</code></a>: <a href="#example">example</a></li>
+<li><a href="#index-exampleindent-254"><code>exampleindent</code></a>: <a href="#exampleindent">exampleindent</a></li>
+<li><a href="#index-exclamdown-691"><code>exclamdown</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-exdent-487"><code>exdent</code></a>: <a href="#exdent">exdent</a></li>
+<li><a href="#index-expansion-765"><code>expansion</code></a>: <a href="#expansion">expansion</a></li>
+<li><a href="#index-file-422"><code>file</code></a>: <a href="#file">file</a></li>
+<li><a href="#index-filll-_0040r_007b_0040TeX_007b_007d-dimension_007d-209"><code>filll </code><span class="roman">TeX dimension</span></a>: <a href="#Copyright">Copyright</a></li>
+<li><a href="#index-finalout-1035"><code>finalout</code></a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-firstparagraphindent-250"><code>firstparagraphindent</code></a>: <a href="#firstparagraphindent">firstparagraphindent</a></li>
+<li><a href="#index-float-542"><code>float</code></a>: <a href="#float">float</a></li>
+<li><a href="#index-flushleft-488"><code>flushleft</code></a>: <a href="#flushleft-_0026-flushright">flushleft &amp; flushright</a></li>
+<li><a href="#index-flushright-489"><code>flushright</code></a>: <a href="#flushleft-_0026-flushright">flushleft &amp; flushright</a></li>
+<li><a href="#index-fn_002dname-822"><code>fn-name</code></a>: <a href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a></li>
+<li><a href="#index-foobar-830"><code>foobar</code></a>: <a href="#Optional-Arguments">Optional Arguments</a></li>
+<li><a href="#index-footnote-587"><code>footnote</code></a>: <a href="#Footnotes">Footnotes</a></li>
+<li><a href="#index-footnotestyle-590"><code>footnotestyle</code></a>: <a href="#Footnote-Styles">Footnote Styles</a></li>
+<li><a href="#index-format-484"><code>format</code></a>: <a href="#format">format</a></li>
+<li><a href="#index-forward_002dword-817"><code>forward-word</code></a>: <a href="#Def-Cmd-Template">Def Cmd Template</a></li>
+<li><a href="#index-ftable-520"><code>ftable</code></a>: <a href="#ftable-vtable">ftable vtable</a></li>
+<li><a href="#index-group-811"><code>group</code></a>: <a href="#group">group</a></li>
+<li><a href="#index-H-_0040r_007b_0028Hungarian-umlaut-accent_0029_007d-673"><code>H </code><span class="roman">(Hungarian umlaut accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-hbox-1029"><code>hbox</code></a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-heading-282"><code>heading</code></a>: <a href="#unnumberedsec-appendixsec-heading">unnumberedsec appendixsec heading</a></li>
+<li><a href="#index-headings-214"><code>headings</code></a>: <a href="#headings-on-off">headings on off</a></li>
+<li><a href="#index-headitem-536"><code>headitem</code></a>: <a href="#Multitable-Rows">Multitable Rows</a></li>
+<li><a href="#index-headword-968"><code>headword</code></a>: <a href="#definfoenclose">definfoenclose</a></li>
+<li><a href="#index-html-900"><code>html</code></a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-hyphenation-787"><code>hyphenation</code></a>: <a href="#_002d-and-hyphenation">- and hyphenation</a></li>
+<li><a href="#index-i-_0040r_007b_0028italic-font_0029_007d-448"><code>i </code><span class="roman">(italic font)</span></a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-ifclear-908"><code>ifclear</code></a>: <a href="#ifset-ifclear">ifset ifclear</a></li>
+<li><a href="#index-ifdocbook-903"><code>ifdocbook</code></a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-ifdocbook-877"><code>ifdocbook</code></a>: <a href="#Conditional-Commands">Conditional Commands</a></li>
+<li><a href="#index-ifhtml-899"><code>ifhtml</code></a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-ifhtml-878"><code>ifhtml</code></a>: <a href="#Conditional-Commands">Conditional Commands</a></li>
+<li><a href="#index-ifinfo-876"><code>ifinfo</code></a>: <a href="#Conditional-Commands">Conditional Commands</a></li>
+<li><a href="#index-ifnotdocbook-882"><code>ifnotdocbook</code></a>: <a href="#Conditional-Not-Commands">Conditional Not Commands</a></li>
+<li><a href="#index-ifnothtml-883"><code>ifnothtml</code></a>: <a href="#Conditional-Not-Commands">Conditional Not Commands</a></li>
+<li><a href="#index-ifnotinfo-884"><code>ifnotinfo</code></a>: <a href="#Conditional-Not-Commands">Conditional Not Commands</a></li>
+<li><a href="#index-ifnotplaintext-885"><code>ifnotplaintext</code></a>: <a href="#Conditional-Not-Commands">Conditional Not Commands</a></li>
+<li><a href="#index-ifnottex-886"><code>ifnottex</code></a>: <a href="#Conditional-Not-Commands">Conditional Not Commands</a></li>
+<li><a href="#index-ifnotxml-887"><code>ifnotxml</code></a>: <a href="#Conditional-Not-Commands">Conditional Not Commands</a></li>
+<li><a href="#index-ifplaintext-879"><code>ifplaintext</code></a>: <a href="#Conditional-Commands">Conditional Commands</a></li>
+<li><a href="#index-ifset-906"><code>ifset</code></a>: <a href="#ifset-ifclear">ifset ifclear</a></li>
+<li><a href="#index-iftex-880"><code>iftex</code></a>: <a href="#Conditional-Commands">Conditional Commands</a></li>
+<li><a href="#index-ifxml-901"><code>ifxml</code></a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-ifxml-881"><code>ifxml</code></a>: <a href="#Conditional-Commands">Conditional Commands</a></li>
+<li><a href="#index-ignore-71"><code>ignore</code></a>: <a href="#Comments">Comments</a></li>
+<li><a href="#index-image-558"><code>image</code></a>: <a href="#Images">Images</a></li>
+<li><a href="#index-include-1261"><code>include</code></a>: <a href="#Using-Include-Files">Using Include Files</a></li>
+<li><a href="#index-indent-499"><code>indent</code></a>: <a href="#indent">indent</a></li>
+<li><a href="#index-indicateurl-435"><code>indicateurl</code></a>: <a href="#indicateurl">indicateurl</a></li>
+<li><a href="#index-Info_002dvalidate-1300"><code>Info-validate</code></a>: <a href="#Running-Info_002dValidate">Running Info-Validate</a></li>
+<li><a href="#index-inforef-382"><code>inforef</code></a>: <a href="#inforef">inforef</a></li>
+<li><a href="#index-insertcopying-187"><code>insertcopying</code></a>: <a href="#insertcopying">insertcopying</a></li>
+<li><a href="#index-isearch_002dbackward-836"><code>isearch-backward</code></a>: <a href="#deffnx">deffnx</a></li>
+<li><a href="#index-isearch_002dforward-835"><code>isearch-forward</code></a>: <a href="#deffnx">deffnx</a></li>
+<li><a href="#index-item-534"><code>item</code></a>: <a href="#Multitable-Rows">Multitable Rows</a></li>
+<li><a href="#index-item-517"><code>item</code></a>: <a href="#table">table</a></li>
+<li><a href="#index-item-510"><code>item</code></a>: <a href="#itemize">itemize</a></li>
+<li><a href="#index-itemize-508"><code>itemize</code></a>: <a href="#itemize">itemize</a></li>
+<li><a href="#index-itemx-523"><code>itemx</code></a>: <a href="#itemx">itemx</a></li>
+<li><a href="#index-kbd-402"><code>kbd</code></a>: <a href="#kbd">kbd</a></li>
+<li><a href="#index-kbdinputstyle-406"><code>kbdinputstyle</code></a>: <a href="#kbd">kbd</a></li>
+<li><a href="#index-key-410"><code>key</code></a>: <a href="#key">key</a></li>
+<li><a href="#index-l-705"><code>l</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-L-707"><code>L</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-LaTeX-743"><code>LaTeX</code></a>: <a href="#tex">tex</a></li>
+<li><a href="#index-lisp-472"><code>lisp</code></a>: <a href="#lisp">lisp</a></li>
+<li><a href="#index-listoffloats-552"><code>listoffloats</code></a>: <a href="#listoffloats">listoffloats</a></li>
+<li><a href="#index-lowersections-295"><code>lowersections</code></a>: <a href="#Raise_002flower-sections">Raise/lower sections</a></li>
+<li><a href="#index-macro-937"><code>macro</code></a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-majorheading-277"><code>majorheading</code></a>: <a href="#majorheading-_0026-chapheading">majorheading &amp; chapheading</a></li>
+<li><a href="#index-makeinfo_002dbuffer-1144"><code>makeinfo-buffer</code></a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-makeinfo_002dkill_002djob-1148"><code>makeinfo-kill-job</code></a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-makeinfo_002drecenter_002doutput_002dbuffer-1149"><code>makeinfo-recenter-output-buffer</code></a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-makeinfo_002dregion-1143"><code>makeinfo-region</code></a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-math-750"><code>math</code></a>: <a href="#math">math</a></li>
+<li><a href="#index-menu-337"><code>menu</code></a>: <a href="#Menus">Menus</a></li>
+<li><a href="#index-minus-747"><code>minus</code></a>: <a href="#minus">minus</a></li>
+<li><a href="#index-multitable-525"><code>multitable</code></a>: <a href="#Multi_002dcolumn-Tables">Multi-column Tables</a></li>
+<li><a href="#index-need-813"><code>need</code></a>: <a href="#need">need</a></li>
+<li><a href="#index-next_002derror-1147"><code>next-error</code></a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-node-301"><code>node</code></a>: <a href="#node">node</a></li>
+<li><a href="#index-noindent-495"><code>noindent</code></a>: <a href="#noindent">noindent</a></li>
+<li><a href="#index-novalidate-987"><code>novalidate</code></a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-o-709"><code>o</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-O-711"><code>O</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-occur-1299"><code>occur</code></a>: <a href="#Using-occur">Using occur</a></li>
+<li><a href="#index-occur_002dmode_002dgoto_002doccurrence-125"><code>occur-mode-goto-occurrence</code></a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-oddfooting-1278"><code>oddfooting</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-oddheading-1277"><code>oddheading</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-oe-713"><code>oe</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-OE-715"><code>OE</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-option-426"><code>option</code></a>: <a href="#option">option</a></li>
+<li><a href="#index-ordf-720"><code>ordf</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-ordm-723"><code>ordm</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-page-807"><code>page</code></a>: <a href="#page">page</a></li>
+<li><a href="#index-page_0040r_007b_002c-within-_0040code_007b_0040_0040titlepage_007d_007d-195"><code>page</code><span class="roman">, within </span><code>@titlepage</code></a>: <a href="#titlepage">titlepage</a></li>
+<li><a href="#index-pagesizes-1048"><code>pagesizes</code></a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-paragraphindent-244"><code>paragraphindent</code></a>: <a href="#paragraphindent">paragraphindent</a></li>
+<li><a href="#index-phoo-967"><code>phoo</code></a>: <a href="#definfoenclose">definfoenclose</a></li>
+<li><a href="#index-point-773"><code>point</code></a>: <a href="#Point-Glyph">Point Glyph</a></li>
+<li><a href="#index-pounds-746"><code>pounds</code></a>: <a href="#pounds">pounds</a></li>
+<li><a href="#index-print-767"><code>print</code></a>: <a href="#Print-Glyph">Print Glyph</a></li>
+<li><a href="#index-printindex-268"><code>printindex</code></a>: <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a></li>
+<li><a href="#index-pxref-378"><code>pxref</code></a>: <a href="#pxref">pxref</a></li>
+<li><a href="#index-questiondown-689"><code>questiondown</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-quotation-461"><code>quotation</code></a>: <a href="#quotation">quotation</a></li>
+<li><a href="#index-r-_0040r_007b_0028roman-font_0029_007d-451"><code>r </code><span class="roman">(roman font)</span></a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-raisesections-294"><code>raisesections</code></a>: <a href="#Raise_002flower-sections">Raise/lower sections</a></li>
+<li><a href="#index-ref-373"><code>ref</code></a>: <a href="#ref">ref</a></li>
+<li><a href="#index-registeredsymbol-745"><code>registeredsymbol</code></a>: <a href="#registered-symbol">registered symbol</a></li>
+<li><a href="#index-result-762"><code>result</code></a>: <a href="#result">result</a></li>
+<li><a href="#index-ringaccent-675"><code>ringaccent</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-rmacro-948"><code>rmacro</code></a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-samp-416"><code>samp</code></a>: <a href="#samp">samp</a></li>
+<li><a href="#index-sc-_0040r_007b_0028small-caps-font_0029_007d-445"><code>sc </code><span class="roman">(small caps font)</span></a>: <a href="#Smallcaps">Smallcaps</a></li>
+<li><a href="#index-section-279"><code>section</code></a>: <a href="#section">section</a></li>
+<li><a href="#index-setchapternewpage-241"><code>setchapternewpage</code></a>: <a href="#setchapternewpage">setchapternewpage</a></li>
+<li><a href="#index-setcontentsaftertitlepage-221"><code>setcontentsaftertitlepage</code></a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-setfilename-167"><code>setfilename</code></a>: <a href="#setfilename">setfilename</a></li>
+<li><a href="#index-setshortcontentsaftertitlepage-222"><code>setshortcontentsaftertitlepage</code></a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-settitle-175"><code>settitle</code></a>: <a href="#settitle">settitle</a></li>
+<li><a href="#index-shortcaption-549"><code>shortcaption</code></a>: <a href="#caption-shortcaption">caption shortcaption</a></li>
+<li><a href="#index-shortcontents-220"><code>shortcontents</code></a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-shorttitlepage-196"><code>shorttitlepage</code></a>: <a href="#titlepage">titlepage</a></li>
+<li><a href="#index-smallbook-1036"><code>smallbook</code></a>: <a href="#smallbook">smallbook</a></li>
+<li><a href="#index-smalldisplay-477"><code>smalldisplay</code></a>: <a href="#small">small</a></li>
+<li><a href="#index-smalldisplay-483"><code>smalldisplay</code></a>: <a href="#display">display</a></li>
+<li><a href="#index-smallexample-478"><code>smallexample</code></a>: <a href="#small">small</a></li>
+<li><a href="#index-smallformat-485"><code>smallformat</code></a>: <a href="#format">format</a></li>
+<li><a href="#index-smallformat-479"><code>smallformat</code></a>: <a href="#small">small</a></li>
+<li><a href="#index-smalllisp-480"><code>smalllisp</code></a>: <a href="#small">small</a></li>
+<li><a href="#index-sp-_0040r_007b_0028line-spacing_0029_007d-802"><code>sp </code><span class="roman">(line spacing)</span></a>: <a href="#sp">sp</a></li>
+<li><a href="#index-sp-_0040r_007b_0028titlepage-line-spacing_0029_007d-201"><code>sp </code><span class="roman">(titlepage line spacing)</span></a>: <a href="#titlefont-center-sp">titlefont center sp</a></li>
+<li><a href="#index-ss-725"><code>ss</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-strong-443"><code>strong</code></a>: <a href="#emph-_0026-strong">emph &amp; strong</a></li>
+<li><a href="#index-subheading-288"><code>subheading</code></a>: <a href="#unnumberedsubsec-appendixsubsec-subheading">unnumberedsubsec appendixsubsec subheading</a></li>
+<li><a href="#index-subsection-284"><code>subsection</code></a>: <a href="#subsection">subsection</a></li>
+<li><a href="#index-subsubheading-293"><code>subsubheading</code></a>: <a href="#subsubsection">subsubsection</a></li>
+<li><a href="#index-subsubsection-290"><code>subsubsection</code></a>: <a href="#subsubsection">subsubsection</a></li>
+<li><a href="#index-subtitle-203"><code>subtitle</code></a>: <a href="#title-subtitle-author">title subtitle author</a></li>
+<li><a href="#index-summarycontents-219"><code>summarycontents</code></a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-syncodeindex-610"><code>syncodeindex</code></a>: <a href="#syncodeindex">syncodeindex</a></li>
+<li><a href="#index-synindex-616"><code>synindex</code></a>: <a href="#synindex">synindex</a></li>
+<li><a href="#index-t-_0040r_007b_0028typewriter-font_0029_007d-450"><code>t </code><span class="roman">(typewriter font)</span></a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-tab-535"><code>tab</code></a>: <a href="#Multitable-Rows">Multitable Rows</a></li>
+<li><a href="#index-table-514"><code>table</code></a>: <a href="#Two_002dcolumn-Tables">Two-column Tables</a></li>
+<li><a href="#index-tex-896"><code>tex</code></a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-TeX-742"><code>TeX</code></a>: <a href="#tex">tex</a></li>
+<li><a href="#index-texinfo_002dall_002dmenus_002dupdate-136"><code>texinfo-all-menus-update</code></a>: <a href="#Updating-Commands">Updating Commands</a></li>
+<li><a href="#index-texinfo_002devery_002dnode_002dupdate-135"><code>texinfo-every-node-update</code></a>: <a href="#Updating-Commands">Updating Commands</a></li>
+<li><a href="#index-texinfo_002dformat_002dbuffer-1151"><code>texinfo-format-buffer</code></a>: <a href="#texinfo_002dformat-commands">texinfo-format commands</a></li>
+<li><a href="#index-texinfo_002dformat_002dbuffer-147"><code>texinfo-format-buffer</code></a>: <a href="#Info-Formatting">Info Formatting</a></li>
+<li><a href="#index-texinfo_002dformat_002dregion-1150"><code>texinfo-format-region</code></a>: <a href="#texinfo_002dformat-commands">texinfo-format commands</a></li>
+<li><a href="#index-texinfo_002dformat_002dregion-146"><code>texinfo-format-region</code></a>: <a href="#Info-Formatting">Info Formatting</a></li>
+<li><a href="#index-texinfo_002dindent_002dmenu_002ddescription-141"><code>texinfo-indent-menu-description</code></a>: <a href="#Other-Updating-Commands">Other Updating Commands</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040code-101"><code>texinfo-insert-@code</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040dfn-102"><code>texinfo-insert-@dfn</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040end-103"><code>texinfo-insert-@end</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040example-111"><code>texinfo-insert-@example</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040item-104"><code>texinfo-insert-@item</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040kbd-105"><code>texinfo-insert-@kbd</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040node-106"><code>texinfo-insert-@node</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040noindent-107"><code>texinfo-insert-@noindent</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040samp-108"><code>texinfo-insert-@samp</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040table-109"><code>texinfo-insert-@table</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002d_0040_0040var-110"><code>texinfo-insert-@var</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002dbraces-112"><code>texinfo-insert-braces</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dinsert_002dnode_002dlines-139"><code>texinfo-insert-node-lines</code></a>: <a href="#Other-Updating-Commands">Other Updating Commands</a></li>
+<li><a href="#index-texinfo_002dmake_002dmenu-134"><code>texinfo-make-menu</code></a>: <a href="#Updating-Commands">Updating Commands</a></li>
+<li><a href="#index-texinfo_002dmaster_002dmenu-132"><code>texinfo-master-menu</code></a>: <a href="#Updating-Commands">Updating Commands</a></li>
+<li><a href="#index-texinfo_002dmultiple_002dfiles_002dupdate-1262"><code>texinfo-multiple-files-update</code></a>: <a href="#texinfo_002dmultiple_002dfiles_002dupdate">texinfo-multiple-files-update</a></li>
+<li><a href="#index-texinfo_002dmultiple_002dfiles_002dupdate-_0040r_007b_0028in-brief_0029_007d-140"><code>texinfo-multiple-files-update </code><span class="roman">(in brief)</span></a>: <a href="#Other-Updating-Commands">Other Updating Commands</a></li>
+<li><a href="#index-texinfo_002dsequential_002dnode_002dupdate-142"><code>texinfo-sequential-node-update</code></a>: <a href="#Other-Updating-Commands">Other Updating Commands</a></li>
+<li><a href="#index-texinfo_002dshow_002dstructure-124"><code>texinfo-show-structure</code></a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-texinfo_002dshow_002dstructure-1297"><code>texinfo-show-structure</code></a>: <a href="#Using-texinfo_002dshow_002dstructure">Using texinfo-show-structure</a></li>
+<li><a href="#index-texinfo_002dstart_002dmenu_002ddescription-114"><code>texinfo-start-menu-description</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-texinfo_002dtex_002dbuffer-153"><code>texinfo-tex-buffer</code></a>: <a href="#Printing">Printing</a></li>
+<li><a href="#index-texinfo_002dtex_002dprint-155"><code>texinfo-tex-print</code></a>: <a href="#Printing">Printing</a></li>
+<li><a href="#index-texinfo_002dtex_002dregion-154"><code>texinfo-tex-region</code></a>: <a href="#Printing">Printing</a></li>
+<li><a href="#index-texinfo_002dupdate_002dnode-133"><code>texinfo-update-node</code></a>: <a href="#Updating-Commands">Updating Commands</a></li>
+<li><a href="#index-thischapter-1281"><code>thischapter</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-thischaptername-1280"><code>thischaptername</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-thisfile-1283"><code>thisfile</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-thispage-1279"><code>thispage</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-thistitle-1282"><code>thistitle</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-tie-_0040r_007b_0028unbreakable-interword-space_0029_007d-798"><code>tie </code><span class="roman">(unbreakable interword space)</span></a>: <a href="#tie">tie</a></li>
+<li><a href="#index-tieaccent-677"><code>tieaccent</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-title-202"><code>title</code></a>: <a href="#title-subtitle-author">title subtitle author</a></li>
+<li><a href="#index-titlefont-199"><code>titlefont</code></a>: <a href="#titlefont-center-sp">titlefont center sp</a></li>
+<li><a href="#index-titlepage-194"><code>titlepage</code></a>: <a href="#titlepage">titlepage</a></li>
+<li><a href="#index-today-1284"><code>today</code></a>: <a href="#Custom-Headings">Custom Headings</a></li>
+<li><a href="#index-top-227"><code>top</code></a>: <a href="#The-Top-Node">The Top Node</a></li>
+<li><a href="#index-top-_0040r_007b_0028_0040_0040_002dcommand_0029_007d-328"><code>top </code><span class="roman">(@-command)</span></a>: <a href="#makeinfo-top-command">makeinfo top command</a></li>
+<li><a href="#index-u-_0040r_007b_0028breve-accent_0029_007d-679"><code>u </code><span class="roman">(breve accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-ubaraccent-681"><code>ubaraccent</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-udotaccent-683"><code>udotaccent</code></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-unmacro-949"><code>unmacro</code></a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-unnumbered-275"><code>unnumbered</code></a>: <a href="#unnumbered-_0026-appendix">unnumbered &amp; appendix</a></li>
+<li><a href="#index-unnumberedsec-280"><code>unnumberedsec</code></a>: <a href="#unnumberedsec-appendixsec-heading">unnumberedsec appendixsec heading</a></li>
+<li><a href="#index-unnumberedsubsec-286"><code>unnumberedsubsec</code></a>: <a href="#unnumberedsubsec-appendixsubsec-subheading">unnumberedsubsec appendixsubsec subheading</a></li>
+<li><a href="#index-unnumberedsubsubsec-291"><code>unnumberedsubsubsec</code></a>: <a href="#subsubsection">subsubsection</a></li>
+<li><a href="#index-up_002dlist-113"><code>up-list</code></a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-uref-383"><code>uref</code></a>: <a href="#uref">uref</a></li>
+<li><a href="#index-v-_0040r_007b_0028check-accent_0029_007d-685"><code>v </code><span class="roman">(check accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-value-905"><code>value</code></a>: <a href="#set-value">set value</a></li>
+<li><a href="#index-var-420"><code>var</code></a>: <a href="#var">var</a></li>
+<li><a href="#index-verb-417"><code>verb</code></a>: <a href="#verb">verb</a></li>
+<li><a href="#index-verbatim-467"><code>verbatim</code></a>: <a href="#verbatim">verbatim</a></li>
+<li><a href="#index-verbatiminclude-471"><code>verbatiminclude</code></a>: <a href="#verbatiminclude">verbatiminclude</a></li>
+<li><a href="#index-vskip-_0040r_007b_0040TeX_007b_007d-vertical-skip_007d-208"><code>vskip </code><span class="roman">TeX vertical skip</span></a>: <a href="#Copyright">Copyright</a></li>
+<li><a href="#index-vtable-521"><code>vtable</code></a>: <a href="#ftable-vtable">ftable vtable</a></li>
+<li><a href="#index-w-_0040r_007b_0028prevent-line-break_0029_007d-790"><code>w </code><span class="roman">(prevent line break)</span></a>: <a href="#w">w</a></li>
+<li><a href="#index-xml-902"><code>xml</code></a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-xref-366"><code>xref</code></a>: <a href="#xref">xref</a></li>
+<li><a href="#index-_0040_007b-_0040r_007b_0028literal-_0040samp_007b_0040_007b_007d_0029_007d-629"><code>{ </code><span class="roman">(literal {)</span></a>: <a href="#Inserting-Braces">Inserting Braces</a></li>
+<li><a href="#index-_0040_007d-_0040r_007b_0028literal-_0040samp_007b_0040_007d_007d_0029_007d-630"><code>} </code><span class="roman">(literal })</span></a>: <a href="#Inserting-Braces">Inserting Braces</a></li>
+<li><a href="#index-_007e-_0040r_007b_0028tilde-accent_0029_007d-667"><code>~ </code><span class="roman">(tilde accent)</span></a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+</ul><div class="node">
+<p><hr>
+<a name="Concept-Index"></a>Previous:&nbsp;<a rel="previous" accesskey="p" href="#Command-and-Variable-Index">Command and Variable Index</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
+<br>
+</div>
+
+<h2 class="unnumbered">Concept Index</h2>
+
+
+
+<ul class="index-cp" compact>
+<li><a href="#index-_0040exclamdown_007b_007d-692">&iexcl;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0024Id-1245">$Id</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-_0024Id-expansion_002c-preventing-797">$Id expansion, preventing</a>: <a href="#w">w</a></li>
+<li><a href="#index-_0028dir_0029-as-Up-node-of-Top-node-325">(dir) as Up node of Top node</a>: <a href="#First-Node">First Node</a></li>
+<li><a href="#index-_002d_002dcommands_002din_002dnode_002dnames-1075"><code>--commands-in-node-names</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dcss_002dinclude-1076"><code>--css-include</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002ddelete-1185"><code>--delete</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002ddir_002dfile_003d_0040var_007bname_007d-1186"><code>--dir-file=</code><var>name</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002ddocbook-1077"><code>--docbook</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002denable_002dencoding-1078"><code>--enable-encoding</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002denable_002dencoding-924"><code>--enable-encoding</code></a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-_002d_002dentry_003d_0040var_007btext_007d-1188"><code>--entry=</code><var>text</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002derror_002dlimit_003d_0040var_007blimit_007d-1079"><code>--error-limit=</code><var>limit</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dfill_002dcolumn_003d_0040var_007bwidth_007d-1081"><code>--fill-column=</code><var>width</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dfootnote_002dstyle_0040r_007b_002c-ignored-in-HTML-output_007d-1206"><code>--footnote-style</code><span class="roman">, ignored in HTML output</span></a>: <a href="#HTML-Translation">HTML Translation</a></li>
+<li><a href="#index-_002d_002dfootnote_002dstyle_003d_0040var_007bstyle_007d-1083"><code>--footnote-style=</code><var>style</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dforce-1085"><code>--force</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dhelp-1087"><code>--help</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dhelp-1190"><code>--help</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002dhtml-1089"><code>--html</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002difdocbook-1091"><code>--ifdocbook</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002difhtml-1092"><code>--ifhtml</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002difinfo-1093"><code>--ifinfo</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002difplaintext-1094"><code>--ifplaintext</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002diftex-1095"><code>--iftex</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002difxml-1096"><code>--ifxml</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dinfo_002ddir_003d_0040var_007bdir_007d-1194"><code>--info-dir=</code><var>dir</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002dinfo_002dfile_003d_0040var_007bfile_007d-1192"><code>--info-file=</code><var>file</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002ditem_003d_0040var_007btext_007d-1196"><code>--item=</code><var>text</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002dmacro_002dexpand_003d_0040var_007bfile_007d-1097"><code>--macro-expand=</code><var>file</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002dheaders-1099"><code>--no-headers</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002difdocbook-1107"><code>--no-ifdocbook</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002difhtml-1108"><code>--no-ifhtml</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002difinfo-1109"><code>--no-ifinfo</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002difplaintext-1110"><code>--no-ifplaintext</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002diftex-1111"><code>--no-iftex</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002difxml-1112"><code>--no-ifxml</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002dnumber_002dfootnotes-1121"><code>--no-number-footnotes</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002dpointer_002dvalidate-1116"><code>--no-pointer-validate</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002dsplit-1113"><code>--no-split</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002dvalidate-1117"><code>--no-validate</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dno_002dwarn-1119"><code>--no-warn</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dnumber_002dsections-1120"><code>--number-sections</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002doutput_003d_0040var_007bfile_007d-1122"><code>--output=</code><var>file</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dparagraph_002dindent_003d_0040var_007bindent_007d-1125"><code>--paragraph-indent=</code><var>indent</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dquiet-1197"><code>--quiet</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002dreference_002dlimit_003d_0040var_007blimit_007d-1127"><code>--reference-limit=</code><var>limit</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dremove-1198"><code>--remove</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002dsection_003d_0040var_007bsec_007d-1200"><code>--section=</code><var>sec</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002dsplit_002dsize_003d_0040var_007bnum_007d-1129"><code>--split-size=</code><var>num</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dverbose-1130"><code>--verbose</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dversion-1131"><code>--version</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002d_002dversion-1202"><code>--version</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002d_002dxml-1133"><code>--xml</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002dD-_0040var_007bdir_007d-1195"><code>-D </code><var>dir</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002dd-_0040var_007bname_007d-1187"><code>-d </code><var>name</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002dD-_0040var_007bvar_007d-1074"><code>-D </code><var>var</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002dE-_0040var_007bfile_007d-1098"><code>-E </code><var>file</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002de-_0040var_007blimit_007d-1080"><code>-e </code><var>limit</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002de-_0040var_007btext_007d-1189"><code>-e </code><var>text</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002dF-1086"><code>-F</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002df-_0040var_007bwidth_007d-1082"><code>-f </code><var>width</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002dh-1088"><code>-h</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002dh-1191"><code>-h</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002dI-_0040var_007bdir_007d-1090"><code>-I </code><var>dir</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002di-_0040var_007bfile_007d-1193"><code>-i </code><var>file</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002do-_0040var_007bfile_007d-1123"><code>-o </code><var>file</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002dP-_0040var_007bdir_007d-1124"><code>-P </code><var>dir</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002dp-_0040var_007bindent_007d-1126"><code>-p </code><var>indent</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002dr-1199"><code>-r</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002dr-_0040var_007blimit_007d-1128"><code>-r </code><var>limit</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002ds-_0040var_007bsec_007d-1201"><code>-s </code><var>sec</var></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_002ds-_0040var_007bstyle_007d-1084"><code>-s </code><var>style</var></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002dV-1132"><code>-V</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_002dV-1203"><code>-V</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_0040b_007b_002ecshrc_007d-initialization-file-1014"><b>.cshrc</b> initialization file</a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-_0040b_007b_002eprofile_007d-initialization-file-1013"><b>.profile</b> initialization file</a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-_0040L_007b_007d-708">/L</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0040l_007b_007d-706">/l</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0040o_007b_007d-710">&oslash;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0040O_007b_007d-712">&Oslash;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-8_002dbit-characters_002c-in-HTML-cross_002dreferences-1225">8-bit characters, in HTML cross-references</a>: <a href="#HTML-Xref-8_002dbit-Character-Expansion">HTML Xref 8-bit Character Expansion</a></li>
+<li><a href="#index-_003cacronym_003e-tag-434">&lt;acronym&gt; tag</a>: <a href="#acronym">acronym</a></li>
+<li><a href="#index-_003cblockquote_003e-HTML-tag-463">&lt;blockquote&gt; HTML tag</a>: <a href="#quotation">quotation</a></li>
+<li><a href="#index-_003clineannotation_003e-Docbook-tag-458">&lt;lineannotation&gt; Docbook tag</a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-_0040code_007b_003cmeta_003e_007d-HTML-tag_002c-and-charset-specification-929"><code>&lt;meta&gt;</code> HTML tag, and charset specification</a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-_003cmeta_003e-HTML-tag_002c-and-document-description-237">&lt;meta&gt; HTML tag, and document description</a>: <a href="#documentdescription">documentdescription</a></li>
+<li><a href="#index-_003cnote_003e-Docbook-tag-462">&lt;note&gt; Docbook tag</a>: <a href="#quotation">quotation</a></li>
+<li><a href="#index-_003csmall_003e-tag-446">&lt;small&gt; tag</a>: <a href="#Smallcaps">Smallcaps</a></li>
+<li><a href="#index-_003cthead_003e-HTML-tag-538">&lt;thead&gt; HTML tag</a>: <a href="#Multitable-Rows">Multitable Rows</a></li>
+<li><a href="#index-_003ctitle_003e-HTML-tag-176">&lt;title&gt; HTML tag</a>: <a href="#settitle">settitle</a></li>
+<li><a href="#index-_003cURL_003a-convention_002c-not-used-388">&lt;URL: convention, not used</a>: <a href="#uref">uref</a></li>
+<li><a href="#index-_0040questiondown_007b_007d-690">&iquest;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0040samp_007b_0040_0040_007d-as-continuation-in-definition-commands-821"><span class="samp">@</span> as continuation in definition commands</a>: <a href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a></li>
+<li><a href="#index-_0040_0040_002dcommand-list-1231">@-command list</a>: <a href="#Command-List">Command List</a></li>
+<li><a href="#index-_0040_0040_002dcommand-syntax-1233">@-command syntax</a>: <a href="#Command-Syntax">Command Syntax</a></li>
+<li><a href="#index-_0040_0040_002dcommands-46">@-commands</a>: <a href="#Formatting-Commands">Formatting Commands</a></li>
+<li><a href="#index-_0040_0040_002dcommands-in-_0040_0040node_002c-limited-support-1138">@-commands in @node, limited support</a>: <a href="#Pointer-Validation">Pointer Validation</a></li>
+<li><a href="#index-_0040_0040_002dcommands-in-nodename-310">@-commands in nodename</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-_0040_0040import-specifications_002c-in-CSS-files-1214">@import specifications, in CSS files</a>: <a href="#HTML-CSS">HTML CSS</a></li>
+<li><a href="#index-_0040code_007b_0040_0040include_007d-file-sample-1267"><code>@include</code> file sample</a>: <a href="#Sample-Include-File">Sample Include File</a></li>
+<li><a href="#index-_0040code_007b_0040_0040menu_007d-parts-347"><code>@menu</code> parts</a>: <a href="#Menu-Parts">Menu Parts</a></li>
+<li><a href="#index-_0040code_007b_0040_0040node_007d-line-writing-304"><code>@node</code> line writing</a>: <a href="#Writing-a-Node">Writing a Node</a></li>
+<li><a href="#index-_0040_0040value-in-_0040_0040node-lines-1139">@value in @node lines</a>: <a href="#Pointer-Validation">Pointer Validation</a></li>
+<li><a href="#index-_0040code_007b_0040_0040w_007d_002c-for-blank-items-509"><code>@w</code>, for blank items</a>: <a href="#itemize">itemize</a></li>
+<li><a href="#index-_0040samp_007b_005cinput_007d-source-line-ignored-170"><span class="samp">\input</span> source line ignored</a>: <a href="#setfilename">setfilename</a></li>
+<li><a href="#index-_0040ordf_007b_007d-721">&ordf;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-A4-paper_002c-printing-on-1041">A4 paper, printing on</a>: <a href="#A4-Paper">A4 Paper</a></li>
+<li><a href="#index-A5-paper_002c-printing-on-1042">A5 paper, printing on</a>: <a href="#A4-Paper">A4 Paper</a></li>
+<li><a href="#index-_0040AA_007b_007d-696">&Aring;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0040aa_007b_007d-694">&aring;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Abbreviations-for-keys-414">Abbreviations for keys</a>: <a href="#key">key</a></li>
+<li><a href="#index-Abbreviations_002c-tagging-432">Abbreviations, tagging</a>: <a href="#acronym">acronym</a></li>
+<li><a href="#index-Abstract-of-document-236">Abstract of document</a>: <a href="#documentdescription">documentdescription</a></li>
+<li><a href="#index-Accents_002c-inserting-655">Accents, inserting</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Acronyms_002c-tagging-433">Acronyms, tagging</a>: <a href="#acronym">acronym</a></li>
+<li><a href="#index-Acute-accent-660">Acute accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Adding-a-new-Info-file-1160">Adding a new Info file</a>: <a href="#New-Info-File">New Info File</a></li>
+<li><a href="#index-_0040ae_007b_007d-698">&aelig;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0040AE_007b_007d-700">&AElig;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Aliases_002c-command-961">Aliases, command</a>: <a href="#alias">alias</a></li>
+<li><a href="#index-All_002dpermissive-copying-license-1258">All-permissive copying license</a>: <a href="#All_002dpermissive-Copying-License">All-permissive Copying License</a></li>
+<li><a href="#index-Allow-line-break-785">Allow line break</a>: <a href="#Line-Breaks">Line Breaks</a></li>
+<li><a href="#index-Alphabetical-_0040_0040_002dcommand-list-1229">Alphabetical @-command list</a>: <a href="#Command-List">Command List</a></li>
+<li><a href="#index-Alt-attribute-for-images-563">Alt attribute for images</a>: <a href="#Image-Syntax">Image Syntax</a></li>
+<li><a href="#index-Anchors-333">Anchors</a>: <a href="#anchor">anchor</a></li>
+<li><a href="#index-Another-Info-directory-1167">Another Info directory</a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-Arguments_002c-repeated-and-optional-827">Arguments, repeated and optional</a>: <a href="#Optional-Arguments">Optional Arguments</a></li>
+<li><a href="#index-ASCII-text-output-1101">ASCII text output</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-Aspect-ratio-of-images-572">Aspect ratio of images</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-autoexec_002ebat-1172"><code>autoexec.bat</code></a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-automake_0040r_007b_002c-and-version-info_007d-1250"><code>automake</code><span class="roman">, and version info</span></a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Automatic-pointer-creation-with-_0040code_007bmakeinfo_007d-331">Automatic pointer creation with <code>makeinfo</code></a>: <a href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a></li>
+<li><a href="#index-Automatically-insert-nodes_002c-menus-131">Automatically insert nodes, menus</a>: <a href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a></li>
+<li><a href="#index-Auxiliary-files_002c-avoiding-986">Auxiliary files, avoiding</a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-B5-paper_002c-printing-on-1055">B5 paper, printing on</a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-Back_002dend-output-formats-15">Back-end output formats</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Backslash-in-macros-944">Backslash in macros</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Backslash_002c-and-macros-956">Backslash, and macros</a>: <a href="#Invoking-Macros">Invoking Macros</a></li>
+<li><a href="#index-Badly-referenced-nodes-1305">Badly referenced nodes</a>: <a href="#Running-Info_002dValidate">Running Info-Validate</a></li>
+<li><a href="#index-Bastard-title-page-197">Bastard title page</a>: <a href="#titlepage">titlepage</a></li>
+<li><a href="#index-Batch-formatting-for-Info-1152">Batch formatting for Info</a>: <a href="#Batch-Formatting">Batch Formatting</a></li>
+<li><a href="#index-Beebe_002c-Nelson-27">Beebe, Nelson</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Beginning-a-Texinfo-file-156">Beginning a Texinfo file</a>: <a href="#Beginning-a-File">Beginning a File</a></li>
+<li><a href="#index-Beginning-line-of-a-Texinfo-file-164">Beginning line of a Texinfo file</a>: <a href="#First-Line">First Line</a></li>
+<li><a href="#index-Berry_002c-Karl-81">Berry, Karl</a>: <a href="#History">History</a></li>
+<li><a href="#index-Big-points-577">Big points</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Black-rectangle-in-hardcopy-1031">Black rectangle in hardcopy</a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-Blank-lines-804">Blank lines</a>: <a href="#sp">sp</a></li>
+<li><a href="#index-Blank-lines_002c-as-paragraph-separator-55">Blank lines, as paragraph separator</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Body-of-a-macro-940">Body of a macro</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Bold-font-453">Bold font</a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-Bolio-92">Bolio</a>: <a href="#History">History</a></li>
+<li><a href="#index-Book-characteristics_002c-printed-42">Book characteristics, printed</a>: <a href="#Printed-Books">Printed Books</a></li>
+<li><a href="#index-Book_002c-printing-small-1038">Book, printing small</a>: <a href="#smallbook">smallbook</a></li>
+<li><a href="#index-border_002dpattern-853"><code>border-pattern</code></a>: <a href="#Object_002dOriented-Variables">Object-Oriented Variables</a></li>
+<li><a href="#index-border_002dpattern-of-Window-859"><code>border-pattern of Window</code></a>: <a href="#Object_002dOriented-Variables">Object-Oriented Variables</a></li>
+<li><a href="#index-Bo_0040TeX_007b_007d-93">BoTeX</a>: <a href="#History">History</a></li>
+<li><a href="#index-Box-with-rounded-corners-501">Box with rounded corners</a>: <a href="#cartouche">cartouche</a></li>
+<li><a href="#index-Box_002c-ugly-black-in-hardcopy-1033">Box, ugly black in hardcopy</a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-Braces-and-argument-syntax-1236">Braces and argument syntax</a>: <a href="#Command-Syntax">Command Syntax</a></li>
+<li><a href="#index-Braces_002c-in-macro-arguments-958">Braces, in macro arguments</a>: <a href="#Invoking-Macros">Invoking Macros</a></li>
+<li><a href="#index-Braces_002c-inserting-628">Braces, inserting</a>: <a href="#Inserting-Braces">Inserting Braces</a></li>
+<li><a href="#index-Braces_002c-when-to-use-48">Braces, when to use</a>: <a href="#Formatting-Commands">Formatting Commands</a></li>
+<li><a href="#index-Breaks-in-a-line-783">Breaks in a line</a>: <a href="#Line-Breaks">Line Breaks</a></li>
+<li><a href="#index-Breve-accent-680">Breve accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Buffer-formatting-and-printing-151">Buffer formatting and printing</a>: <a href="#Printing">Printing</a></li>
+<li><a href="#index-Bugs_002c-reporting-5">Bugs, reporting</a>: <a href="#Reporting-Bugs">Reporting Bugs</a></li>
+<li><a href="#index-Bullets_002c-inserting-731">Bullets, inserting</a>: <a href="#Dots-Bullets">Dots Bullets</a></li>
+<li><a href="#index-Captions_002c-for-floats-550">Captions, for floats</a>: <a href="#caption-shortcaption">caption shortcaption</a></li>
+<li><a href="#index-Caron-accent-688">Caron accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Cascading-Style-Sheets_002c-and-HTML-output-1213">Cascading Style Sheets, and HTML output</a>: <a href="#HTML-CSS">HTML CSS</a></li>
+<li><a href="#index-Case-in-node-name-319">Case in node name</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Case_002c-not-altering-in-_0040code_007b_0040_0040code_007d-401">Case, not altering in <code>@code</code></a>: <a href="#code">code</a></li>
+<li><a href="#index-Catching-errors-with-Info-formatting-1292">Catching errors with Info formatting</a>: <a href="#Debugging-with-Info">Debugging with Info</a></li>
+<li><a href="#index-Catching-errors-with-_0040TeX_007b_007d-formatting-1294">Catching errors with TeX formatting</a>: <a href="#Debugging-with-TeX">Debugging with TeX</a></li>
+<li><a href="#index-Catching-mistakes-1287">Catching mistakes</a>: <a href="#Catching-Mistakes">Catching Mistakes</a></li>
+<li><a href="#index-Categories_002c-choosing-1179">Categories, choosing</a>: <a href="#Installing-Dir-Entries">Installing Dir Entries</a></li>
+<li><a href="#index-Cedilla-accent-670">Cedilla accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Centimeters-579">Centimeters</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Chapter-structuring-270">Chapter structuring</a>: <a href="#Structuring">Structuring</a></li>
+<li><a href="#index-Chapters_002c-formatting-one-at-a-time-989">Chapters, formatting one at a time</a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-Character-set_002c-declaring-922">Character set, declaring</a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-Characteristics_002c-printed-books-or-manuals-44">Characteristics, printed books or manuals</a>: <a href="#Printed-Books">Printed Books</a></li>
+<li><a href="#index-Characters_002c-basic-input-52">Characters, basic input</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Characters_002c-invalid-in-node-name-316">Characters, invalid in node name</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Chassell_002c-Robert-J_002e-79">Chassell, Robert J.</a>: <a href="#History">History</a></li>
+<li><a href="#index-Check-accent-687">Check accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Checking-for-badly-referenced-nodes-1302">Checking for badly referenced nodes</a>: <a href="#Running-Info_002dValidate">Running Info-Validate</a></li>
+<li><a href="#index-Checklist-for-bug-reports-8">Checklist for bug reports</a>: <a href="#Reporting-Bugs">Reporting Bugs</a></li>
+<li><a href="#index-Ciceros-582">Ciceros</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Circumflex-accent-664">Circumflex accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-code_0040r_007b_002c-value-for-_0040code_007b_0040_0040kbdinputstyle_007d_007d-409"><code>code</code><span class="roman">, value for </span><code>@kbdinputstyle</code></a>: <a href="#kbd">kbd</a></li>
+<li><a href="#index-Collapsing-whitespace-around-continuations-824">Collapsing whitespace around continuations</a>: <a href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a></li>
+<li><a href="#index-Colon-in-nodename-312">Colon in nodename</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Colon_002c-last-in-_0040env_007bINFOPATH_007d-1173">Colon, last in <span class="env">INFOPATH</span></a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-Column-widths_002c-defining-for-multitables-527">Column widths, defining for multitables</a>: <a href="#Multitable-Column-Widths">Multitable Column Widths</a></li>
+<li><a href="#index-Combining-indices-608">Combining indices</a>: <a href="#Combining-Indices">Combining Indices</a></li>
+<li><a href="#index-Comma-in-nodename-313">Comma in nodename</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Comma_002c-in-macro-arguments-957">Comma, in macro arguments</a>: <a href="#Invoking-Macros">Invoking Macros</a></li>
+<li><a href="#index-Command-aliases-962">Command aliases</a>: <a href="#alias">alias</a></li>
+<li><a href="#index-Command-definitions-868">Command definitions</a>: <a href="#Sample-Function-Definition">Sample Function Definition</a></li>
+<li><a href="#index-Command-names_002c-indicating-424">Command names, indicating</a>: <a href="#command">command</a></li>
+<li><a href="#index-Command-syntax-1235">Command syntax</a>: <a href="#Command-Syntax">Command Syntax</a></li>
+<li><a href="#index-Commands-to-insert-special-characters-625">Commands to insert special characters</a>: <a href="#Atsign-Braces-Comma">Atsign Braces Comma</a></li>
+<li><a href="#index-Commands-using-raw-_0040TeX_007b_007d-891">Commands using raw TeX</a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-Commands_002c-inserting-them-100">Commands, inserting them</a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-Commas_002c-inserting-631">Commas, inserting</a>: <a href="#Inserting-a-Comma">Inserting a Comma</a></li>
+<li><a href="#index-Comments-66">Comments</a>: <a href="#Comments">Comments</a></li>
+<li><a href="#index-Comments_002c-in-CSS-files-1215">Comments, in CSS files</a>: <a href="#HTML-CSS">HTML CSS</a></li>
+<li><a href="#index-Compile-command-for-formatting-1006">Compile command for formatting</a>: <a href="#Compile_002dCommand">Compile-Command</a></li>
+<li><a href="#index-Compressed-files_002c-reading-1183">Compressed files, reading</a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-Conditionally-visible-text-872">Conditionally visible text</a>: <a href="#Conditionals">Conditionals</a></li>
+<li><a href="#index-Conditionals_002c-nested-909">Conditionals, nested</a>: <a href="#Conditional-Nesting">Conditional Nesting</a></li>
+<li><a href="#index-Conditions-for-copying-Texinfo-2">Conditions for copying Texinfo</a>: <a href="#Copying-Conditions">Copying Conditions</a></li>
+<li><a href="#index-Contents_002c-after-title-page-223">Contents, after title page</a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-Contents_002c-Table-of-216">Contents, Table of</a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-Contents_002dlike-outline-of-file-structure-121">Contents-like outline of file structure</a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-Continuation-lines-in-definition-commands-819">Continuation lines in definition commands</a>: <a href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a></li>
+<li><a href="#index-Conventions-for-writing-definitions-866">Conventions for writing definitions</a>: <a href="#Def-Cmd-Conventions">Def Cmd Conventions</a></li>
+<li><a href="#index-Conventions_002c-syntactic-51">Conventions, syntactic</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Copying-conditions-1">Copying conditions</a>: <a href="#Copying-Conditions">Copying Conditions</a></li>
+<li><a href="#index-Copying-Permissions-179">Copying Permissions</a>: <a href="#Document-Permissions">Document Permissions</a></li>
+<li><a href="#index-Copying-software-256">Copying software</a>: <a href="#Software-Copying-Permissions">Software Copying Permissions</a></li>
+<li><a href="#index-Copying-text_002c-including-188">Copying text, including</a>: <a href="#insertcopying">insertcopying</a></li>
+<li><a href="#index-Copyright-holder-for-FSF-works-184">Copyright holder for FSF works</a>: <a href="#copying">copying</a></li>
+<li><a href="#index-Copyright-page-205">Copyright page</a>: <a href="#Copyright">Copyright</a></li>
+<li><a href="#index-Copyright-page_002c-for-plain-text-192">Copyright page, for plain text</a>: <a href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a></li>
+<li><a href="#index-Copyright-word_002c-always-in-English-182">Copyright word, always in English</a>: <a href="#copying">copying</a></li>
+<li><a href="#index-Correcting-mistakes-1288">Correcting mistakes</a>: <a href="#Catching-Mistakes">Catching Mistakes</a></li>
+<li><a href="#index-_0040code_007bcp_007d-_0028concept_0029-index-594"><code>cp</code> (concept) index</a>: <a href="#Predefined-Indices">Predefined Indices</a></li>
+<li><a href="#index-Create-nodes_002c-menus-automatically-129">Create nodes, menus automatically</a>: <a href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a></li>
+<li><a href="#index-Creating-an-Info-file-1068">Creating an Info file</a>: <a href="#Creating-an-Info-File">Creating an Info File</a></li>
+<li><a href="#index-Creating-an-unsplit-file-1309">Creating an unsplit file</a>: <a href="#Unsplit">Unsplit</a></li>
+<li><a href="#index-Creating-index-entries-604">Creating index entries</a>: <a href="#Indexing-Commands">Indexing Commands</a></li>
+<li><a href="#index-Creating-pointers-with-_0040code_007bmakeinfo_007d-329">Creating pointers with <code>makeinfo</code></a>: <a href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a></li>
+<li><a href="#index-Cropmarks-for-printing-1059">Cropmarks for printing</a>: <a href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a></li>
+<li><a href="#index-Cross-reference-parts-364">Cross reference parts</a>: <a href="#Cross-Reference-Parts">Cross Reference Parts</a></li>
+<li><a href="#index-Cross-references-361">Cross references</a>: <a href="#Cross-References">Cross References</a></li>
+<li><a href="#index-Cross-references-using-_0040code_007b_0040_0040inforef_007d-380">Cross references using <code>@inforef</code></a>: <a href="#inforef">inforef</a></li>
+<li><a href="#index-Cross-references-using-_0040code_007b_0040_0040pxref_007d-376">Cross references using <code>@pxref</code></a>: <a href="#pxref">pxref</a></li>
+<li><a href="#index-Cross-references-using-_0040code_007b_0040_0040ref_007d-371">Cross references using <code>@ref</code></a>: <a href="#ref">ref</a></li>
+<li><a href="#index-Cross-references-using-_0040code_007b_0040_0040xref_007d-367">Cross references using <code>@xref</code></a>: <a href="#xref">xref</a></li>
+<li><a href="#index-Cross_002dreference-targets_002c-arbitrary-334">Cross-reference targets, arbitrary</a>: <a href="#anchor">anchor</a></li>
+<li><a href="#index-Cross_002dreferences_002c-in-HTML-output-1217">Cross-references, in HTML output</a>: <a href="#HTML-Xref">HTML Xref</a></li>
+<li><a href="#index-CSS_002c-and-HTML-output-1212">CSS, and HTML output</a>: <a href="#HTML-CSS">HTML CSS</a></li>
+<li><a href="#index-Custom-page-sizes-1049">Custom page sizes</a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-Customize-Emacs-package-_0028_0040t_007bDevelopment_002fDocs_002fTexinfo_007d_0029-1004">Customize Emacs package (<tt>Development/Docs/Texinfo</tt>)</a>: <a href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a></li>
+<li><a href="#index-Customized-highlighting-965">Customized highlighting</a>: <a href="#definfoenclose">definfoenclose</a></li>
+<li><a href="#index-Customizing-of-_0040TeX_007b_007d-for-Texinfo-1020">Customizing of TeX for Texinfo</a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-CVS-_0024Id-1246">CVS $Id</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Dashes-in-source-61">Dashes in source</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Debugging-the-Texinfo-structure-1291">Debugging the Texinfo structure</a>: <a href="#Catching-Mistakes">Catching Mistakes</a></li>
+<li><a href="#index-Debugging-with-Info-formatting-1293">Debugging with Info formatting</a>: <a href="#Debugging-with-Info">Debugging with Info</a></li>
+<li><a href="#index-Debugging-with-_0040TeX_007b_007d-formatting-1295">Debugging with TeX formatting</a>: <a href="#Debugging-with-TeX">Debugging with TeX</a></li>
+<li><a href="#index-Defining-indexing-entries-600">Defining indexing entries</a>: <a href="#Indexing-Commands">Indexing Commands</a></li>
+<li><a href="#index-Defining-macros-935">Defining macros</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Defining-new-indices-617">Defining new indices</a>: <a href="#New-Indices">New Indices</a></li>
+<li><a href="#index-Defining-new-Texinfo-commands-931">Defining new Texinfo commands</a>: <a href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a></li>
+<li><a href="#index-Definition-command-headings_002c-continuing-820">Definition command headings, continuing</a>: <a href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a></li>
+<li><a href="#index-Definition-commands-814">Definition commands</a>: <a href="#Definition-Commands">Definition Commands</a></li>
+<li><a href="#index-Definition-conventions-865">Definition conventions</a>: <a href="#Def-Cmd-Conventions">Def Cmd Conventions</a></li>
+<li><a href="#index-Definition-lists_002c-typesetting-515">Definition lists, typesetting</a>: <a href="#table">table</a></li>
+<li><a href="#index-Definition-template-815">Definition template</a>: <a href="#Def-Cmd-Template">Def Cmd Template</a></li>
+<li><a href="#index-Definitions-grouped-together-833">Definitions grouped together</a>: <a href="#deffnx">deffnx</a></li>
+<li><a href="#index-Delimiter-character_002c-for-verbatim-419">Delimiter character, for verbatim</a>: <a href="#verb">verb</a></li>
+<li><a href="#index-Depth-of-text-area-1054">Depth of text area</a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-Description-for-menu_002c-start-116">Description for menu, start</a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-Description-of-document-234">Description of document</a>: <a href="#documentdescription">documentdescription</a></li>
+<li><a href="#index-Details-of-macro-usage-960">Details of macro usage</a>: <a href="#Macro-Details">Macro Details</a></li>
+<li><a href="#index-Did_0040_005eot-points-581">Did&ocirc;t points</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Different-cross-reference-commands-363">Different cross reference commands</a>: <a href="#Cross-Reference-Commands">Cross Reference Commands</a></li>
+<li><a href="#index-Dimension-formatting-651">Dimension formatting</a>: <a href="#dmn">dmn</a></li>
+<li><a href="#index-Dimensions-and-image-sizes-574">Dimensions and image sizes</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Dir-categories_002c-choosing-1178">Dir categories, choosing</a>: <a href="#Installing-Dir-Entries">Installing Dir Entries</a></li>
+<li><a href="#index-_0040file_007bdir_007d-directory-for-Info-installation-1159"><span class="file">dir</span> directory for Info installation</a>: <a href="#Installing-an-Info-File">Installing an Info File</a></li>
+<li><a href="#index-_0040file_007bdir_007d-file-listing-1164"><span class="file">dir</span> file listing</a>: <a href="#New-Info-File">New Info File</a></li>
+<li><a href="#index-_0040file_007bdir_007d-file_002c-creating-your-own-1174"><span class="file">dir</span> file, creating your own</a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-_0040file_007bdir_007d-files-and-Info-directories-1168"><span class="file">dir</span> files and Info directories</a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-Dir-files_002c-compressed-1184">Dir files, compressed</a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-_0040file_007bdir_007d_002c-created-by-_0040code_007binstall_002dinfo_007d-1182"><span class="file">dir</span>, created by <code>install-info</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-Display-formatting-481">Display formatting</a>: <a href="#display">display</a></li>
+<li><a href="#index-Displayed-equations-754">Displayed equations</a>: <a href="#math">math</a></li>
+<li><a href="#index-distinct_0040r_007b_002c-value-for-_0040code_007b_0040_0040kbdinputstyle_007d_007d-407"><code>distinct</code><span class="roman">, value for </span><code>@kbdinputstyle</code></a>: <a href="#kbd">kbd</a></li>
+<li><a href="#index-Distorting-images-573">Distorting images</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Distribution-257">Distribution</a>: <a href="#Software-Copying-Permissions">Software Copying Permissions</a></li>
+<li><a href="#index-Docbook-output-32">Docbook output</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Docbook_002c-including-raw-892">Docbook, including raw</a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-Document-description-233">Document description</a>: <a href="#documentdescription">documentdescription</a></li>
+<li><a href="#index-Document-input-encoding-923">Document input encoding</a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-Document-language_002c-declaring-914">Document language, declaring</a>: <a href="#documentlanguage">documentlanguage</a></li>
+<li><a href="#index-Document-Permissions-178">Document Permissions</a>: <a href="#Document-Permissions">Document Permissions</a></li>
+<li><a href="#index-Documentation-identification-1248">Documentation identification</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Dot-accent-672">Dot accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Dotless-i_002c-j-704">Dotless i, j</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Dots_002c-inserting-730">Dots, inserting</a>: <a href="#Dots-Bullets">Dots Bullets</a></li>
+<li><a href="#index-Dots_002c-inserting-740">Dots, inserting</a>: <a href="#dots">dots</a></li>
+<li><a href="#index-Double_002dcolon-menu-entries-349">Double-colon menu entries</a>: <a href="#Less-Cluttered-Menu-Entry">Less Cluttered Menu Entry</a></li>
+<li><a href="#index-DTD_002c-for-Texinfo-XML-30">DTD, for Texinfo XML</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Dumas_002c-Patrice-1218">Dumas, Patrice</a>: <a href="#HTML-Xref">HTML Xref</a></li>
+<li><a href="#index-Dumping-a-_002efmt-file-1024">Dumping a .fmt file</a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-DVI-file-979">DVI file</a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-DVI-output-23">DVI output</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-dvips-24"><code>dvips</code></a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Ellipsis_002c-inserting-732">Ellipsis, inserting</a>: <a href="#Dots-Bullets">Dots Bullets</a></li>
+<li><a href="#index-Em-dash_002c-compared-to-minus-sign-748">Em dash, compared to minus sign</a>: <a href="#minus">minus</a></li>
+<li><a href="#index-Em-dash_002c-producing-63">Em dash, producing</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Emacs-97">Emacs</a>: <a href="#Texinfo-Mode">Texinfo Mode</a></li>
+<li><a href="#index-Emacs-shell_002c-format_002c-print-from-999">Emacs shell, format, print from</a>: <a href="#Within-Emacs">Within Emacs</a></li>
+<li><a href="#index-Emacs_002dW3-22">Emacs-W3</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Emphasizing-text-440">Emphasizing text</a>: <a href="#Emphasis">Emphasis</a></li>
+<li><a href="#index-Emphasizing-text_002c-font-for-441">Emphasizing text, font for</a>: <a href="#emph-_0026-strong">emph &amp; strong</a></li>
+<li><a href="#index-En-dash_002c-producing-64">En dash, producing</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Encoding_002c-declaring-920">Encoding, declaring</a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-_0040samp_007b_0040r_007bEnd_007d_007d-node-footnote-style-588"><span class="samp">End</span> node footnote style</a>: <a href="#Footnote-Styles">Footnote Styles</a></li>
+<li><a href="#index-End-of-header-line-177">End of header line</a>: <a href="#End-of-Header">End of Header</a></li>
+<li><a href="#index-End-titlepage-starts-headings-213">End titlepage starts headings</a>: <a href="#end-titlepage">end titlepage</a></li>
+<li><a href="#index-Ending-a-Sentence-639">Ending a Sentence</a>: <a href="#Ending-a-Sentence">Ending a Sentence</a></li>
+<li><a href="#index-Ending-a-Texinfo-file-260">Ending a Texinfo file</a>: <a href="#Ending-a-File">Ending a File</a></li>
+<li><a href="#index-Entries-for-an-index-602">Entries for an index</a>: <a href="#Indexing-Commands">Indexing Commands</a></li>
+<li><a href="#index-Entries_002c-making-index-593">Entries, making index</a>: <a href="#Index-Entries">Index Entries</a></li>
+<li><a href="#index-Enumeration-511">Enumeration</a>: <a href="#enumerate">enumerate</a></li>
+<li><a href="#index-Environment-indentation-252">Environment indentation</a>: <a href="#exampleindent">exampleindent</a></li>
+<li><a href="#index-Environment-variable-_0040code_007bINFOPATH_007d-1171">Environment variable <code>INFOPATH</code></a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-Environment-variable-_0040code_007bTEXINFO_005fOUTPUT_005fFORMAT_007d-1135">Environment variable <code>TEXINFO_OUTPUT_FORMAT</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-Environment-variable-_0040code_007bTEXINPUTS_007d-1022">Environment variable <code>TEXINPUTS</code></a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-epsf_002etex-585"><code>epsf.tex</code></a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-epsf_002etex_0040r_007b_002c-installing_007d-1017"><code>epsf.tex</code><span class="roman">, installing</span></a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-Equations_002c-displayed-755">Equations, displayed</a>: <a href="#math">math</a></li>
+<li><a href="#index-Equivalence_002c-indicating-770">Equivalence, indicating</a>: <a href="#Equivalence">Equivalence</a></li>
+<li><a href="#index-Error-message_002c-indicating-768">Error message, indicating</a>: <a href="#Error-Glyph">Error Glyph</a></li>
+<li><a href="#index-Errors_002c-parsing-1145">Errors, parsing</a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-Es_002dzet-727">Es-zet</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-European-A4-paper-1044">European A4 paper</a>: <a href="#A4-Paper">A4 Paper</a></li>
+<li><a href="#index-Evaluation-glyph-760">Evaluation glyph</a>: <a href="#result">result</a></li>
+<li><a href="#index-Example-beginning-of-Texinfo-file-160">Example beginning of Texinfo file</a>: <a href="#Sample-Beginning">Sample Beginning</a></li>
+<li><a href="#index-Example-indentation-253">Example indentation</a>: <a href="#exampleindent">exampleindent</a></li>
+<li><a href="#index-Example-menu-354">Example menu</a>: <a href="#Menu-Example">Menu Example</a></li>
+<li><a href="#index-example_0040r_007b_002c-value-for-_0040code_007b_0040_0040kbdinputstyle_007d_007d-408"><code>example</code><span class="roman">, value for </span><code>@kbdinputstyle</code></a>: <a href="#kbd">kbd</a></li>
+<li><a href="#index-Examples-in-smaller-fonts-475">Examples in smaller fonts</a>: <a href="#small">small</a></li>
+<li><a href="#index-Examples_002c-formatting-them-464">Examples, formatting them</a>: <a href="#example">example</a></li>
+<li><a href="#index-Examples_002c-glyphs-for-757">Examples, glyphs for</a>: <a href="#Glyphs">Glyphs</a></li>
+<li><a href="#index-Expanding-macros-953">Expanding macros</a>: <a href="#Invoking-Macros">Invoking Macros</a></li>
+<li><a href="#index-Expansion-of-8_002dbit-characters-in-HTML-cross_002dreferences-1226">Expansion of 8-bit characters in HTML cross-references</a>: <a href="#HTML-Xref-8_002dbit-Character-Expansion">HTML Xref 8-bit Character Expansion</a></li>
+<li><a href="#index-Expansion_002c-indicating-763">Expansion, indicating</a>: <a href="#expansion">expansion</a></li>
+<li><a href="#index-expansion_002c-of-node-names-in-HTML-cross_002dreferences-1222">expansion, of node names in HTML cross-references</a>: <a href="#HTML-Xref-Node-Name-Expansion">HTML Xref Node Name Expansion</a></li>
+<li><a href="#index-Expressions-in-a-program_002c-indicating-398">Expressions in a program, indicating</a>: <a href="#code">code</a></li>
+<li><a href="#index-F_002eB_002eI_002e_002c-as-acronym-431">F.B.I., as acronym</a>: <a href="#acronym">acronym</a></li>
+<li><a href="#index-FDL_002c-GNU-Free-Documentation-License-1315">FDL, GNU Free Documentation License</a>: <a href="#GNU-Free-Documentation-License">GNU Free Documentation License</a></li>
+<li><a href="#index-Feminine-ordinal-719">Feminine ordinal</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-File-beginning-158">File beginning</a>: <a href="#Beginning-a-File">Beginning a File</a></li>
+<li><a href="#index-File-ending-262">File ending</a>: <a href="#Ending-a-File">Ending a File</a></li>
+<li><a href="#index-File-name-collision-172">File name collision</a>: <a href="#setfilename">setfilename</a></li>
+<li><a href="#index-File-section-structure_002c-showing-it-122">File section structure, showing it</a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-Final-output-1028">Final output</a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-Finding-badly-referenced-nodes-1304">Finding badly referenced nodes</a>: <a href="#Running-Info_002dValidate">Running Info-Validate</a></li>
+<li><a href="#index-Fine_002dtuning_002c-and-hyphenation-789">Fine-tuning, and hyphenation</a>: <a href="#_002d-and-hyphenation">- and hyphenation</a></li>
+<li><a href="#index-First-line-of-a-Texinfo-file-163">First line of a Texinfo file</a>: <a href="#First-Line">First Line</a></li>
+<li><a href="#index-First-node-323">First node</a>: <a href="#First-Node">First Node</a></li>
+<li><a href="#index-First-paragraph_002c-suppressing-indentation-of-245">First paragraph, suppressing indentation of</a>: <a href="#firstparagraphindent">firstparagraphindent</a></li>
+<li><a href="#index-Fixed_002dwidth-font-455">Fixed-width font</a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-Float-environment-543">Float environment</a>: <a href="#float">float</a></li>
+<li><a href="#index-Floating-accents_002c-inserting-656">Floating accents, inserting</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Floating_002c-not-yet-implemented-541">Floating, not yet implemented</a>: <a href="#Floats">Floats</a></li>
+<li><a href="#index-Floats_002c-in-general-540">Floats, in general</a>: <a href="#Floats">Floats</a></li>
+<li><a href="#index-Floats_002c-list-of-554">Floats, list of</a>: <a href="#listoffloats">listoffloats</a></li>
+<li><a href="#index-Floats_002c-making-unnumbered-544">Floats, making unnumbered</a>: <a href="#float">float</a></li>
+<li><a href="#index-Floats_002c-numbering-of-546">Floats, numbering of</a>: <a href="#float">float</a></li>
+<li><a href="#index-Flooding-379">Flooding</a>: <a href="#pxref">pxref</a></li>
+<li><a href="#index-_0040code_007bfn_007d-_0028function_0029-index-595"><code>fn</code> (function) index</a>: <a href="#Predefined-Indices">Predefined Indices</a></li>
+<li><a href="#index-Fonts-for-indices-615">Fonts for indices</a>: <a href="#syncodeindex">syncodeindex</a></li>
+<li><a href="#index-Fonts-for-printing_002c-not-Info-447">Fonts for printing, not Info</a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-Footings-1269">Footings</a>: <a href="#Headings">Headings</a></li>
+<li><a href="#index-Footnotes-586">Footnotes</a>: <a href="#Footnotes">Footnotes</a></li>
+<li><a href="#index-Force-line-break-784">Force line break</a>: <a href="#Line-Breaks">Line Breaks</a></li>
+<li><a href="#index-Forcing-indentation-496">Forcing indentation</a>: <a href="#indent">indent</a></li>
+<li><a href="#index-Forcing-line-and-page-breaks-774">Forcing line and page breaks</a>: <a href="#Breaks">Breaks</a></li>
+<li><a href="#index-Format-a-dimension-652">Format a dimension</a>: <a href="#dmn">dmn</a></li>
+<li><a href="#index-Format-and-print-hardcopy-969">Format and print hardcopy</a>: <a href="#Hardcopy">Hardcopy</a></li>
+<li><a href="#index-Format-and-print-in-Texinfo-mode-1002">Format and print in Texinfo mode</a>: <a href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a></li>
+<li><a href="#index-Format-file_002c-dumping-1025">Format file, dumping</a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-Format-with-the-compile-command-1007">Format with the compile command</a>: <a href="#Compile_002dCommand">Compile-Command</a></li>
+<li><a href="#index-Format_002c-print-from-Emacs-shell-997">Format, print from Emacs shell</a>: <a href="#Within-Emacs">Within Emacs</a></li>
+<li><a href="#index-Formats-for-images-559">Formats for images</a>: <a href="#Image-Syntax">Image Syntax</a></li>
+<li><a href="#index-Formatting-a-file-for-Info-1070">Formatting a file for Info</a>: <a href="#Creating-an-Info-File">Creating an Info File</a></li>
+<li><a href="#index-Formatting-commands-47">Formatting commands</a>: <a href="#Formatting-Commands">Formatting Commands</a></li>
+<li><a href="#index-Formatting-examples-465">Formatting examples</a>: <a href="#example">example</a></li>
+<li><a href="#index-Formatting-for-Info-143">Formatting for Info</a>: <a href="#Info-Formatting">Info Formatting</a></li>
+<li><a href="#index-Formatting-for-printing-148">Formatting for printing</a>: <a href="#Printing">Printing</a></li>
+<li><a href="#index-Formatting-headings-and-footings-1272">Formatting headings and footings</a>: <a href="#Headings">Headings</a></li>
+<li><a href="#index-Formatting-requirements-1010">Formatting requirements</a>: <a href="#Requirements-Summary">Requirements Summary</a></li>
+<li><a href="#index-Formatting-with-_0040code_007btex_007d-and-_0040code_007btexindex_007d-978">Formatting with <code>tex</code> and <code>texindex</code></a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-Formulas_002c-mathematical-752">Formulas, mathematical</a>: <a href="#math">math</a></li>
+<li><a href="#index-Fox_002c-Brian-80">Fox, Brian</a>: <a href="#History">History</a></li>
+<li><a href="#index-Free-Documentation-License_002c-including-entire-1255">Free Documentation License, including entire</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Free-Software-Directory-1177">Free Software Directory</a>: <a href="#Installing-Dir-Entries">Installing Dir Entries</a></li>
+<li><a href="#index-Frequently-used-commands_002c-inserting-99">Frequently used commands, inserting</a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-Frontmatter_002c-text-in-159">Frontmatter, text in</a>: <a href="#Beginning-a-File">Beginning a File</a></li>
+<li><a href="#index-Full-texts_002c-GNU-1244">Full texts, GNU</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Function-definitions-867">Function definitions</a>: <a href="#Sample-Function-Definition">Sample Function Definition</a></li>
+<li><a href="#index-General-syntactic-conventions-49">General syntactic conventions</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Generating-menus-with-indices-266">Generating menus with indices</a>: <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a></li>
+<li><a href="#index-Generating-plain-text-files-1102">Generating plain text files</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-German-S-729">German S</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-GIF-images_002c-unsupported-due-to-patents-565">GIF images, unsupported due to patents</a>: <a href="#Image-Syntax">Image Syntax</a></li>
+<li><a href="#index-Global-Document-Commands-232">Global Document Commands</a>: <a href="#Global-Document-Commands">Global Document Commands</a></li>
+<li><a href="#index-Globbing-984">Globbing</a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-Glyphs-756">Glyphs</a>: <a href="#Glyphs">Glyphs</a></li>
+<li><a href="#index-GNU-Emacs-96">GNU Emacs</a>: <a href="#Texinfo-Mode">Texinfo Mode</a></li>
+<li><a href="#index-GNU-Emacs-shell_002c-format_002c-print-from-1000">GNU Emacs shell, format, print from</a>: <a href="#Within-Emacs">Within Emacs</a></li>
+<li><a href="#index-GNU-Free-Documentation-License_002c-including-entire-1254">GNU Free Documentation License, including entire</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-GNU-sample-texts-1242">GNU sample texts</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Going-to-other-Info-files_0027-nodes-358">Going to other Info files' nodes</a>: <a href="#Other-Info-Files">Other Info Files</a></li>
+<li><a href="#index-Grave-accent-666">Grave accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Grave-accent_002c-vs_002e_0040_003a-left-quote-59">Grave accent, vs. left quote</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Group-_0028hold-text-together-vertically_0029-808">Group (hold text together vertically)</a>: <a href="#group">group</a></li>
+<li><a href="#index-Grouping-two-definitions-together-832">Grouping two definitions together</a>: <a href="#deffnx">deffnx</a></li>
+<li><a href="#index-Hacek-accent-686">Hacek accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Hardcopy_002c-printing-it-971">Hardcopy, printing it</a>: <a href="#Hardcopy">Hardcopy</a></li>
+<li><a href="#index-_0040samp_007bhboxes_007d_002c-overfull-1027"><span class="samp">hboxes</span>, overfull</a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-Header-for-Texinfo-files-161">Header for Texinfo files</a>: <a href="#Texinfo-File-Header">Texinfo File Header</a></li>
+<li><a href="#index-Header-of-a-Texinfo-file-165">Header of a Texinfo file</a>: <a href="#First-Line">First Line</a></li>
+<li><a href="#index-Heading-row_002c-in-table-537">Heading row, in table</a>: <a href="#Multitable-Rows">Multitable Rows</a></li>
+<li><a href="#index-Headings-1268">Headings</a>: <a href="#Headings">Headings</a></li>
+<li><a href="#index-Headings_002c-indentation-after-249">Headings, indentation after</a>: <a href="#firstparagraphindent">firstparagraphindent</a></li>
+<li><a href="#index-Headings_002c-page_002c-begin-to-appear-211">Headings, page, begin to appear</a>: <a href="#end-titlepage">end titlepage</a></li>
+<li><a href="#index-Height-of-images-571">Height of images</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Height-of-text-area-1053">Height of text area</a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-help2man-34"><code>help2man</code></a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Hierarchical-documents_002c-and-menus-341">Hierarchical documents, and menus</a>: <a href="#Menu-Location">Menu Location</a></li>
+<li><a href="#index-Highlighting-text-394">Highlighting text</a>: <a href="#Indicating">Indicating</a></li>
+<li><a href="#index-Highlighting_002c-customized-964">Highlighting, customized</a>: <a href="#definfoenclose">definfoenclose</a></li>
+<li><a href="#index-Hints-1239">Hints</a>: <a href="#Tips">Tips</a></li>
+<li><a href="#index-History-of-Texinfo-90">History of Texinfo</a>: <a href="#History">History</a></li>
+<li><a href="#index-Holder-of-copyright-for-FSF-works-185">Holder of copyright for FSF works</a>: <a href="#copying">copying</a></li>
+<li><a href="#index-Holding-text-together-vertically-809">Holding text together vertically</a>: <a href="#group">group</a></li>
+<li><a href="#index-_0040code_007bhref_007d_002c-producing-HTML-386"><code>href</code>, producing HTML</a>: <a href="#uref">uref</a></li>
+<li><a href="#index-HTML-cross_002dreference-8_002dbit-character-expansion-1224">HTML cross-reference 8-bit character expansion</a>: <a href="#HTML-Xref-8_002dbit-Character-Expansion">HTML Xref 8-bit Character Expansion</a></li>
+<li><a href="#index-HTML-cross_002dreference-command-expansion-1223">HTML cross-reference command expansion</a>: <a href="#HTML-Xref-Command-Expansion">HTML Xref Command Expansion</a></li>
+<li><a href="#index-HTML-cross_002dreference-link-basics-1219">HTML cross-reference link basics</a>: <a href="#HTML-Xref-Link-Basics">HTML Xref Link Basics</a></li>
+<li><a href="#index-HTML-cross_002dreference-mismatch-1227">HTML cross-reference mismatch</a>: <a href="#HTML-Xref-Mismatch">HTML Xref Mismatch</a></li>
+<li><a href="#index-HTML-cross_002dreference-node-name-expansion-1220">HTML cross-reference node name expansion</a>: <a href="#HTML-Xref-Node-Name-Expansion">HTML Xref Node Name Expansion</a></li>
+<li><a href="#index-HTML-cross_002dreferences-1216">HTML cross-references</a>: <a href="#HTML-Xref">HTML Xref</a></li>
+<li><a href="#index-HTML-output-1205">HTML output</a>: <a href="#Generating-HTML">Generating HTML</a></li>
+<li><a href="#index-HTML-output-18">HTML output</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-HTML-output_002c-and-encodings-927">HTML output, and encodings</a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-HTML-output_002c-browser-compatibility-of-1208">HTML output, browser compatibility of</a>: <a href="#HTML-Translation">HTML Translation</a></li>
+<li><a href="#index-HTML-output_002c-split-1210">HTML output, split</a>: <a href="#HTML-Splitting">HTML Splitting</a></li>
+<li><a href="#index-HTML_002c-and-CSS-1211">HTML, and CSS</a>: <a href="#HTML-CSS">HTML CSS</a></li>
+<li><a href="#index-HTML_002c-including-raw-893">HTML, including raw</a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-_0040code_007bhttp_002dequiv_007d_002c-and-charset-specification-928"><code>http-equiv</code>, and charset specification</a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-Hungarian-umlaut-accent-674">Hungarian umlaut accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Hurricanes-374">Hurricanes</a>: <a href="#ref">ref</a></li>
+<li><a href="#index-Hyphen_002c-compared-to-minus-749">Hyphen, compared to minus</a>: <a href="#minus">minus</a></li>
+<li><a href="#index-Hyphenation-patterns_002c-language_002ddependent-916">Hyphenation patterns, language-dependent</a>: <a href="#documentlanguage">documentlanguage</a></li>
+<li><a href="#index-Hyphenation_002c-helping-_0040TeX_007b_007d-do-788">Hyphenation, helping TeX do</a>: <a href="#_002d-and-hyphenation">- and hyphenation</a></li>
+<li><a href="#index-Hyphenation_002c-preventing-794">Hyphenation, preventing</a>: <a href="#w">w</a></li>
+<li><a href="#index-Hyphens-in-source_002c-two-or-three-in-a-row-62">Hyphens in source, two or three in a row</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-_0040dotless_007bi_007d-_0028dotless-i_0029-702">i (dotless i)</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Identification-of-documentation-1249">Identification of documentation</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-If-text-conditionally-visible-875">If text conditionally visible</a>: <a href="#Conditionals">Conditionals</a></li>
+<li><a href="#index-Ignored-before-_0040code_007b_0040_0040setfilename_007d-169">Ignored before <code>@setfilename</code></a>: <a href="#setfilename">setfilename</a></li>
+<li><a href="#index-Ignored-text-69">Ignored text</a>: <a href="#Comments">Comments</a></li>
+<li><a href="#index-Image-formats-560">Image formats</a>: <a href="#Image-Syntax">Image Syntax</a></li>
+<li><a href="#index-Images_002c-alternate-text-for-564">Images, alternate text for</a>: <a href="#Image-Syntax">Image Syntax</a></li>
+<li><a href="#index-Images_002c-inserting-556">Images, inserting</a>: <a href="#Images">Images</a></li>
+<li><a href="#index-Images_002c-scaling-568">Images, scaling</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Inches-578">Inches</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Include-file-sample-1266">Include file sample</a>: <a href="#Sample-Include-File">Sample Include File</a></li>
+<li><a href="#index-Include-files-1260">Include files</a>: <a href="#Include-Files">Include Files</a></li>
+<li><a href="#index-Include-files-requirements-1263">Include files requirements</a>: <a href="#Include-Files-Requirements">Include Files Requirements</a></li>
+<li><a href="#index-Include-files_002c-and-section-levels-299">Include files, and section levels</a>: <a href="#Raise_002flower-sections">Raise/lower sections</a></li>
+<li><a href="#index-Including-a-file-verbatim-470">Including a file verbatim</a>: <a href="#verbatiminclude">verbatiminclude</a></li>
+<li><a href="#index-Including-permissions-text-190">Including permissions text</a>: <a href="#insertcopying">insertcopying</a></li>
+<li><a href="#index-Indentation-undoing-486">Indentation undoing</a>: <a href="#exdent">exdent</a></li>
+<li><a href="#index-Indentation_002c-forcing-498">Indentation, forcing</a>: <a href="#indent">indent</a></li>
+<li><a href="#index-Indentation_002c-omitting-494">Indentation, omitting</a>: <a href="#noindent">noindent</a></li>
+<li><a href="#index-Indenting-environments-251">Indenting environments</a>: <a href="#exampleindent">exampleindent</a></li>
+<li><a href="#index-Indenting-paragraphs_002c-control-of-242">Indenting paragraphs, control of</a>: <a href="#paragraphindent">paragraphindent</a></li>
+<li><a href="#index-Indenting_002c-suppressing-of-first-paragraph-248">Indenting, suppressing of first paragraph</a>: <a href="#firstparagraphindent">firstparagraphindent</a></li>
+<li><a href="#index-Index-entries-601">Index entries</a>: <a href="#Indexing-Commands">Indexing Commands</a></li>
+<li><a href="#index-Index-entries_002c-making-592">Index entries, making</a>: <a href="#Index-Entries">Index Entries</a></li>
+<li><a href="#index-Index-entry-writing-606">Index entry writing</a>: <a href="#Indexing-Commands">Indexing Commands</a></li>
+<li><a href="#index-Index-file-names-982">Index file names</a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-Index-font-types-607">Index font types</a>: <a href="#Indexing-Commands">Indexing Commands</a></li>
+<li><a href="#index-Indexing-table-entries-automatically-519">Indexing table entries automatically</a>: <a href="#ftable-vtable">ftable vtable</a></li>
+<li><a href="#index-Indicating-commands_002c-definitions_002c-etc_002e-395">Indicating commands, definitions, etc.</a>: <a href="#Indicating">Indicating</a></li>
+<li><a href="#index-Indicating-evaluation-759">Indicating evaluation</a>: <a href="#result">result</a></li>
+<li><a href="#index-Indices-591">Indices</a>: <a href="#Indices">Indices</a></li>
+<li><a href="#index-Indices_002c-combining-them-609">Indices, combining them</a>: <a href="#Combining-Indices">Combining Indices</a></li>
+<li><a href="#index-Indices_002c-defining-new-618">Indices, defining new</a>: <a href="#New-Indices">New Indices</a></li>
+<li><a href="#index-Indices_002c-printing-and-menus-265">Indices, printing and menus</a>: <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a></li>
+<li><a href="#index-Indices_002c-sorting-974">Indices, sorting</a>: <a href="#Hardcopy">Hardcopy</a></li>
+<li><a href="#index-Indices_002c-two-letter-names-613">Indices, two letter names</a>: <a href="#syncodeindex">syncodeindex</a></li>
+<li><a href="#index-Indirect-subfiles-1156">Indirect subfiles</a>: <a href="#Tag-and-Split-Files">Tag and Split Files</a></li>
+<li><a href="#index-Info-batch-formatting-1153">Info batch formatting</a>: <a href="#Batch-Formatting">Batch Formatting</a></li>
+<li><a href="#index-Info-file-installation-1158">Info file installation</a>: <a href="#Installing-an-Info-File">Installing an Info File</a></li>
+<li><a href="#index-Info-file-name_002c-choosing-173">Info file name, choosing</a>: <a href="#setfilename">setfilename</a></li>
+<li><a href="#index-Info-file_002c-listing-a-new-1163">Info file, listing a new</a>: <a href="#New-Info-File">New Info File</a></li>
+<li><a href="#index-Info-file_002c-splitting-manually-1314">Info file, splitting manually</a>: <a href="#Splitting">Splitting</a></li>
+<li><a href="#index-Info-files-38">Info files</a>: <a href="#Info-Files">Info Files</a></li>
+<li><a href="#index-Info-format_002c-and-menus-340">Info format, and menus</a>: <a href="#Menu-Location">Menu Location</a></li>
+<li><a href="#index-Info-formatting-145">Info formatting</a>: <a href="#Info-Formatting">Info Formatting</a></li>
+<li><a href="#index-Info-installed-in-another-directory-1166">Info installed in another directory</a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-Info-output-16">Info output</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Info-output_002c-and-encoding-926">Info output, and encoding</a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-Info-validating-a-large-file-1307">Info validating a large file</a>: <a href="#Using-Info_002dvalidate">Using Info-validate</a></li>
+<li><a href="#index-Info_002c-creating-an-online-file-1069">Info, creating an online file</a>: <a href="#Creating-an-Info-File">Creating an Info File</a></li>
+<li><a href="#index-Info_002ddirectory_002dlist-1169"><code>Info-directory-list</code></a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-Info_003b-other-files_0027-nodes-359">Info; other files' nodes</a>: <a href="#Other-Info-Files">Other Info Files</a></li>
+<li><a href="#index-INFOPATH-1170"><code>INFOPATH</code></a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-Initialization-file-for-_0040TeX_007b_007d-input-1015">Initialization file for TeX input</a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-Input-encoding_002c-declaring-921">Input encoding, declaring</a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-Insert-nodes_002c-menus-automatically-130">Insert nodes, menus automatically</a>: <a href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a></li>
+<li><a href="#index-Inserting-_0040_0040-_0040r_007b_0028literal-_0040samp_007b_0040_0040_007d_0029_007d-627">Inserting @ <span class="roman">(literal @)</span></a>: <a href="#Inserting-an-Atsign">Inserting an Atsign</a></li>
+<li><a href="#index-Inserting-accents-654">Inserting accents</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Inserting-dots-734">Inserting dots</a>: <a href="#Dots-Bullets">Dots Bullets</a></li>
+<li><a href="#index-Inserting-dots-739">Inserting dots</a>: <a href="#dots">dots</a></li>
+<li><a href="#index-Inserting-ellipsis-733">Inserting ellipsis</a>: <a href="#Dots-Bullets">Dots Bullets</a></li>
+<li><a href="#index-Inserting-frequently-used-commands-98">Inserting frequently used commands</a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-Inserting-indentation-497">Inserting indentation</a>: <a href="#indent">indent</a></li>
+<li><a href="#index-Inserting-space-633">Inserting space</a>: <a href="#Inserting-Space">Inserting Space</a></li>
+<li><a href="#index-Inserting-special-characters-and-symbols-622">Inserting special characters and symbols</a>: <a href="#Insertions">Insertions</a></li>
+<li><a href="#index-_0040file_007bINSTALL_007d-file_002c-generating-1103"><span class="file">INSTALL</span> file, generating</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-install_002dinfo-1181"><code>install-info</code></a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-Installing-an-Info-file-1157">Installing an Info file</a>: <a href="#Installing-an-Info-File">Installing an Info File</a></li>
+<li><a href="#index-Installing-Info-in-another-directory-1165">Installing Info in another directory</a>: <a href="#Other-Info-Directories">Other Info Directories</a></li>
+<li><a href="#index-Internationalization-911">Internationalization</a>: <a href="#Internationalization">Internationalization</a></li>
+<li><a href="#index-Introduction-to-Texinfo-12">Introduction to Texinfo</a>: <a href="#Using-Texinfo">Using Texinfo</a></li>
+<li><a href="#index-Introduction_002c-as-part-of-file-259">Introduction, as part of file</a>: <a href="#Software-Copying-Permissions">Software Copying Permissions</a></li>
+<li><a href="#index-Invalid-characters-in-node-names-317">Invalid characters in node names</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Invoking-macros-952">Invoking macros</a>: <a href="#Invoking-Macros">Invoking Macros</a></li>
+<li><a href="#index-Invoking-nodes_002c-including-in-dir-file-1180">Invoking nodes, including in dir file</a>: <a href="#Installing-Dir-Entries">Installing Dir Entries</a></li>
+<li><a href="#index-ISO-639-codes-917">ISO 639 codes</a>: <a href="#documentlanguage">documentlanguage</a></li>
+<li><a href="#index-Italic-font-452">Italic font</a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-Itemization-507">Itemization</a>: <a href="#itemize">itemize</a></li>
+<li><a href="#index-_0040dotless_007bj_007d-_0028dotless-j_0029-703">j (dotless j)</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-JPG-image-format-567">JPG image format</a>: <a href="#Image-Syntax">Image Syntax</a></li>
+<li><a href="#index-Keyboard-input-403">Keyboard input</a>: <a href="#kbd">kbd</a></li>
+<li><a href="#index-Keys_002c-recommended-names-412">Keys, recommended names</a>: <a href="#key">key</a></li>
+<li><a href="#index-Keyword-expansion_002c-preventing-795">Keyword expansion, preventing</a>: <a href="#w">w</a></li>
+<li><a href="#index-Keywords_002c-indicating-399">Keywords, indicating</a>: <a href="#code">code</a></li>
+<li><a href="#index-Knuth_002c-Donald-45">Knuth, Donald</a>: <a href="#Printed-Books">Printed Books</a></li>
+<li><a href="#index-_0040code_007bky_007d-_0028keystroke_0029-index-596"><code>ky</code> (keystroke) index</a>: <a href="#Predefined-Indices">Predefined Indices</a></li>
+<li><a href="#index-Language-codes-918">Language codes</a>: <a href="#documentlanguage">documentlanguage</a></li>
+<li><a href="#index-Language_002c-declaring-913">Language, declaring</a>: <a href="#documentlanguage">documentlanguage</a></li>
+<li><a href="#index-Larger-or-smaller-pages-1063">Larger or smaller pages</a>: <a href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a></li>
+<li><a href="#index-_0040LaTeX_007b_007d_002c-processing-with-_0040command_007btexi2dvi_007d-991">LaTeX, processing with <span class="command">texi2dvi</span></a>: <a href="#Format-with-texi2dvi">Format with texi2dvi</a></li>
+<li><a href="#index-Legal-paper_002c-printing-on-1056">Legal paper, printing on</a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-Length-of-file-names-171">Length of file names</a>: <a href="#setfilename">setfilename</a></li>
+<li><a href="#index-Less-cluttered-menu-entry-351">Less cluttered menu entry</a>: <a href="#Less-Cluttered-Menu-Entry">Less Cluttered Menu Entry</a></li>
+<li><a href="#index-License-agreement-258">License agreement</a>: <a href="#Software-Copying-Permissions">Software Copying Permissions</a></li>
+<li><a href="#index-License-for-all_002dpermissive-copying-1259">License for all-permissive copying</a>: <a href="#All_002dpermissive-Copying-License">All-permissive Copying License</a></li>
+<li><a href="#index-License-for-verbatim-copying-1257">License for verbatim copying</a>: <a href="#Verbatim-Copying-License">Verbatim Copying License</a></li>
+<li><a href="#index-Line-breaks-782">Line breaks</a>: <a href="#Line-Breaks">Line Breaks</a></li>
+<li><a href="#index-Line-breaks-777">Line breaks</a>: <a href="#Breaks">Breaks</a></li>
+<li><a href="#index-Line-breaks_002c-preventing-791">Line breaks, preventing</a>: <a href="#w">w</a></li>
+<li><a href="#index-Line-length_002c-column-widths-as-fraction-of-530">Line length, column widths as fraction of</a>: <a href="#Multitable-Column-Widths">Multitable Column Widths</a></li>
+<li><a href="#index-Line-spacing-805">Line spacing</a>: <a href="#sp">sp</a></li>
+<li><a href="#index-Lisp-example-473">Lisp example</a>: <a href="#lisp">lisp</a></li>
+<li><a href="#index-Lisp-examples-in-smaller-fonts-476">Lisp examples in smaller fonts</a>: <a href="#small">small</a></li>
+<li><a href="#index-List-of--_0040_0040_002dcommands-1230">List of @-commands</a>: <a href="#Command-List">Command List</a></li>
+<li><a href="#index-List-of-floats-553">List of floats</a>: <a href="#listoffloats">listoffloats</a></li>
+<li><a href="#index-Listing-a-new-Info-file-1161">Listing a new Info file</a>: <a href="#New-Info-File">New Info File</a></li>
+<li><a href="#index-Lists-and-tables_002c-making-504">Lists and tables, making</a>: <a href="#Lists-and-Tables">Lists and Tables</a></li>
+<li><a href="#index-Local-variables-1005">Local variables</a>: <a href="#Compile_002dCommand">Compile-Command</a></li>
+<li><a href="#index-Local-Variables_003a-section_002c-for-encoding-925">Local Variables: section, for encoding</a>: <a href="#documentencoding">documentencoding</a></li>
+<li><a href="#index-Location-of-menus-339">Location of menus</a>: <a href="#Menu-Location">Menu Location</a></li>
+<li><a href="#index-Looking-for-badly-referenced-nodes-1303">Looking for badly referenced nodes</a>: <a href="#Running-Info_002dValidate">Running Info-Validate</a></li>
+<li><a href="#index-Lowering-and-raising-sections-297">Lowering and raising sections</a>: <a href="#Raise_002flower-sections">Raise/lower sections</a></li>
+<li><a href="#index-lpr-_0040r_007b_0028DVI-print-command_0029_007d-992"><code>lpr </code><span class="roman">(DVI print command)</span></a>: <a href="#Print-with-lpr">Print with lpr</a></li>
+<li><a href="#index-lpr_0040r_007b_002dd_002c-replacements-on-MS_002dDOS_002fMS_002dWindows_007d-995"><code>lpr</code><span class="roman">-d, replacements on MS-DOS/MS-Windows</span></a>: <a href="#Print-with-lpr">Print with lpr</a></li>
+<li><a href="#index-Lynx-21">Lynx</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Macro-definitions-936">Macro definitions</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Macro-definitions-869">Macro definitions</a>: <a href="#Sample-Function-Definition">Sample Function Definition</a></li>
+<li><a href="#index-Macro-details-959">Macro details</a>: <a href="#Macro-Details">Macro Details</a></li>
+<li><a href="#index-Macro-expansion_002c-indicating-764">Macro expansion, indicating</a>: <a href="#expansion">expansion</a></li>
+<li><a href="#index-Macro-invocation-955">Macro invocation</a>: <a href="#Invoking-Macros">Invoking Macros</a></li>
+<li><a href="#index-Macro-names_002c-valid-characters-in-938">Macro names, valid characters in</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Macron-accent-662">Macron accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Macros-930">Macros</a>: <a href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a></li>
+<li><a href="#index-Macros-in-definition-commands-818">Macros in definition commands</a>: <a href="#Def-Cmd-Template">Def Cmd Template</a></li>
+<li><a href="#index-Macros_002c-undefining-950">Macros, undefining</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Magnified-printing-1062">Magnified printing</a>: <a href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a></li>
+<li><a href="#index-Mailto-link-439">Mailto link</a>: <a href="#email">email</a></li>
+<li><a href="#index-makeinfo-1071"><code>makeinfo</code></a>: <a href="#Invoking-makeinfo">Invoking makeinfo</a></li>
+<li><a href="#index-_0040code_007bmakeinfo_007d-inside-Emacs-1141"><code>makeinfo</code> inside Emacs</a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-_0040code_007bmakeinfo_007d-options-1072"><code>makeinfo</code> options</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-Making-a-printed-manual-972">Making a printed manual</a>: <a href="#Hardcopy">Hardcopy</a></li>
+<li><a href="#index-Making-a-tag-table-automatically-1154">Making a tag table automatically</a>: <a href="#Tag-and-Split-Files">Tag and Split Files</a></li>
+<li><a href="#index-Making-a-tag-table-manually-1311">Making a tag table manually</a>: <a href="#Unsplit">Unsplit</a></li>
+<li><a href="#index-Making-cross-references-360">Making cross references</a>: <a href="#Cross-References">Cross References</a></li>
+<li><a href="#index-Making-line-and-page-breaks-775">Making line and page breaks</a>: <a href="#Breaks">Breaks</a></li>
+<li><a href="#index-Making-lists-and-tables-503">Making lists and tables</a>: <a href="#Lists-and-Tables">Lists and Tables</a></li>
+<li><a href="#index-Man-page-output_002c-not-supported-33">Man page output, not supported</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Man-page_002c-reference-to-387">Man page, reference to</a>: <a href="#uref">uref</a></li>
+<li><a href="#index-Manual-characteristics_002c-printed-41">Manual characteristics, printed</a>: <a href="#Printed-Books">Printed Books</a></li>
+<li><a href="#index-Margins-on-page_002c-not-controllable-1057">Margins on page, not controllable</a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-Marking-text-within-a-paragraph-392">Marking text within a paragraph</a>: <a href="#Marking-Text">Marking Text</a></li>
+<li><a href="#index-Marking-words-and-phrases-390">Marking words and phrases</a>: <a href="#Marking-Text">Marking Text</a></li>
+<li><a href="#index-Masculine-ordinal-722">Masculine ordinal</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Master-menu-229">Master menu</a>: <a href="#Master-Menu-Parts">Master Menu Parts</a></li>
+<li><a href="#index-Mathematical-expressions-751">Mathematical expressions</a>: <a href="#math">math</a></li>
+<li><a href="#index-Mathematical-expressions-898">Mathematical expressions</a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-Menu-description_002c-start-115">Menu description, start</a>: <a href="#Inserting">Inserting</a></li>
+<li><a href="#index-Menu-entries-with-two-colons-350">Menu entries with two colons</a>: <a href="#Less-Cluttered-Menu-Entry">Less Cluttered Menu Entry</a></li>
+<li><a href="#index-Menu-example-353">Menu example</a>: <a href="#Menu-Example">Menu Example</a></li>
+<li><a href="#index-Menu-location-338">Menu location</a>: <a href="#Menu-Location">Menu Location</a></li>
+<li><a href="#index-Menu-parts-346">Menu parts</a>: <a href="#Menu-Parts">Menu Parts</a></li>
+<li><a href="#index-Menu-writing-343">Menu writing</a>: <a href="#Writing-a-Menu">Writing a Menu</a></li>
+<li><a href="#index-Menu_002c-master-230">Menu, master</a>: <a href="#Master-Menu-Parts">Master Menu Parts</a></li>
+<li><a href="#index-Menus-336">Menus</a>: <a href="#Menus">Menus</a></li>
+<li><a href="#index-Menus-generated-with-indices-267">Menus generated with indices</a>: <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a></li>
+<li><a href="#index-Menus_002c-omitting-1105">Menus, omitting</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-META-key-415">META key</a>: <a href="#key">key</a></li>
+<li><a href="#index-Meta_002dsyntactic-chars-for-arguments-829">Meta-syntactic chars for arguments</a>: <a href="#Optional-Arguments">Optional Arguments</a></li>
+<li><a href="#index-Methods_002c-object_002doriented-860">Methods, object-oriented</a>: <a href="#Object_002dOriented-Methods">Object-Oriented Methods</a></li>
+<li><a href="#index-Millimeters-580">Millimeters</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Minimal-requirements-for-formatting-1009">Minimal requirements for formatting</a>: <a href="#Requirements-Summary">Requirements Summary</a></li>
+<li><a href="#index-Minimal-Texinfo-file-_0028requirements_0029-72">Minimal Texinfo file (requirements)</a>: <a href="#Minimum">Minimum</a></li>
+<li><a href="#index-Mismatched-HTML-cross_002dreference-source-and-target-1228">Mismatched HTML cross-reference source and target</a>: <a href="#HTML-Xref-Mismatch">HTML Xref Mismatch</a></li>
+<li><a href="#index-Mistakes_002c-catching-1289">Mistakes, catching</a>: <a href="#Catching-Mistakes">Catching Mistakes</a></li>
+<li><a href="#index-Mode_002c-using-Texinfo-95">Mode, using Texinfo</a>: <a href="#Texinfo-Mode">Texinfo Mode</a></li>
+<li><a href="#index-Monospace-font-454">Monospace font</a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-Mozilla-20">Mozilla</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Multiple-dashes-in-source-60">Multiple dashes in source</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Multiple-spaces-644">Multiple spaces</a>: <a href="#Multiple-Spaces">Multiple Spaces</a></li>
+<li><a href="#index-Multitable-column-widths-526">Multitable column widths</a>: <a href="#Multitable-Column-Widths">Multitable Column Widths</a></li>
+<li><a href="#index-Multitable-rows-532">Multitable rows</a>: <a href="#Multitable-Rows">Multitable Rows</a></li>
+<li><a href="#index-Must-have-in-Texinfo-file-73">Must have in Texinfo file</a>: <a href="#Minimum">Minimum</a></li>
+<li><a href="#index-Mutually-recursive-macros-941">Mutually recursive macros</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Names-for-indices-614">Names for indices</a>: <a href="#syncodeindex">syncodeindex</a></li>
+<li><a href="#index-Names-of-index-files-981">Names of index files</a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-Names-of-macros_002c-valid-characters-of-939">Names of macros, valid characters of</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Names-recommended-for-keys-413">Names recommended for keys</a>: <a href="#key">key</a></li>
+<li><a href="#index-Naming-a-_0060Top_0027-Node-in-references-369">Naming a `Top' Node in references</a>: <a href="#Top-Node-Naming">Top Node Naming</a></li>
+<li><a href="#index-NASA_002c-as-acronym-430">NASA, as acronym</a>: <a href="#acronym">acronym</a></li>
+<li><a href="#index-Navigation-bar_002c-in-HTML-output-1207">Navigation bar, in HTML output</a>: <a href="#HTML-Translation">HTML Translation</a></li>
+<li><a href="#index-Navigation-links_002c-omitting-1106">Navigation links, omitting</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-Need-space-at-page-bottom-812">Need space at page bottom</a>: <a href="#need">need</a></li>
+<li><a href="#index-Nesting-conditionals-910">Nesting conditionals</a>: <a href="#Conditional-Nesting">Conditional Nesting</a></li>
+<li><a href="#index-New-index-defining-619">New index defining</a>: <a href="#New-Indices">New Indices</a></li>
+<li><a href="#index-New-Info-file_002c-listing-it-in-_0040file_007bdir_007d-file-1162">New Info file, listing it in <span class="file">dir</span> file</a>: <a href="#New-Info-File">New Info File</a></li>
+<li><a href="#index-New-Texinfo-commands_002c-defining-932">New Texinfo commands, defining</a>: <a href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a></li>
+<li><a href="#index-Newlines_002c-as-blank-lines-56">Newlines, as blank lines</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Next-node-of-Top-node-327">Next node of Top node</a>: <a href="#First-Node">First Node</a></li>
+<li><a href="#index-Node-line-requirements-306">Node line requirements</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Node-line-writing-305">Node line writing</a>: <a href="#Writing-a-Node">Writing a Node</a></li>
+<li><a href="#index-node-name-expansion_002c-in-HTML-cross_002dreferences-1221">node name expansion, in HTML cross-references</a>: <a href="#HTML-Xref-Node-Name-Expansion">HTML Xref Node Name Expansion</a></li>
+<li><a href="#index-Node-name-must-be-unique-309">Node name must be unique</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Node-name_002c-should-not-contain-_0040_0040_002dcommands-311">Node name, should not contain @-commands</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Node-names_002c-choosing-302">Node names, choosing</a>: <a href="#Node-Names">Node Names</a></li>
+<li><a href="#index-Node-names_002c-invalid-characters-in-318">Node names, invalid characters in</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Node-separators_002c-omitting-1104">Node separators, omitting</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-Node_002c-_0060Top_0027-226">Node, `Top'</a>: <a href="#The-Top-Node">The Top Node</a></li>
+<li><a href="#index-Node_002c-defined-300">Node, defined</a>: <a href="#node">node</a></li>
+<li><a href="#index-Nodes-in-other-Info-files-356">Nodes in other Info files</a>: <a href="#Other-Info-Files">Other Info Files</a></li>
+<li><a href="#index-Nodes_002c-catching-mistakes-1286">Nodes, catching mistakes</a>: <a href="#Catching-Mistakes">Catching Mistakes</a></li>
+<li><a href="#index-Nodes_002c-checking-for-badly-referenced-1301">Nodes, checking for badly referenced</a>: <a href="#Running-Info_002dValidate">Running Info-Validate</a></li>
+<li><a href="#index-Non_002dbreakable-space_002c-fixed-792">Non-breakable space, fixed</a>: <a href="#w">w</a></li>
+<li><a href="#index-Non_002dbreakable-space_002c-variable-800">Non-breakable space, variable</a>: <a href="#tie">tie</a></li>
+<li><a href="#index-Not-ending-a-sentence-635">Not ending a sentence</a>: <a href="#Not-Ending-a-Sentence">Not Ending a Sentence</a></li>
+<li><a href="#index-Numbering-of-floats-547">Numbering of floats</a>: <a href="#float">float</a></li>
+<li><a href="#index-_0040ordm_007b_007d-724">&ordm;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-O_0027Dea_002c-Brendan-35">O'Dea, Brendan</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Object_002doriented-programming-850">Object-oriented programming</a>: <a href="#Abstract-Objects">Abstract Objects</a></li>
+<li><a href="#index-Obtaining-_0040TeX_007b_007d-1066">Obtaining TeX</a>: <a href="#Obtaining-TeX">Obtaining TeX</a></li>
+<li><a href="#index-Occurrences_002c-listing-with-_0040code_007b_0040_0040occur_007d-1298">Occurrences, listing with <code>@occur</code></a>: <a href="#Using-occur">Using occur</a></li>
+<li><a href="#index-_0040OE_007b_007d-716">&OElig;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-_0040oe_007b_007d-714">&oelig;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Omitting-indentation-492">Omitting indentation</a>: <a href="#noindent">noindent</a></li>
+<li><a href="#index-Optional-and-repeated-arguments-825">Optional and repeated arguments</a>: <a href="#Optional-Arguments">Optional Arguments</a></li>
+<li><a href="#index-Options-for-_0040code_007bmakeinfo_007d-1073">Options for <code>makeinfo</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-Ordinals_002c-Romance-718">Ordinals, Romance</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Ordinary-_0040TeX_007b_007d-commands_002c-using-890">Ordinary TeX commands, using</a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-Other-Info-files_0027-nodes-357">Other Info files' nodes</a>: <a href="#Other-Info-Files">Other Info Files</a></li>
+<li><a href="#index-Outline-of-file-structure_002c-showing-it-120">Outline of file structure, showing it</a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-Output-file-splitting-1115">Output file splitting</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-Output-formats-14">Output formats</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Output-formats_002c-supporting-more-36">Output formats, supporting more</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Overfull-_0040samp_007bhboxes_007d-1026">Overfull <span class="samp">hboxes</span></a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-Overview-of-Texinfo-3">Overview of Texinfo</a>: <a href="#Overview">Overview</a></li>
+<li><a href="#index-Owner-of-copyright-for-FSF-works-186">Owner of copyright for FSF works</a>: <a href="#copying">copying</a></li>
+<li><a href="#index-Page-breaks-779">Page breaks</a>: <a href="#Breaks">Breaks</a></li>
+<li><a href="#index-Page-breaks-806">Page breaks</a>: <a href="#page">page</a></li>
+<li><a href="#index-Page-delimiter-in-Texinfo-mode-127">Page delimiter in Texinfo mode</a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-Page-headings-1271">Page headings</a>: <a href="#Headings">Headings</a></li>
+<li><a href="#index-Page-numbering-1270">Page numbering</a>: <a href="#Headings">Headings</a></li>
+<li><a href="#index-Page-sizes-for-books-1039">Page sizes for books</a>: <a href="#smallbook">smallbook</a></li>
+<li><a href="#index-Page-sizes_002c-customized-1050">Page sizes, customized</a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-page_002ddelimiter-126"><code>page-delimiter</code></a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-Pages_002c-starting-odd-240">Pages, starting odd</a>: <a href="#setchapternewpage">setchapternewpage</a></li>
+<li><a href="#index-Paper-size_002c-A4-1043">Paper size, A4</a>: <a href="#A4-Paper">A4 Paper</a></li>
+<li><a href="#index-Paragraph-indentation-control-243">Paragraph indentation control</a>: <a href="#paragraphindent">paragraphindent</a></li>
+<li><a href="#index-Paragraph-separator-54">Paragraph separator</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Paragraph_002c-marking-text-within-389">Paragraph, marking text within</a>: <a href="#Marking-Text">Marking Text</a></li>
+<li><a href="#index-Parameters-to-macros-943">Parameters to macros</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Parentheses-in-nodename-314">Parentheses in nodename</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Parsing-errors-1146">Parsing errors</a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-Part-of-file-formatting-and-printing-152">Part of file formatting and printing</a>: <a href="#Printing">Printing</a></li>
+<li><a href="#index-Parts-of-a-cross-reference-365">Parts of a cross reference</a>: <a href="#Cross-Reference-Parts">Cross Reference Parts</a></li>
+<li><a href="#index-Parts-of-a-master-menu-231">Parts of a master menu</a>: <a href="#Master-Menu-Parts">Master Menu Parts</a></li>
+<li><a href="#index-Parts-of-a-menu-345">Parts of a menu</a>: <a href="#Menu-Parts">Menu Parts</a></li>
+<li><a href="#index-Patches_002c-contributing-9">Patches, contributing</a>: <a href="#Reporting-Bugs">Reporting Bugs</a></li>
+<li><a href="#index-PDF-output-1064">PDF output</a>: <a href="#PDF-Output">PDF Output</a></li>
+<li><a href="#index-PDF-output-26">PDF output</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-pdfcolor_002etex_0040r_007b_002c-installing_007d-1018"><code>pdfcolor.tex</code><span class="roman">, installing</span></a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-pdftex-1065"><code>pdftex</code></a>: <a href="#PDF-Output">PDF Output</a></li>
+<li><a href="#index-pdftex-28"><code>pdftex</code></a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-pdftex_0040r_007b_002c-and-images_007d-561"><code>pdftex</code><span class="roman">, and images</span></a>: <a href="#Image-Syntax">Image Syntax</a></li>
+<li><a href="#index-Period-in-nodename-315">Period in nodename</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Periods_002c-inserting-637">Periods, inserting</a>: <a href="#Not-Ending-a-Sentence">Not Ending a Sentence</a></li>
+<li><a href="#index-Permissions-text_002c-including-189">Permissions text, including</a>: <a href="#insertcopying">insertcopying</a></li>
+<li><a href="#index-Permissions_002c-printed-207">Permissions, printed</a>: <a href="#Copyright">Copyright</a></li>
+<li><a href="#index-_0040code_007bpg_007d-_0028program_0029-index-597"><code>pg</code> (program) index</a>: <a href="#Predefined-Indices">Predefined Indices</a></li>
+<li><a href="#index-Picas-576">Picas</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Pictures_002c-inserting-557">Pictures, inserting</a>: <a href="#Images">Images</a></li>
+<li><a href="#index-Pinard_002c-Fran_0040_002c_007bc_007dois-82">Pinard, Fran&ccedil;ois</a>: <a href="#History">History</a></li>
+<li><a href="#index-Plain-_0040TeX_007b_007d-895">Plain TeX</a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-Plain-text-output-1100">Plain text output</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-Plain-text-output-17">Plain text output</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-PNG-image-format-566">PNG image format</a>: <a href="#Image-Syntax">Image Syntax</a></li>
+<li><a href="#index-Point_002c-indicating-in-a-buffer-772">Point, indicating in a buffer</a>: <a href="#Point-Glyph">Point Glyph</a></li>
+<li><a href="#index-Pointer-creation-with-_0040code_007bmakeinfo_007d-330">Pointer creation with <code>makeinfo</code></a>: <a href="#makeinfo-Pointer-Creation">makeinfo Pointer Creation</a></li>
+<li><a href="#index-Pointer-validation-with-_0040code_007bmakeinfo_007d-1136">Pointer validation with <code>makeinfo</code></a>: <a href="#Pointer-Validation">Pointer Validation</a></li>
+<li><a href="#index-Pointer-validation_002c-suppressing-988">Pointer validation, suppressing</a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-Pointer-validation_002c-suppressing-1118">Pointer validation, suppressing</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-Points-_0028dimension_0029-575">Points (dimension)</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Predefined-names-for-indices-611">Predefined names for indices</a>: <a href="#syncodeindex">syncodeindex</a></li>
+<li><a href="#index-Preparing-for-_0040TeX_007b_007d-1011">Preparing for TeX</a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-Preventing-first-paragraph-indentation-247">Preventing first paragraph indentation</a>: <a href="#firstparagraphindent">firstparagraphindent</a></li>
+<li><a href="#index-Preventing-line-and-page-breaks-776">Preventing line and page breaks</a>: <a href="#Breaks">Breaks</a></li>
+<li><a href="#index-Previous-node-of-Top-node-326">Previous node of Top node</a>: <a href="#First-Node">First Node</a></li>
+<li><a href="#index-Print-and-format-in-Texinfo-mode-1003">Print and format in Texinfo mode</a>: <a href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a></li>
+<li><a href="#index-Print_002c-format-from-Emacs-shell-996">Print, format from Emacs shell</a>: <a href="#Within-Emacs">Within Emacs</a></li>
+<li><a href="#index-Printed-book-and-manual-characteristics-40">Printed book and manual characteristics</a>: <a href="#Printed-Books">Printed Books</a></li>
+<li><a href="#index-Printed-output_002c-indicating-766">Printed output, indicating</a>: <a href="#Print-Glyph">Print Glyph</a></li>
+<li><a href="#index-Printed-permissions-206">Printed permissions</a>: <a href="#Copyright">Copyright</a></li>
+<li><a href="#index-Printing-a-region-or-buffer-149">Printing a region or buffer</a>: <a href="#Printing">Printing</a></li>
+<li><a href="#index-Printing-an-index-264">Printing an index</a>: <a href="#Printing-Indices-_0026-Menus">Printing Indices &amp; Menus</a></li>
+<li><a href="#index-Printing-cropmarks-1060">Printing cropmarks</a>: <a href="#Cropmarks-and-Magnification">Cropmarks and Magnification</a></li>
+<li><a href="#index-Printing-DVI-files_002c-on-MS_002dDOS_002fMS_002dWindows-994">Printing DVI files, on MS-DOS/MS-Windows</a>: <a href="#Print-with-lpr">Print with lpr</a></li>
+<li><a href="#index-Printing-hardcopy-970">Printing hardcopy</a>: <a href="#Hardcopy">Hardcopy</a></li>
+<li><a href="#index-Problems_002c-catching-1290">Problems, catching</a>: <a href="#Catching-Mistakes">Catching Mistakes</a></li>
+<li><a href="#index-Program-names_002c-indicating-425">Program names, indicating</a>: <a href="#command">command</a></li>
+<li><a href="#index-Prototype-row_002c-column-widths-defined-by-531">Prototype row, column widths defined by</a>: <a href="#Multitable-Column-Widths">Multitable Column Widths</a></li>
+<li><a href="#index-Quotation-characters-_0028_0060_0027_0029_002c-in-source-57">Quotation characters (`'), in source</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Quotations-460">Quotations</a>: <a href="#quotation">quotation</a></li>
+<li><a href="#index-Ragged-left-491">Ragged left</a>: <a href="#flushleft-_0026-flushright">flushleft &amp; flushright</a></li>
+<li><a href="#index-Ragged-right-490">Ragged right</a>: <a href="#flushleft-_0026-flushright">flushleft &amp; flushright</a></li>
+<li><a href="#index-Raising-and-lowering-sections-296">Raising and lowering sections</a>: <a href="#Raise_002flower-sections">Raise/lower sections</a></li>
+<li><a href="#index-Raw-formatter-commands-888">Raw formatter commands</a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-RCS-_0024Id-1247">RCS $Id</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Recommended-names-for-keys-411">Recommended names for keys</a>: <a href="#key">key</a></li>
+<li><a href="#index-Rectangle_002c-black-in-hardcopy-1032">Rectangle, black in hardcopy</a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-Recursion_002c-mutual-942">Recursion, mutual</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Recursive-macro-invocations-947">Recursive macro invocations</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Reference-to-_0040_0040_002dcommands-1232">Reference to @-commands</a>: <a href="#Command-List">Command List</a></li>
+<li><a href="#index-References-362">References</a>: <a href="#Cross-References">Cross References</a></li>
+<li><a href="#index-References-using-_0040code_007b_0040_0040inforef_007d-381">References using <code>@inforef</code></a>: <a href="#inforef">inforef</a></li>
+<li><a href="#index-References-using-_0040code_007b_0040_0040pxref_007d-377">References using <code>@pxref</code></a>: <a href="#pxref">pxref</a></li>
+<li><a href="#index-References-using-_0040code_007b_0040_0040ref_007d-372">References using <code>@ref</code></a>: <a href="#ref">ref</a></li>
+<li><a href="#index-References-using-_0040code_007b_0040_0040xref_007d-368">References using <code>@xref</code></a>: <a href="#xref">xref</a></li>
+<li><a href="#index-Referring-to-other-Info-files-355">Referring to other Info files</a>: <a href="#Other-Info-Files">Other Info Files</a></li>
+<li><a href="#index-Region-formatting-and-printing-150">Region formatting and printing</a>: <a href="#Printing">Printing</a></li>
+<li><a href="#index-Region-printing-in-Texinfo-mode-1001">Region printing in Texinfo mode</a>: <a href="#Texinfo-Mode-Printing">Texinfo Mode Printing</a></li>
+<li><a href="#index-Reid_002c-Brian-89">Reid, Brian</a>: <a href="#History">History</a></li>
+<li><a href="#index-Repeated-and-optional-arguments-826">Repeated and optional arguments</a>: <a href="#Optional-Arguments">Optional Arguments</a></li>
+<li><a href="#index-Reporting-bugs-7">Reporting bugs</a>: <a href="#Reporting-Bugs">Reporting Bugs</a></li>
+<li><a href="#index-Required-in-Texinfo-file-74">Required in Texinfo file</a>: <a href="#Minimum">Minimum</a></li>
+<li><a href="#index-Requirements-for-formatting-1008">Requirements for formatting</a>: <a href="#Requirements-Summary">Requirements Summary</a></li>
+<li><a href="#index-Requirements-for-include-files-1264">Requirements for include files</a>: <a href="#Include-Files-Requirements">Include Files Requirements</a></li>
+<li><a href="#index-Requirements-for-updating-commands-138">Requirements for updating commands</a>: <a href="#Updating-Requirements">Updating Requirements</a></li>
+<li><a href="#index-Reserved-words_002c-indicating-400">Reserved words, indicating</a>: <a href="#code">code</a></li>
+<li><a href="#index-Restrictions-on-node-names-307">Restrictions on node names</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Result-of-an-expression-758">Result of an expression</a>: <a href="#result">result</a></li>
+<li><a href="#index-ridt_002eeps-584"><code>ridt.eps</code></a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Ring-accent-676">Ring accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Roman-font-457">Roman font</a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-Romance-ordinals-717">Romance ordinals</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Rounded-rectangles_002c-around-examples-502">Rounded rectangles, around examples</a>: <a href="#cartouche">cartouche</a></li>
+<li><a href="#index-Rows_002c-of-a-multitable-533">Rows, of a multitable</a>: <a href="#Multitable-Rows">Multitable Rows</a></li>
+<li><a href="#index-Running-an-Info-formatter-144">Running an Info formatter</a>: <a href="#Info-Formatting">Info Formatting</a></li>
+<li><a href="#index-Running-_0040code_007bInfo_002dvalidate_007d-1306">Running <code>Info-validate</code></a>: <a href="#Using-Info_002dvalidate">Using Info-validate</a></li>
+<li><a href="#index-Running-macros-954">Running macros</a>: <a href="#Invoking-Macros">Invoking Macros</a></li>
+<li><a href="#index-Running-_0040code_007bmakeinfo_007d-in-Emacs-1140">Running <code>makeinfo</code> in Emacs</a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-Sample-_0040code_007b_0040_0040include_007d-file-1265">Sample <code>@include</code> file</a>: <a href="#Sample-Include-File">Sample Include File</a></li>
+<li><a href="#index-Sample-function-definition-870">Sample function definition</a>: <a href="#Sample-Function-Definition">Sample Function Definition</a></li>
+<li><a href="#index-Sample-Texinfo-file_002c-no-comments-1241">Sample Texinfo file, no comments</a>: <a href="#Short-Sample-Texinfo-File">Short Sample Texinfo File</a></li>
+<li><a href="#index-Sample-Texinfo-file_002c-with-comments-77">Sample Texinfo file, with comments</a>: <a href="#Short-Sample">Short Sample</a></li>
+<li><a href="#index-Sample-Texinfo-files-1240">Sample Texinfo files</a>: <a href="#Sample-Texinfo-Files">Sample Texinfo Files</a></li>
+<li><a href="#index-Sample-texts_002c-GNU-1243">Sample texts, GNU</a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Scaled-points-583">Scaled points</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Scaling-images-569">Scaling images</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Schwab_002c-Andreas-86">Schwab, Andreas</a>: <a href="#History">History</a></li>
+<li><a href="#index-Scribe-88">Scribe</a>: <a href="#History">History</a></li>
+<li><a href="#index-Sea-surges-375">Sea surges</a>: <a href="#ref">ref</a></li>
+<li><a href="#index-Section-structure-of-a-file_002c-showing-it-118">Section structure of a file, showing it</a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-Sections_002c-raising-and-lowering-298">Sections, raising and lowering</a>: <a href="#Raise_002flower-sections">Raise/lower sections</a></li>
+<li><a href="#index-Sentence-ending-punctuation-640">Sentence ending punctuation</a>: <a href="#Ending-a-Sentence">Ending a Sentence</a></li>
+<li><a href="#index-Sentence-non_002dending-punctuation-636">Sentence non-ending punctuation</a>: <a href="#Not-Ending-a-Sentence">Not Ending a Sentence</a></li>
+<li><a href="#index-_0040samp_007b_0040r_007bSeparate_007d_007d-footnote-style-589"><span class="samp">Separate</span> footnote style</a>: <a href="#Footnote-Styles">Footnote Styles</a></li>
+<li><a href="#index-SGML_002dtools-output-format-37">SGML-tools output format</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Sharp-S-728">Sharp S</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Shell-formatting-with-_0040code_007btex_007d-and-_0040code_007btexindex_007d-977">Shell formatting with <code>tex</code> and <code>texindex</code></a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-Shell-printing_002c-on-MS_002dDOS_002fMS_002dWindows-993">Shell printing, on MS-DOS/MS-Windows</a>: <a href="#Print-with-lpr">Print with lpr</a></li>
+<li><a href="#index-Shell_002c-format_002c-print-from-998">Shell, format, print from</a>: <a href="#Within-Emacs">Within Emacs</a></li>
+<li><a href="#index-Shell_002c-running-_0040code_007bmakeinfo_007d-in-1142">Shell, running <code>makeinfo</code> in</a>: <a href="#makeinfo-in-Emacs">makeinfo in Emacs</a></li>
+<li><a href="#index-Short-captions_002c-for-lists-of-floats-551">Short captions, for lists of floats</a>: <a href="#caption-shortcaption">caption shortcaption</a></li>
+<li><a href="#index-Short-table-of-contents-217">Short table of contents</a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-Showing-the-section-structure-of-a-file-117">Showing the section structure of a file</a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-Showing-the-structure-of-a-file-1296">Showing the structure of a file</a>: <a href="#Using-texinfo_002dshow_002dstructure">Using texinfo-show-structure</a></li>
+<li><a href="#index-Shrubbery-907">Shrubbery</a>: <a href="#ifset-ifclear">ifset ifclear</a></li>
+<li><a href="#index-Site_002dwide-Texinfo-configuration-file-1021">Site-wide Texinfo configuration file</a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-Size-of-printed-book-1040">Size of printed book</a>: <a href="#smallbook">smallbook</a></li>
+<li><a href="#index-Slanted-typewriter-font_002c-for-_0040code_007b_0040_0040kbd_007d-405">Slanted typewriter font, for <code>@kbd</code></a>: <a href="#kbd">kbd</a></li>
+<li><a href="#index-Small-book-size-1037">Small book size</a>: <a href="#smallbook">smallbook</a></li>
+<li><a href="#index-Small-caps-font-444">Small caps font</a>: <a href="#Smallcaps">Smallcaps</a></li>
+<li><a href="#index-Small-examples-474">Small examples</a>: <a href="#small">small</a></li>
+<li><a href="#index-Software-copying-permissions-255">Software copying permissions</a>: <a href="#Software-Copying-Permissions">Software Copying Permissions</a></li>
+<li><a href="#index-Sorting-indices-973">Sorting indices</a>: <a href="#Hardcopy">Hardcopy</a></li>
+<li><a href="#index-Source-file-format-13">Source file format</a>: <a href="#Using-Texinfo">Using Texinfo</a></li>
+<li><a href="#index-Source-files_002c-characters-used-53">Source files, characters used</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Space_002c-inserting-horizontal-646">Space, inserting horizontal</a>: <a href="#Multiple-Spaces">Multiple Spaces</a></li>
+<li><a href="#index-Space_002c-inserting-vertical-803">Space, inserting vertical</a>: <a href="#sp">sp</a></li>
+<li><a href="#index-Spaces-in-macros-945">Spaces in macros</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Spaces-in-node-name-321">Spaces in node name</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Spaces_002c-in-menus-344">Spaces, in menus</a>: <a href="#Writing-a-Menu">Writing a Menu</a></li>
+<li><a href="#index-Spacing_002c-inserting-634">Spacing, inserting</a>: <a href="#Inserting-Space">Inserting Space</a></li>
+<li><a href="#index-Special-characters_002c-inserting-624">Special characters, inserting</a>: <a href="#Atsign-Braces-Comma">Atsign Braces Comma</a></li>
+<li><a href="#index-Special-displays-539">Special displays</a>: <a href="#Special-Displays">Special Displays</a></li>
+<li><a href="#index-Special-insertions-623">Special insertions</a>: <a href="#Insertions">Insertions</a></li>
+<li><a href="#index-Special-typesetting-commands-735">Special typesetting commands</a>: <a href="#Dots-Bullets">Dots Bullets</a></li>
+<li><a href="#index-Specifying-index-entries-603">Specifying index entries</a>: <a href="#Indexing-Commands">Indexing Commands</a></li>
+<li><a href="#index-Split-HTML-output-1209">Split HTML output</a>: <a href="#HTML-Splitting">HTML Splitting</a></li>
+<li><a href="#index-Splitting-an-Info-file-manually-1313">Splitting an Info file manually</a>: <a href="#Splitting">Splitting</a></li>
+<li><a href="#index-Splitting-of-output-files-1114">Splitting of output files</a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-_0040ss_007b_007d-726">&szlig;</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Stallman_002c-Richard-M_002e-78">Stallman, Richard M.</a>: <a href="#History">History</a></li>
+<li><a href="#index-Start-of-header-line-166">Start of header line</a>: <a href="#Start-of-Header">Start of Header</a></li>
+<li><a href="#index-Starting-chapters-239">Starting chapters</a>: <a href="#setchapternewpage">setchapternewpage</a></li>
+<li><a href="#index-Structure-of-a-file_002c-showing-it-119">Structure of a file, showing it</a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-Structure_002c-catching-mistakes-in-1285">Structure, catching mistakes in</a>: <a href="#Catching-Mistakes">Catching Mistakes</a></li>
+<li><a href="#index-Structuring-of-chapters-271">Structuring of chapters</a>: <a href="#Structuring">Structuring</a></li>
+<li><a href="#index-Subsection_002dlike-commands-285">Subsection-like commands</a>: <a href="#unnumberedsubsec-appendixsubsec-subheading">unnumberedsubsec appendixsubsec subheading</a></li>
+<li><a href="#index-Subsub-commands-289">Subsub commands</a>: <a href="#subsubsection">subsubsection</a></li>
+<li><a href="#index-Suggestions-for-Texinfo_002c-making-6">Suggestions for Texinfo, making</a>: <a href="#Reporting-Bugs">Reporting Bugs</a></li>
+<li><a href="#index-Summary-of-document-235">Summary of document</a>: <a href="#documentdescription">documentdescription</a></li>
+<li><a href="#index-Suppressing-first-paragraph-indentation-246">Suppressing first paragraph indentation</a>: <a href="#firstparagraphindent">firstparagraphindent</a></li>
+<li><a href="#index-Suppressing-indentation-493">Suppressing indentation</a>: <a href="#noindent">noindent</a></li>
+<li><a href="#index-Syntactic-conventions-50">Syntactic conventions</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Syntactic-tokens_002c-indicating-397">Syntactic tokens, indicating</a>: <a href="#code">code</a></li>
+<li><a href="#index-Syntax_002c-of-_0040_0040_002dcommands-1234">Syntax, of @-commands</a>: <a href="#Command-Syntax">Command Syntax</a></li>
+<li><a href="#index-Syntax_002c-optional-_0026-repeated-arguments-828">Syntax, optional &amp; repeated arguments</a>: <a href="#Optional-Arguments">Optional Arguments</a></li>
+<li><a href="#index-Table-of-contents-215">Table of contents</a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-Table-of-contents_002c-after-title-page-224">Table of contents, after title page</a>: <a href="#Contents">Contents</a></li>
+<li><a href="#index-Table-of-contents_002c-for-floats-555">Table of contents, for floats</a>: <a href="#listoffloats">listoffloats</a></li>
+<li><a href="#index-Tables-and-lists_002c-making-505">Tables and lists, making</a>: <a href="#Lists-and-Tables">Lists and Tables</a></li>
+<li><a href="#index-Tables-with-indexes-518">Tables with indexes</a>: <a href="#ftable-vtable">ftable vtable</a></li>
+<li><a href="#index-Tables_002c-making-multi_002dcolumn-524">Tables, making multi-column</a>: <a href="#Multi_002dcolumn-Tables">Multi-column Tables</a></li>
+<li><a href="#index-Tables_002c-making-two_002dcolumn-513">Tables, making two-column</a>: <a href="#Two_002dcolumn-Tables">Two-column Tables</a></li>
+<li><a href="#index-Tabs_003b-don_0027t-use_0021-65">Tabs; don't use!</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Tag-table_002c-making-automatically-1155">Tag table, making automatically</a>: <a href="#Tag-and-Split-Files">Tag and Split Files</a></li>
+<li><a href="#index-Tag-table_002c-making-manually-1312">Tag table, making manually</a>: <a href="#Unsplit">Unsplit</a></li>
+<li><a href="#index-Targets-for-cross_002dreferences_002c-arbitrary-335">Targets for cross-references, arbitrary</a>: <a href="#anchor">anchor</a></li>
+<li><a href="#index-Template-for-a-definition-816">Template for a definition</a>: <a href="#Def-Cmd-Template">Def Cmd Template</a></li>
+<li><a href="#index-_0040TeX_007b_007d-commands_002c-using-ordinary-889">TeX commands, using ordinary</a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-_0040TeX_007b_007d-index-sorting-975">TeX index sorting</a>: <a href="#Hardcopy">Hardcopy</a></li>
+<li><a href="#index-_0040TeX_007b_007d-input-initialization-1012">TeX input initialization</a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-_0040TeX_007b_007d_002c-how-to-obtain-1067">TeX, how to obtain</a>: <a href="#Obtaining-TeX">Obtaining TeX</a></li>
+<li><a href="#index-texi2dvi-985"><code>texi2dvi</code></a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-texi2dvi-_0040r_007b_0028shell-script_0029_007d-990"><code>texi2dvi </code><span class="roman">(shell script)</span></a>: <a href="#Format-with-texi2dvi">Format with texi2dvi</a></li>
+<li><a href="#index-texi2roff_0040r_007b_002c-unsupported-software_007d-1316"><code>texi2roff</code><span class="roman">, unsupported software</span></a>: <a href="#Footnotes">Footnotes</a></li>
+<li><a href="#index-texindex-980"><code>texindex</code></a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-texindex-976"><code>texindex</code></a>: <a href="#Hardcopy">Hardcopy</a></li>
+<li><a href="#index-Texinfo-commands_002c-defining-new-933">Texinfo commands, defining new</a>: <a href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a></li>
+<li><a href="#index-Texinfo-file-beginning-157">Texinfo file beginning</a>: <a href="#Beginning-a-File">Beginning a File</a></li>
+<li><a href="#index-Texinfo-file-ending-261">Texinfo file ending</a>: <a href="#Ending-a-File">Ending a File</a></li>
+<li><a href="#index-Texinfo-file-header-162">Texinfo file header</a>: <a href="#Texinfo-File-Header">Texinfo File Header</a></li>
+<li><a href="#index-Texinfo-file-minimum-75">Texinfo file minimum</a>: <a href="#Minimum">Minimum</a></li>
+<li><a href="#index-Texinfo-file-section-structure_002c-showing-it-123">Texinfo file section structure, showing it</a>: <a href="#Showing-the-Structure">Showing the Structure</a></li>
+<li><a href="#index-Texinfo-history-91">Texinfo history</a>: <a href="#History">History</a></li>
+<li><a href="#index-Texinfo-mode-94">Texinfo mode</a>: <a href="#Texinfo-Mode">Texinfo Mode</a></li>
+<li><a href="#index-Texinfo-overview-4">Texinfo overview</a>: <a href="#Overview">Overview</a></li>
+<li><a href="#index-Texinfo-printed-book-characteristics-43">Texinfo printed book characteristics</a>: <a href="#Printed-Books">Printed Books</a></li>
+<li><a href="#index-Texinfo-requires-_0040code_007b_0040_0040setfilename_007d-168">Texinfo requires <code>@setfilename</code></a>: <a href="#setfilename">setfilename</a></li>
+<li><a href="#index-Texinfo_002c-introduction-to-11">Texinfo, introduction to</a>: <a href="#Using-Texinfo">Using Texinfo</a></li>
+<li><a href="#index-texinfo_002ecnf-174"><code>texinfo.cnf</code></a>: <a href="#setfilename">setfilename</a></li>
+<li><a href="#index-texinfo_002ecnf-_0040r_007binstallation_007d-1019"><code>texinfo.cnf </code><span class="roman">installation</span></a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-texinfo_002edtd-31"><code>texinfo.dtd</code></a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-texinfo_002etex_0040r_007b_002c-installing_007d-1016"><code>texinfo.tex</code><span class="roman">, installing</span></a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-TEXINFO_005fOUTPUT_005fFORMAT-1134"><code>TEXINFO_OUTPUT_FORMAT</code></a>: <a href="#makeinfo-options">makeinfo options</a></li>
+<li><a href="#index-TEXINPUTS-1023"><code>TEXINPUTS</code></a>: <a href="#Preparing-for-TeX">Preparing for TeX</a></li>
+<li><a href="#index-Text-width-and-height-1051">Text width and height</a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-Text_002c-conditionally-visible-873">Text, conditionally visible</a>: <a href="#Conditionals">Conditionals</a></li>
+<li><a href="#index-Text_002c-marking-up-393">Text, marking up</a>: <a href="#Marking-Text">Marking Text</a></li>
+<li><a href="#index-Thin-space-between-number_002c-dimension-650">Thin space between number, dimension</a>: <a href="#dmn">dmn</a></li>
+<li><a href="#index-Tie_002dafter-accent-678">Tie-after accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Tied-space-799">Tied space</a>: <a href="#tie">tie</a></li>
+<li><a href="#index-Tilde-accent-668">Tilde accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-time_002dstamp_002eel-1253"><code>time-stamp.el</code></a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Tips-1237">Tips</a>: <a href="#Tips">Tips</a></li>
+<li><a href="#index-Title-page-193">Title page</a>: <a href="#titlepage">titlepage</a></li>
+<li><a href="#index-Title-page_002c-bastard-198">Title page, bastard</a>: <a href="#titlepage">titlepage</a></li>
+<li><a href="#index-Title-page_002c-for-plain-text-191">Title page, for plain text</a>: <a href="#Titlepage-_0026-Copyright-Page">Titlepage &amp; Copyright Page</a></li>
+<li><a href="#index-Titlepage-end-starts-headings-212">Titlepage end starts headings</a>: <a href="#end-titlepage">end titlepage</a></li>
+<li><a href="#index-Top-node-225">Top node</a>: <a href="#The-Top-Node">The Top Node</a></li>
+<li><a href="#index-Top-node-example-228">Top node example</a>: <a href="#Top-Node-Example">Top Node Example</a></li>
+<li><a href="#index-Top-node-is-first-322">Top node is first</a>: <a href="#First-Node">First Node</a></li>
+<li><a href="#index-_0040samp_007b_0040r_007bTop_007d_007d-node-naming-for-references-370"><span class="samp">Top</span> node naming for references</a>: <a href="#Top-Node-Naming">Top Node Naming</a></li>
+<li><a href="#index-_0040code_007btp_007d-_0028data-type_0029-index-598"><code>tp</code> (data type) index</a>: <a href="#Predefined-Indices">Predefined Indices</a></li>
+<li><a href="#index-Tree-structuring-272">Tree structuring</a>: <a href="#Tree-Structuring">Tree Structuring</a></li>
+<li><a href="#index-Two-_0060First_0027-Lines-for-_0040code_007b_0040_0040deffn_007d-831">Two `First' Lines for <code>@deffn</code></a>: <a href="#deffnx">deffnx</a></li>
+<li><a href="#index-Two-letter-names-for-indices-612">Two letter names for indices</a>: <a href="#syncodeindex">syncodeindex</a></li>
+<li><a href="#index-Two-named-items-for-_0040code_007b_0040_0040table_007d-522">Two named items for <code>@table</code></a>: <a href="#itemx">itemx</a></li>
+<li><a href="#index-Two-part-menu-entry-348">Two part menu entry</a>: <a href="#Less-Cluttered-Menu-Entry">Less Cluttered Menu Entry</a></li>
+<li><a href="#index-_0040file_007btxi_002d_0040var_007bcc_007d_002etex_007d-915"><span class="file">txi-</span><var>cc</var><span class="file">.tex</span></a>: <a href="#documentlanguage">documentlanguage</a></li>
+<li><a href="#index-Typesetting-commands-for-dots_002c-etc_002e-736">Typesetting commands for dots, etc.</a>: <a href="#Dots-Bullets">Dots Bullets</a></li>
+<li><a href="#index-Typewriter-font-456">Typewriter font</a>: <a href="#Fonts">Fonts</a></li>
+<li><a href="#index-Ugly-black-rectangles-in-hardcopy-1034">Ugly black rectangles in hardcopy</a>: <a href="#Overfull-hboxes">Overfull hboxes</a></li>
+<li><a href="#index-Umlaut-accent-658">Umlaut accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Unbreakable-space_002c-fixed-793">Unbreakable space, fixed</a>: <a href="#w">w</a></li>
+<li><a href="#index-Unbreakable-space_002c-variable-801">Unbreakable space, variable</a>: <a href="#tie">tie</a></li>
+<li><a href="#index-Uncluttered-menu-entry-352">Uncluttered menu entry</a>: <a href="#Less-Cluttered-Menu-Entry">Less Cluttered Menu Entry</a></li>
+<li><a href="#index-Undefining-macros-951">Undefining macros</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Underbar-accent-682">Underbar accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Underdot-accent-684">Underdot accent</a>: <a href="#Inserting-Accents">Inserting Accents</a></li>
+<li><a href="#index-Unicode-quotation-characters-58">Unicode quotation characters</a>: <a href="#Conventions">Conventions</a></li>
+<li><a href="#index-Uniform-resource-locator_002c-indicating-436">Uniform resource locator, indicating</a>: <a href="#indicateurl">indicateurl</a></li>
+<li><a href="#index-Uniform-resource-locator_002c-referring-to-384">Uniform resource locator, referring to</a>: <a href="#uref">uref</a></li>
+<li><a href="#index-Unique-nodename-requirement-308">Unique nodename requirement</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-Unnumbered-float_002c-creating-545">Unnumbered float, creating</a>: <a href="#float">float</a></li>
+<li><a href="#index-Unprocessed-text-70">Unprocessed text</a>: <a href="#Comments">Comments</a></li>
+<li><a href="#index-Unsplit-file-creation-1310">Unsplit file creation</a>: <a href="#Unsplit">Unsplit</a></li>
+<li><a href="#index-Up-node-of-Top-node-324">Up node of Top node</a>: <a href="#First-Node">First Node</a></li>
+<li><a href="#index-UPDATED-_0040r_007bAutomake-variable_007d-1251"><code>UPDATED </code><span class="roman">Automake variable</span></a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Updating-nodes-and-menus-128">Updating nodes and menus</a>: <a href="#Updating-Nodes-and-Menus">Updating Nodes and Menus</a></li>
+<li><a href="#index-Updating-requirements-137">Updating requirements</a>: <a href="#Updating-Requirements">Updating Requirements</a></li>
+<li><a href="#index-URI-syntax-for-Info-39">URI syntax for Info</a>: <a href="#Info-Files">Info Files</a></li>
+<li><a href="#index-URL_002c-indicating-437">URL, indicating</a>: <a href="#indicateurl">indicateurl</a></li>
+<li><a href="#index-URL_002c-referring-to-385">URL, referring to</a>: <a href="#uref">uref</a></li>
+<li><a href="#index-Usage-tips-1238">Usage tips</a>: <a href="#Tips">Tips</a></li>
+<li><a href="#index-User-input-404">User input</a>: <a href="#kbd">kbd</a></li>
+<li><a href="#index-User-options_002c-marking-844">User options, marking</a>: <a href="#Variables-Commands">Variables Commands</a></li>
+<li><a href="#index-User_002ddefined-Texinfo-commands-934">User-defined Texinfo commands</a>: <a href="#Defining-New-Texinfo-Commands">Defining New Texinfo Commands</a></li>
+<li><a href="#index-Using-Texinfo-in-general-10">Using Texinfo in general</a>: <a href="#Using-Texinfo">Using Texinfo</a></li>
+<li><a href="#index-Validating-a-large-file-1308">Validating a large file</a>: <a href="#Using-Info_002dvalidate">Using Info-validate</a></li>
+<li><a href="#index-Validation-of-pointers-1137">Validation of pointers</a>: <a href="#Pointer-Validation">Pointer Validation</a></li>
+<li><a href="#index-Value-of-an-expression_002c-indicating-761">Value of an expression, indicating</a>: <a href="#result">result</a></li>
+<li><a href="#index-Variables_002c-object_002doriented-851">Variables, object-oriented</a>: <a href="#Object_002dOriented-Variables">Object-Oriented Variables</a></li>
+<li><a href="#index-Verbatim-copying-license-1256">Verbatim copying license</a>: <a href="#Verbatim-Copying-License">Verbatim Copying License</a></li>
+<li><a href="#index-Verbatim-environment-468">Verbatim environment</a>: <a href="#verbatim">verbatim</a></li>
+<li><a href="#index-Verbatim-in_002dline-text-418">Verbatim in-line text</a>: <a href="#verb">verb</a></li>
+<li><a href="#index-Verbatim_002c-include-file-469">Verbatim, include file</a>: <a href="#verbatiminclude">verbatiminclude</a></li>
+<li><a href="#index-VERSION-_0040r_007bAutomake-variable_007d-1252"><code>VERSION </code><span class="roman">Automake variable</span></a>: <a href="#GNU-Sample-Texts">GNU Sample Texts</a></li>
+<li><a href="#index-Version-control-keywords_002c-preventing-expansion-of-796">Version control keywords, preventing expansion of</a>: <a href="#w">w</a></li>
+<li><a href="#index-Version-number_002c-for-install_002dinfo-1204">Version number, for install-info</a>: <a href="#Invoking-install_002dinfo">Invoking install-info</a></li>
+<li><a href="#index-Vertically-holding-text-together-810">Vertically holding text together</a>: <a href="#group">group</a></li>
+<li><a href="#index-Visibility-of-conditional-text-874">Visibility of conditional text</a>: <a href="#Conditionals">Conditionals</a></li>
+<li><a href="#index-_0040code_007bvr_007d-_0028variable_0029-index-599"><code>vr</code> (variable) index</a>: <a href="#Predefined-Indices">Predefined Indices</a></li>
+<li><a href="#index-W3-consortium-19">W3 consortium</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-Weinberg_002c-Zack-87">Weinberg, Zack</a>: <a href="#History">History</a></li>
+<li><a href="#index-Weisshaus_002c-Melissa-84">Weisshaus, Melissa</a>: <a href="#History">History</a></li>
+<li><a href="#index-White-space-in-node-name-320">White space in node name</a>: <a href="#Node-Line-Requirements">Node Line Requirements</a></li>
+<li><a href="#index-White-space_002c-excessive-778">White space, excessive</a>: <a href="#Breaks">Breaks</a></li>
+<li><a href="#index-Whitespace-in-macros-946">Whitespace in macros</a>: <a href="#Defining-Macros">Defining Macros</a></li>
+<li><a href="#index-Whitespace_002c-collapsed-around-continuations-823">Whitespace, collapsed around continuations</a>: <a href="#Def-Cmd-Continuation-Lines">Def Cmd Continuation Lines</a></li>
+<li><a href="#index-Whitespace_002c-inserting-645">Whitespace, inserting</a>: <a href="#Multiple-Spaces">Multiple Spaces</a></li>
+<li><a href="#index-Width-of-images-570">Width of images</a>: <a href="#Image-Scaling">Image Scaling</a></li>
+<li><a href="#index-Width-of-text-area-1052">Width of text area</a>: <a href="#pagesizes">pagesizes</a></li>
+<li><a href="#index-Widths_002c-defining-multitable-column-528">Widths, defining multitable column</a>: <a href="#Multitable-Column-Widths">Multitable Column Widths</a></li>
+<li><a href="#index-Wildcards-983">Wildcards</a>: <a href="#Format-with-tex_002ftexindex">Format with tex/texindex</a></li>
+<li><a href="#index-Words-and-phrases_002c-marking-them-391">Words and phrases, marking them</a>: <a href="#Marking-Text">Marking Text</a></li>
+<li><a href="#index-Writing-a-menu-342">Writing a menu</a>: <a href="#Writing-a-Menu">Writing a Menu</a></li>
+<li><a href="#index-Writing-an-_0040code_007b_0040_0040node_007d-line-303">Writing an <code>@node</code> line</a>: <a href="#Writing-a-Node">Writing a Node</a></li>
+<li><a href="#index-Writing-index-entries-605">Writing index entries</a>: <a href="#Indexing-Commands">Indexing Commands</a></li>
+<li><a href="#index-xdvi-25"><code>xdvi</code></a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-XML-output-29">XML output</a>: <a href="#Output-Formats">Output Formats</a></li>
+<li><a href="#index-XML_002c-including-raw-894">XML, including raw</a>: <a href="#Raw-Formatter-Commands">Raw Formatter Commands</a></li>
+<li><a href="#index-XPM-image-format-562"><code>XPM image format</code></a>: <a href="#Image-Syntax">Image Syntax</a></li>
+<li><a href="#index-Years_002c-in-copyright-line-183">Years, in copyright line</a>: <a href="#copying">copying</a></li>
+<li><a href="#index-Zaretskii_002c-Eli-85">Zaretskii, Eli</a>: <a href="#History">History</a></li>
+<li><a href="#index-Zuhn_002c-David-D_002e-83">Zuhn, David D.</a>: <a href="#History">History</a></li>
+</ul><div class="footnote">
+<hr>
+<a name="texinfo-footnotes-in-document"></a><h4>Footnotes</h4><p class="footnote"><small>[<a name="fn-1" href="#fnd-1">1</a>]</small> The first syllable of &ldquo;Texinfo&rdquo; is pronounced
+like &ldquo;speck&rdquo;, not &ldquo;hex&rdquo;. This odd pronunciation is derived from,
+but is not the same as, the pronunciation of TeX. In the word
+TeX, the <span class="samp">X</span> is actually the Greek letter &ldquo;chi&rdquo; rather than
+the English letter &ldquo;ex&rdquo;. Pronounce TeX as if the <span class="samp">X</span> were the
+last sound in the name `Bach'; but pronounce Texinfo as if the <span class="samp">x</span>
+were a `k'. Spell &ldquo;Texinfo&rdquo; with a capital &ldquo;T&rdquo; and the other
+letters in lower case.</p>
+
+ <p class="footnote"><small>[<a name="fn-2" href="#fnd-2">2</a>]</small> In some documents, the first child has no `Previous'
+pointer. Occasionally, the last child has the node name of the next
+following higher level node as its `Next' pointer.</p>
+
+ <p class="footnote"><small>[<a name="fn-3" href="#fnd-3">3</a>]</small> You can also use the
+<a name="index-texi2roff_0040r_007b_002c-unsupported-software_007d-1316"></a><a href="ftp://tug.org/texi2roff.tar.gz"><code>texi2roff</code></a> program if you
+do not have TeX; since Texinfo is designed for use with TeX,
+<code>texi2roff</code> is not described here. <code>texi2roff</code> is not part of
+the standard GNU distribution and is not maintained or up-to-date with
+all the Texinfo features described in this manual.</p>
+
+ <p class="footnote"><small>[<a name="fn-4" href="#fnd-4">4</a>]</small> The word
+<dfn>argument</dfn> comes from the way it is used in mathematics and does not
+refer to a dispute between two people; it refers to the information
+presented to the command. According to the <cite>Oxford English
+Dictionary</cite>, the word derives from the Latin for <dfn>to make clear,
+prove</dfn>; thus it came to mean `the evidence offered as proof', which is
+to say, `the information offered', which led to its mathematical
+meaning. In its other thread of derivation, the word came to mean `to
+assert in a manner against which others may make counter assertions',
+which led to the meaning of `argument' as a dispute.</p>
+
+ <p class="footnote"><small>[<a name="fn-5" href="#fnd-5">5</a>]</small> We have found
+that it is helpful to refer to versions of independent manuals as
+`editions' and versions of programs as `versions'; otherwise, we find we
+are liable to confuse each other in conversation by referring to both
+the documentation and the software with the same words.</p>
+
+ <p class="footnote"><small>[<a name="fn-6" href="#fnd-6">6</a>]</small> It would be straightforward to extend Texinfo to work
+in a similar fashion for C, Fortran, or other languages.</p>
+
+ <p class="footnote"><small>[<a name="fn-7" href="#fnd-7">7</a>]</small> A footnote should complement or expand upon
+the primary text, but a reader should not need to read a footnote to
+understand the primary text. For a thorough discussion of footnotes,
+see <cite>The Chicago Manual of Style</cite>, which is published by the
+University of Chicago Press.</p>
+
+ <p class="footnote"><small>[<a name="fn-8" href="#fnd-8">8</a>]</small> Here
+is the sample footnote.</p>
+
+ <p class="footnote"><small>[<a name="fn-9" href="#fnd-9">9</a>]</small> Note the use
+of the <span class="samp">;</span> character, instead of <span class="samp">:</span>, as directory separator
+on these systems.</p>
+
+ <p class="footnote"><small>[<a name="fn-10" href="#fnd-10">10</a>]</small> On MS-DOS/MS-Windows systems, Info will
+try the <span class="file">.inf</span> extension as well.</p>
+
+ <p class="footnote"><small>[<a name="fn-11" href="#fnd-11">11</a>]</small> Note the
+use of <span class="samp">;</span> as the directory separator, and a different syntax for
+using values of other environment variables.</p>
+
+ <p class="footnote"><small>[<a name="fn-12" href="#fnd-12">12</a>]</small> On MS-DOS/MS-Windows systems, use semi-colon instead.</p>
+
+ <p><hr></div>
+
+</body></html>
+
diff --git a/Master/texmf/doc/texinfo/texinfo.pdf b/Master/texmf/doc/texinfo/texinfo.pdf
new file mode 100644
index 00000000000..74d214b6799
--- /dev/null
+++ b/Master/texmf/doc/texinfo/texinfo.pdf
Binary files differ