4.4BSD/usr/src/contrib/emacs-18.57/info/texinfo-4

Info file ../info/texinfo, produced by Makeinfo, -*- Text -*- from
input file texinfo.texinfo.

This file documents Texinfo, a documentation system that uses a
single source file to produce both on-line help and a printed manual.

This is edition 1.1 of the Texinfo documentation, and is for the
Texinfo that is distributed as part of Version 18 of GNU Emacs.

Copyright (C) 1988 Free Software Foundation, Inc.

Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.

Permission is granted to copy and distribute modified versions of
this manual under the conditions for verbatim copying, provided that
the entire resulting derived work is distributed under the terms of a
permission notice identical to this one.

Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be stated in a
translation approved by the Foundation.



File: texinfo,  Node: Using texinfo-show-structure,  Next: Running Info-Validate,  Prev: Debugging with Tex,  Up: Catching Mistakes

Using `texinfo-show-structure'
==============================

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.

In GNU Emacs, in Texinfo mode, there is a command that will list all
the lines that begin with the @-commands that specify the structure:
@node, @chapter, @section, @appendix and so on.  This is the
`texinfo-show-structure' command.  It is bound to the keyboard
command `C-c C-s'.  `texinfo-show-structure' displays the lines that
begin with the node and chapter structuring @-commands in another
window called the `*Occur*' buffer.  For example, when
`texinfo-show-structure' is run on the first part of this chapter, it
produces the following:

     Lines matching
     "^@\\(chapter\\|unnum\\|appendix\\|sect\\|sub\\|heading\\|major
     \\|node\\)" in buffer new-texinfo-manual.texinfo.
       2:@node     catching mistakes, @-Command Syntax, running info, top
       4:@chapter Catching Mistakes
      41:@node debugging with info, debugging with tex, , catching mistakes
      43:@section Catching errors with Info Formatting

This means that lines 2, 4, 41 and 43 began with `@node', `@chapter',
`@node', and `@section' respectively.  If you move your cursor into
the `*Occur*' window, you can position the cursor over one of the
lines and use the `C-c C-c' command (`occur-mode-goto-occurrence'),
to jump to the corresponding spot in the Texinfo file.  *Note :
(emacs)Other Repeating Search,  for more information about
`occur-mode-goto-occurrence'.

The first line in the `*Occur*' window describes the "regular
expression" specified by TEXINFO-HEADING-PATTERN.  This regular
expression is the pattern that `texinfo-show-structure' looks for. 
*Note : (emacs)Regexps, for more information.

When you give the `texinfo-show-structure' command, it will show 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 `C-x
n' (`narrow-to-region') command to mark the region.  (*Note :
(emacs)Narrowing.)  This is how the example used above was generated.
(To see the whole buffer again, use `C-x w' (`widen').)

You can remind yourself of the structure of a Texinfo file by looking
at the list in the `*Occur*' window; and if you have mis-named a node
or left out a section, you can correct the mistake.

* Menu:

* Using Occur::



File: texinfo,  Node: Using Occur,  Prev: Using texinfo-show-structure,  Up: Using texinfo-show-structure

Using `occur'
-------------

Sometimes the `texinfo-show-structure' 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 `texinfo-show-structure'.  In this case, you can use the
`occur' command itself.  To do this, type

     `M-x occur'

and then, when prompted, type a "regexp", a regular expression for
the pattern you want to match.   (*Note : (emacs)Regexps.) `occur'
works from the current location of the cursor in the buffer to the
end of the buffer.  If you want to run `occur' on the whole buffer,
place the cursor at the beginning of the buffer.  For example, to see
all the lines that contain the word `@chapter' in them, just type
`@chapter'.  This will produce a list of the chapters.  It will also
list all the sentences with `@chapter' in the middle of the line.  If
you want to see only those lines that start with the word `@chapter',
type `^@chapter' when prompted by `occur'.  If you want to see all
the lines that end with a word or phrase, end the last word with a
`$'; for example, `catching mistakes$'.  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.

*Note : (emacs)Other Repeating Search, for more information.



File: texinfo,  Node: Running Info-Validate,  Prev: Using texinfo-show-structure,  Up: Catching Mistakes

Finding Badly Referenced Nodes
==============================

You can check whether any of the `Next', `Previous', `Up' or other
node pointers fail to point to a node with the `Info-validate' command.
This command checks that every node pointer points to an existing node.

To use this command, you first need to load the `info' library and
then do `M-x Info-validate'.

     `M-x load-library RET info RET' 
     `M-x Info-validate'

(Note that all the `Info' commands require an uppercase `I'.)

If your file is ok, you will receive a message that says "File
appears valid".  However, if you have a pointer that does not point
to a node, error messages will be displayed in a buffer called
`*problems in info file*'.

For example, `Info-validate' was run on a test file that contained
only the first node of this manual.  One of the messages said:

     In node "Overview", invalid Next: Texinfo Mode

This meant that the node called `Overview' 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).

Now suppose we add a node named `Texinfo Mode' to our test case but
we don't specify a `Previous' for this node.  Then we will get the
following error message:

     In node "Texinfo Mode", should have Previous: Overview

This is because every `Next' pointer should be matched by a
`Previous' (in the node where the `Next' points) which points back.

`Info-validate' also checks that all menu items and cross-references
point to actual nodes.

Significantly, `Info-validate' does not work with large files that
have been split.  (Info thinks of a large file as being over 100,000
bytes, approximately.)  In order to use `Info-validate' on a large
file, you must run `texinfo-format-buffer' with an argument so that
it does not split the Info file, and then create a tag table.

* Menu:

* Info-Validating a Large File:: Running `Info-validate' on a large file.
* Splitting::                    Splitting a file manually.

 

File: texinfo,  Node: Info-Validating a Large File,  Next: Splitting,  Prev: Running Info-Validate,  Up: Running Info-Validate

Running `Info-validate' on a Large File.
----------------------------------------

You can run `Info-validate' only on a single Info file.  The command
will not work on indirect subfiles that are generated when the master
file is split.  If you have a large file (longer than 100,000 bytes),
you need to run the `texinfo-format-buffer' command in such a way
that it does not create indirect subfiles.  You will also need to
create a tag table.  When you have done this, you can run
`Info-validate' and look for badly referenced nodes.

After you have validated the node structure, you can rerun
`texinfo-format-buffer' in the normal way so it will construct the
tag table and split the file automatically or, you can make the tag
table and split the file manually.

To prevent the `texinfo-format-buffer' command from splitting a
Texinfo file into smaller Info files, give a prefix to the `M-x
texinfo-format-buffer' command:

     C-u  M-x texinfo-format-buffer

When you do this, Texinfo will not split the file and will not create
a tag table for it.

Before you can run `M-x Info-validate' on the Info file, you need to
create a tag table for it.  In order to do this, you first need to
load the `info' library into Emacs with the following command:

     M-x load-library RET info RET

Then you can give the command:

     M-x Info-tagify

This creates a file which you can validate.

     M-x Info-validate

After you have checked the validity of the nodes, you can either run
`M-x texinfo-format-buffer' as you would normally, or else tagify and
split the file manually with the two commands `Info-tagify' and
`Info-split'.



File: texinfo,  Node: Splitting,  Prev: Info-Validating a Large File,  Up: Running Info-Validate

Splitting a File Manually
-------------------------

If the file has more than 100,000 or so bytes in it, you should split
it or else let the `texinfo-format-buffer' command do it for you
automatically.  (Generally you will let `texinfo-format-buffer' do
this job for you.  *Note Creating an Info File::.)

The split off files are called the indirect subfiles.

Info files are split to save memory.  With smaller files, Emacs does
not have make such a large buffer to hold the information.  This way,
Emacs can save memory.

If the Info file has more than 30 nodes, you should also make a tag
table for it. *Note Info-Validating a Large File::, for information
about creating a tag table.

Before running `Info-split', you need to load the `info' library into
Emacs by giving the command `M-x load-library RET info RET'.  After
you have done this, you can give the two commands:

     M-x Info-tagify
     M-x Info-split

(Note that the `I' in `Info' is uppercase.)

When you use the `Info-split' 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 `-' and a number to the original
file name.

The primary file still functions as an Info file, but it contains
just the tag table and a directory of subfiles.



File: texinfo,  Node: Command Syntax,  Next: Include Files,  Prev: Catching Mistakes,  Up: Top

@-Command Syntax
****************

The character `@' is used to start special Texinfo commands.  (It has
the same meaning that `\' has in plain TeX.)  Syntactically, there
are three classes of @-commands:

1. Non-alphabetic commands: @ followed by a punctuation character.
      These commands are always part of the text within a paragraph,
     and never take any argument.  The two characters (@ and the
     other one) are complete in themselves.  For example, `@.', `@:',
     `@{' and `@}'.

2. Alphabetic commands used within a paragraph.
      These commands have @ followed by a letter or a word, followed
     by an argument within braces.  For example, the command `@dfn'
     indicates the introductory or defining use of a term; it is used
     as follows: `In Texinfo, @-commands are @dfn{mark-up} commands.'

3. Alphabetic commands used outside of paragraphs.
      Each such command occupies an entire line.  The line starts with
     @, followed by the name of the command (a word) such as
     `@center' or `@cindex'.  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.

Thus, the alphabetic commands fall into two classes that have
different argument syntax.  You cannot tell which class a command
falls in by the appearance of its name, but you can tell by the
command's meaning: if it makes sense to use the command together with
other words as part of a paragraph, the command is in class 2 and
must be followed by an argument in braces; otherwise, it is in class
3 and uses the rest of the line as its argument.

The purpose of having different syntax for commands of classes 2 and
3 is to make the Texinfo file 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 `@refill', which is
always used at the end of a paragraph immediately following the final
period or other punctuation character.  `@refill' takes no argument. 
`@refill' never confuses the Emacs paragraph commands because it
cannot start at the beginning of a line.



File: texinfo,  Node: Include Files,  Next: TeX Input,  Prev: Command Syntax,  Up: Top

Include Files
*************

When Info was first created, it was customary to create many small
Info files on one subject.  By doing this, Emacs did not have to make
a large buffer to hold the whole of a large Info file; instead, Emacs
allocated just enough memory for the small Info file that was needed
at the time.  This way, Emacs could avoid wasting memory.  Include
files were designed as a way to create a single, large printed manual
out of several smaller Info files.

However, because large Info files can now be split, include files are
no longer strictly necessary and they are used infrequently.  Most
often, they are now used in projects where several different people
are writing different sections of a document simultaneously.

How Include Files Work
======================

In a Texinfo file, a line of the form `@include `filename'' is
ignored when the Info file is generated, but in a printed manual it
causes the contents of the file `filename' to be processed and
included in the manual.  The contents of the file `filename' can be
ignored by Info because the first file can refer to `filename' with
menus as well as cross references.  In the Info system, all the
information is, as it were, `in one place'.  However, when two
printed manuals are made from two separate Texinfo files, the two
manuals are separate, and even if they give each other as references,
the references are to separate documents.  Consequently, you will
sometimes want to create a comprehensive, printed manual that
contains all the necessary information together in one place.

`@include' files are special Texinfo files that are used only for
making such a comprehensive manual.  They are listed inside an outer
file that contains nothing but the beginning and end matter of a
Texinfo file and a number of `@include' commands listing the included
files.

An `@include' file--a file that will be listed inside an outer file
and processed with the `@include' command--should not start with
`\input texinfo', as that has already been done by the outer file,
and the character `\' has already been redefined to generate a
backslash in the output.  Instead, an `@include' file usually begins
with a node; it lacks the beginning and ending of a Texinfo file that
are described in the chapters on beginning and ending a file.  *Note
Beginning a File::, and *note Ending a File::.

Likewise, an `@include' file should not end with `@bye', since that
would terminate TeX processing immediately.

Here is an example of a outer Texinfo file with `@include' files
within it:

     \input texinfo @c -*-texinfo-*-
     @setfilename  include 
     @settitle Include Manual
     
     @setchapternewpage odd
     @titlepage
     @sp 12
     @center @titlefont{Include Manual}
     @sp 2
     @center by Whom Ever
     
     @page
     Copyright @copyright{} 1988 Free Software Foundation, Inc.
     @end titlepage
     
     @include foo.texinfo
     @include bar.texinfo
     
     @unnumbered Concept Index
     @printindex cp
     
     @summarycontents
     @contents
     
     @bye



File: texinfo,  Node: TeX Input,  Next: Sample Permissions,  Prev: Include Files,  Up: Top

TeX Input Initialization
************************

You must put an input command on the first line of every Texinfo file
to tell TeX to use the `texinfo.tex' file when it is processing the
Texinfo source file.  Otherwise TeX will not know what to do with the
@-commands.  (The TeX input command is written as `\input texinfo'. 
*Note First Line::.)

TeX needs to be told where to find the `texinfo.tex' file that you
have told it to input.  The preferred way to do this is to put
`texinfo.tex' in the default inputs directory, which is the
`/usr/lib/tex/macros' directory.  If this is done (as it usually is
when GNU Emacs is installed), TeX will find the file and you don't
have to do anything.  Alternatively, you can put `texinfo.tex' in the
directory in which the Texinfo source file is located.

However, you may want to specify the location of the `\input' file
yourself.  One way to do this is to write the complete path for the
file after the `\input' command.  Another way is to set the
`TEXINPUTS' environment variable in your `.cshrc' or `.profile' file.
The `TEXINPUTS' environment variable will tell TeX where to find the
`texinfo.tex' file and any other file that you might want TeX to use.

Whether you use a `.cshrc' or `.profile' file depends on whether you
use `csh' or `sh' for your shell command interpreter.  When you use
`csh', it looks to the `.cshrc' file for initialization information,
and when you use `sh', it looks to the `.profile' file.

In a `.cshrc' file, you could use the following `csh' command sequence:

     setenv TEXINPUTS .:/usr/me/mylib:/usr/lib/tex/macros

In a `.profile' file, you could use the following `sh' command
sequence:

     TEXINPUTS=.:/usr/me/mylib:/usr/lib/tex/macros
     export TEXINPUTS

This would cause TeX to look for `\input' file first in the current
directory, indicated by the `.', then in a hypothetical user's
`me/mylib' directory, and finally in the system library.



File: texinfo,  Node: Sample Permissions,  Next: Command Index,  Prev: TeX Input,  Up: Top

Standard text for Copying Permissions
*************************************

Texinfo files should contain sections that tell the readers that they
have the right to copy and distribute the Info file, the printed
manual and any accompanying software.  This appendix contains the
standard text of the Free Software Foundation copying permission
notice.  For an example of the text that could be used for the
Distribution, General Public License and NO WARRANTY sections of a
document, see the latest version of the ``GNU Emacs Manual''.

The texts of the Free Software Foundation copying permission notice
in the `@ifinfo' section and in the `@titlepage' section are slightly
different.

The `@ifinfo' section usually begins with a line that says what the
file documents.  This is what a person looking at the file will first
read if he or she reads the unprocessed Texinfo file or if he or she
uses the advanced Info command `g *'.  *note info: (info)Expert, for
more information. (If the reader uses the regular Info commands, he
or she will usually start reading at the first node and skip this
first section, which is not in a node.)

In the `@ifinfo' section, the summary sentence should be followed by
a copyright notice and then by the copying permission notice.  One of
the copying permission paragraphs is enclosed in `@ignore' and `@end
ignore' commands.  This paragraph states that the Texinfo file can be
processed through TeX and printed, provided the printed manual
carries the proper copying permission notice.  This paragraph is not
made part of the Info file since it is not relevant to the Info file;
but it is a mandatory part of the Texinfo file since it permits
people to process the Texinfo file in TeX.

In the printed manual, the Free Software Foundation copying
permission notice follows the copyright notice and publishing
information and is located within the region delineated by the
`@titlepage' and `@end titlepage' commands.  The copying permission
notice is exactly the same as the notice in the `@ifinfo' section
except that the paragraph enclosed in `@ignore' and `@end ignore'
commands is not part of the notice.

To make it simpler to copy the permission notice into each section of
the Texinfo file, the complete permission notices for each section
are reproduced in full below even though most of the information is
redundant.

Note that you my have to specify the correct name of a section
mentioned in the permission notice.  For example, in the ``GDB
Manual'', the name of the section referring to the General Public
License is called the "GDB General Public License", but in the sample
shown below, that section is referred to generically as the "General
Public License".

* Menu:

* Ifinfo Permissions::
* Titlepage Permissions::



File: texinfo,  Node: Ifinfo Permissions,  Next: Titlepage Permissions,  Prev: Sample Permissions,  Up: Sample Permissions

Ifinfo Copying Permissions
==========================

In the `@ifinfo' section of the Texinfo file, the standard Free
Software Foundation permission notices reads as follows:

     This file documents ...
     
     Copyright 1988 Free Software Foundation, Inc.
     
     Permission is granted to make and distribute verbatim copies of
     this manual provided the copyright notice and this permission notice
     are preserved on all copies.
     
     @ignore
     Permission is granted to process this file through TeX and print the
     results, provided the printed document carries a copying permission
     notice identical to this one except for the removal of this paragraph
     (this paragraph not being relevant to the printed manual).
     
     @end ignore
     Permission is granted to copy and distribute modified versions of this
     manual under the conditions for verbatim copying, provided also that the
     sections entitled ``Distribution'' and ``General Public License'' are
     included exactly as in the original, and provided that the entire
     resulting derived work is distributed under the terms of a permission
     notice identical to this one.
     
     Permission is granted to copy and distribute translations of this manual
     into another language, under the above conditions for modified versions,
     except that the sections entitled ``Distribution'' and ``General Public
     License'' may be included in a translation approved by the author instead
     of in the original English.

 

File: texinfo,  Node: Titlepage Permissions,  Prev: Ifinfo Permissions,  Up: Sample Permissions

Titlepage Copying Permissions
=============================

In the `@titlepage' section of the Texinfo file, the standard Free
Software Foundation copying permission notices follows the copyright
notice and publishing information.  The standard phrasing is:

     Permission is granted to make and distribute verbatim copies of
     this manual provided the copyright notice and this permission notice
     are preserved on all copies.
     
     Permission is granted to copy and distribute modified versions of this
     manual under the conditions for verbatim copying, provided also that the
     sections entitled ``Distribution'' and ``General Public License'' are
     included exactly as in the original, and provided that the entire
     resulting derived work is distributed under the terms of a permission
     notice identical to this one.
     
     Permission is granted to copy and distribute translations of this manual
     into another language, under the above conditions for modified versions,
     except that the sections entitled ``Distribution'' and ``General Public
     License'' may be included in a translation approved by the author instead
     of in the original English.

 

File: texinfo,  Node: Command Index,  Next: Concept Index,  Prev: Sample Permissions,  Up: Top

Command Index
*************

(When used in a Texinfo file, @-commands are preceded by an `@'.)

* Menu:

* *: Line Breaks.
* TeX: Tex.
* appendix: Unnumbered and Appendix.
* appendixsec: Section.
* appendixsubsec: Subsection.
* appendixsubsubsec: Subsubsection.
* asterisk: Line Breaks.
* at-sign colons: Insert Colon.
* at-sign periods: Insert Period.
* at-signs: Inserting An Atsign.
* b (bold font): Fonts.
* br (paragraph breaks): Br.
* bullet: Bullet.
* bye: Ending a File.
* center: Center.
* chapter: Chapter.
* cite: Cite.
* code: Code.
* copyright: Copyright & Printed Permissions.
* ctrl: Ctrl.
* dfn: Dfn.
* display: Display.
* dots: Dots.
* emph: Emph and Strong.
* end: Lists and Tables.
* end: Quotations and Examples.
* enumerate: Enumerate.
* example: Example.
* file: File.
* filll: Copyright & Printed Permissions.
* group: Group.
* i (italic font): Fonts.
* ifinfo: Conditionals.
* iftex: Conditionals.
* inforef: Inforef.
* item: Itemize.
* item: Table.
* itemize: Itemize.
* itemx: Itemx.
* kbd: Kbd.
* key: Key.
* left-braces: Insert Left Brace.
* menu: Menu.
* need: Need.
* node: Structuring.
* noindent: Noindent.
* page: Page.
* pxref: Pxref.
* quotation: Quotation.
* refill: Refill.
* right-braces: Insert Left Brace.
* samp: Samp.
* section: Section.
* setchapternewpage: Setchapternewpage.
* setfilename: Setfilename.
* settitle: Settitle.
* sp (line spacing): Sp.
* start-of-header: Start-of-Header.
* strong: Emph and Strong.
* subsection: Subsection.
* subsubsection: Subsubsection.
* t (typewriter font): Fonts.
* table: Table.
* texindex (for sorting indices): Printing Hardcopy.
* texinfo-format-buffer: Creating an Info File.
* texinfo-format-region: Info on a Region.
* texinfo-show-structure: Using texinfo-show-structure.
* titlefont: Titlepage.
* titlepage: Titlepage.
* unnumbered: Unnumbered and Appendix.
* unnumberedsec: Section.
* unnumberedsubsec: Subsection.
* unnumberedsubsubsec: Subsubsection.
* var: Var.
* vskip: Copyright & Printed Permissions.
* w (preventing a line break): W.
* xref: Xref.


 

File: texinfo,  Node: Concept Index,  Prev: Command Index,  Up: Top

Concept Index
*************

* Menu:

* @-Command Syntax: Command Syntax.
* Badly referenced nodes: Running Info-Validate.
* Beginning a Texinfo file: Beginning a File.
* Beginning line of a Texinfo file: First Line.
* Braces, inserting: Braces Atsigns Periods.
* Breaks in a line: Line Breaks.
* Breaks in a paragraph: Br.
* Bullets, inserting: Dots Bullets Tex.
* Catching errors with Info Formatting: Debugging with Info.
* Catching errors with TeX Formatting: Debugging with Tex.
* Catching mistakes: Catching Mistakes.
* Centering a line: Center.
* Chapter structuring: Structuring.
* Characteristics of the Info file: Info File.
* Characteristics, printed manual: Printed Manual.
* Checking for badly referenced nodes: Running Info-Validate.
* Combining Indices: Combining Indices.
* Commands to insert single characters: Braces Atsigns Periods.
* Commands, inserting them: Inserting.
* Commands, specifying them within text: Specifying.
* Compile command for formatting: Compile-Command.
* Conditionals: Conditionals.
* Contents, Table of: Contents.
* Conventions, syntactic: Conventions.
* Copying permissions: Sample Permissions.
* Copyright: Copyright & Printed Permissions.
* Copyright page: Titlepage & Copyright Page.
* Correcting mistakes: Catching Mistakes.
* Creating an on-line Info file: Creating an Info File.
* Creating indices: Indices.
* Cross references: Cross References.
* Cross references using inforef: Inforef.
* Cross references using pxref: Pxref.
* Cross references using xref: Xref.
* Debugger, using the Emacs Lisp: Using the Emacs Lisp Debugger.
* Debugging the Texinfo structure: Catching Mistakes.
* Debugging with Info Formatting: Debugging with Info.
* Debugging with TeX Formatting: Debugging with Tex.
* Defining the entries of an index: Index Entries.
* Definitions, specifying them within text: Specifying.
* Dir directory for Info installation: Installing an Info File.
* Display: Display.
* Distribution: License and Distribution.
* Dots, inserting: Dots Bullets Tex.
* Dots, inserting: Dots.
* Emacs: Texinfo Mode.
* Emacs Lisp debugger: Using the Emacs Lisp Debugger.
* Emphasizing text: Emphasis.
* Ending a Texinfo file: Ending a File.
* Entries for an index: Index Entries.
* Enumerate: Enumerate.
* Examples: Example.
* Examples: Quotations and Examples.
* File beginning: Beginning a File.
* File ending: Ending a File.
* File structure, showing it: Showing the Structure.
* Files, specifying them within text: Specifying.
* Finding badly referenced nodes: Running Info-Validate.
* First line of a Texinfo file: First Line.
* Formatting a file for Info: Creating an Info File.
* Formatting paragraphs: Formatting Paragraphs.
* Formatting requirements: Requirements.
* Formatting with the compile command: Compile-Command.
* Frequently used commands, inserting them: Inserting.
* GNU Emacs: Texinfo Mode.
* General syntactic conventions: Conventions.
* Generating menus with indices: Printing Indices & Menus.
* Group: Group.
* Hardcopy, printing it: Printing Hardcopy.
* Header for Texinfo files: Header.
* Highlighting: Specifying.
* Holding text together vertically: Group.
* Ifinfo: Conditionals.
* Ifinfo permissions: Ifinfo Permissions.
* Iftex: Conditionals.
* Include files: Include Files.
* Index entries: Index Entries.
* Indices: Indices.
* Indices, combining them: Combining Indices.
* Indices, printing: Printing Indices & Menus.
* Indices, sorting: Printing Hardcopy.
* Indices, two letter names: Combining Indices.
* Indirect subfiles: Creating an Info File.
* Info file characteristics: Info File.
* Info file installation: Installing an Info File.
* Info file requirement for @setfilename: Setfilename.
* Info file, splitting manually: Splitting.
* Info validating a large file: Info-Validating a Large File.
* Info, creating an on-line file: Creating an Info File.
* Info, formatting on a region: Info on a Region.
* Info-validate,  running the command: Running Info-Validate.
* Inforef for cross references: Inforef.
* Inserting braces, @ and periods: Braces Atsigns Periods.
* Inserting dots: Dots.
* Inserting frequently used commands: Inserting.
* Installing an Info file: Installing an Info File.
* Itemize: Itemize.
* Itemx: Itemx.
* License agreement: License and Distribution.
* Line breaks: Line Breaks.
* Line breaks, preventing: W.
* Line spacing: Sp.
* Lists and tables, making them: Lists and Tables.
* Local variables: Compile-Command.
* Looking for badly referenced nodes: Running Info-Validate.
* Making a printed manual: Printing Hardcopy.
* Making a tag table manually: Info-Validating a Large File.
* Making cross references: Cross References.
* Making lists and tables: Lists and Tables.
* Marking text within a paragraph: Marking Text.
* Master menu: Top Node.
* Menus: Menu.
* Menus generated with indices: Printing Indices & Menus.
* Mistakes, catching: Catching Mistakes.
* Mode, using Texinfo: Texinfo Mode.
* Names for indices: Combining Indices.
* Need: Need.
* Node and chapter structuring: Structuring.
* Node structuring: Structuring.
* Nodes, catching mistakes: Catching Mistakes.
* Nodes, checking for badly referenced nodes: Running Info-Validate.
* Nodes, correcting mistakes: Catching Mistakes.
* Occur, using the command: Using Occur.
* Overview of Texinfo: Overview.
* Page breaks: Page.
* Pages, starting odd: Setchapternewpage.
* Paragraph breaks: Br.
* Paragraphs, formatting: Formatting Paragraphs.
* Periods, inserting: Braces Atsigns Periods.
* Permissions: Sample Permissions.
* Permissions, printed: Copyright & Printed Permissions.
* Preface: License and Distribution.
* Preventing indentation in the printed text: Refilling & Noindent.
* Printed manual characteristics: Printed Manual.
* Printed permissions: Copyright & Printed Permissions.
* Printing an index: Printing Indices & Menus.
* Printing hardcopy: Printing Hardcopy.
* Problems, catching: Catching Mistakes.
* Pxref for cross references: Pxref.
* Quotations: Quotation.
* Quotations: Quotations and Examples.
* References: Cross References.
* Refilling paragraphs automatically: Refilling & Noindent.
* Requirements for formatting: Requirements.
* Running Info: Creating an Info File.
* Running Info on a region: Info on a Region.
* Running Info-validate: Running Info-Validate.
* Running Info-validate on a large file: Info-Validating a Large File.
* Sample texinfo file: Short Sample.
* Setfilename command: Setfilename.
* Showing the structure of a file: Using texinfo-show-structure.
* Showing the structure of a file: Showing the Structure.
* Single characters,  commands to insert: Braces Atsigns Periods.
* Sorting indices: Printing Hardcopy.
* Spaces from line to line: Sp.
* Special typesetting commands: Dots Bullets Tex.
* Specifying commands, files and the like: Specifying.
* Splitting an Info file manually: Splitting.
* Starting chapters: Setchapternewpage.
* Structure of Texinfo, catching mistakes: Catching Mistakes.
* Structure of a file, showing it: Showing the Structure.
* Structuring of nodes and chapters: Structuring.
* Syntactic conventions: Conventions.
* TEXINPUTS environment variable: TeX Input.
* Table of contents: Contents.
* Tables and lists, making them: Lists and Tables.
* Tables, making two-column: Table.
* Tag table, making manually: Info-Validating a Large File.
* TeX Input Initialization: TeX Input.
* TeX commands, using them: Using Tex Commands.
* TeX-logo, inserting: Dots Bullets Tex.
* Texinfo file beginning: Beginning a File.
* Texinfo file ending: Ending a File.
* Texinfo file header: Header.
* Texinfo file structure, showing it: Showing the Structure.
* Texinfo mode: Texinfo Mode.
* Texinfo overview: Overview.
* Titlepage: Titlepage.
* Titlepage: Titlepage & Copyright Page.
* Titlepage permissions: Titlepage Permissions.
* Top node: Top Node.
* Two letter names for indices: Combining Indices.
* Typesetting commands for dots and the like: Dots Bullets Tex.
* Using TeX commands: Using Tex Commands.
* Using occur: Using Occur.
* Using texinfo-show-structure to catch mistakes: Using texinfo-show-structure.
* Using the Emacs Lisp debugger: Using the Emacs Lisp Debugger.
* Validating a large file: Info-Validating a Large File.
* Vertically holding text together: Group.
* Xref for cross references: Xref.
* cshrc initialization file: TeX Input.
* end-of-header: End-of-Header.
* profile initialization file: TeX Input.
* start-of-header: Start-of-Header.
* texinfo-show-structure for catching mistakes: Using texinfo-show-structure.