Go forward to Copying.
Go backward to (dir).
Go up to (dir).

Texinfo
*******

  Texinfo is a documentation system that uses a single source file to
produce both on-line information and printed output.

  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.

  This is Edition 2.23 of the Texinfo documentation, 1 October 1996,
for Texinfo Version Three.

Menu

Copying
Your rights.
Overview
Texinfo in brief.
Texinfo Mode
How to use Texinfo mode.
Beginning a File
What is at the beginning of a Texinfo file?
Ending a File
What is at the end of a Texinfo file?
Structuring
How to create chapters, sections, subsections, appendices, and other parts.
Nodes
How to write nodes.
Menus
How to write menus.
Cross References
How to write cross references.
Marking Text
How to mark words and phrases as code, keyboard input, meta-syntactic variables, and the like.
Quotations and Examples
How to write quotations, examples, etc.
Lists and Tables
How to write lists and tables.
Indices
How to create indices.
Insertions
How to insert @-signs, braces, etc.
Glyphs
How to indicate results of evaluation, expansion of macros, errors, etc.
Breaks
How to force and prevent line and page breaks.
Definition Commands
How to describe functions and the like in a uniform manner.
Footnotes
How to write footnotes.
Conditionals
How to specify text for either TeX or Info.
Macros
Defining new Texinfo commands.
Format/Print Hardcopy
How to convert a Texinfo file to a file for printing and how to print that file.
Create an Info File
Convert a Texinfo file into an Info file.
Install an Info File
Make an Info file accessible to users.
Command List
All the Texinfo @-commands.
Tips
Hints on how to write a Texinfo document.
Sample Texinfo File
A sample Texinfo file to look at.
Sample Permissions
Tell readers they have the right to copy and distribute.
Include Files
How to incorporate other Texinfo files.
Headings
How to write page headings and footings.
Catching Mistakes
How to find formatting mistakes.
Refilling Paragraphs
All about paragraph refilling.
Command Syntax
A description of @-Command syntax.
Obtaining TeX
How to Obtain TeX.
New Features
Texinfo second edition features.
Command and Variable Index
A menu containing commands and variables.
Concept Index
A menu covering many topics. -- The Detailed Node Listing --

Overview of Texinfo

Using Texinfo
Create a conventional printed book or an Info file.
Info Files
What is an Info file?
Printed Books
Characteristics of a printed book or manual.
Formatting Commands
@-commands are used for formatting.
Conventions
General rules for writing a Texinfo file.
Comments
How to write comments and mark regions that the formatting commands will ignore.
Minimum
What a Texinfo file must have.
Six Parts
Usually, a Texinfo file has six parts.
Short Sample
A short sample Texinfo file.
Acknowledgements

Using Texinfo Mode

Texinfo Mode Overview
How Texinfo mode can help you.
Emacs Editing
Texinfo mode adds to GNU Emacs' general purpose editing features.
Inserting
How to insert frequently used @-commands.
Showing the Structure
How to show the structure of a file.
Updating Nodes and Menus
How to update or create new nodes and menus.
Info Formatting
How to format for Info.
Printing
How to format and print part or all of a file.
Texinfo Mode Summary
Summary of all the Texinfo mode commands.

Updating Nodes and Menus

Updating Commands
Five major updating commands.
Updating Requirements
How to structure a Texinfo file for using the updating command.
Other Updating Commands
How to indent descriptions, insert missing nodes lines, and update nodes in sequence.

Beginning a Texinfo File

Four Parts
Four parts begin a Texinfo file.
Sample Beginning
Here is a sample beginning for a Texinfo file.
Header
The very beginning of a Texinfo file.
Info Summary and Permissions
Summary and copying permissions for Info.
Titlepage & Copyright Page
Creating the title and copyright pages.
The Top Node
Creating the `Top' node and master menu.
Software Copying Permissions
Ensure that you and others continue to have the right to use and share software.

The Texinfo File Header

First Line
The first line of a Texinfo file.
Start of Header
Formatting a region requires this.
setfilename
Tell Info the name of the Info file.
settitle
Create a title for the printed work.
setchapternewpage
Start chapters on right-hand pages.
paragraphindent
An option to specify paragraph indentation.
End of Header
Formatting a region requires this.

The Title and Copyright Pages

titlepage
Create a title for the printed document.
titlefont center sp
The `@titlefont', `@center', and `@sp' commands.
title subtitle author
The `@title', `@subtitle', and `@author' commands.
Copyright & Permissions
How to write the copyright notice and include copying permissions.
end titlepage
Turn on page headings after the title and copyright pages.
headings on off
An option for turning headings on and off and double or single sided printing.

The `Top' Node and Master Menu

Title of Top Node
Sketch what the file is about.
Master Menu Parts
A master menu has three or more parts.

Ending a Texinfo File

Printing Indices & Menus
How to print an index in hardcopy and generate index menus in Info.
Contents
How to create a table of contents.
File End
How to mark the end of a file.

Chapter Structuring

Tree Structuring
A manual is like an upside down tree ...
Structuring Command Types
How to divide a manual into parts.
makeinfo top
The `@top' command, part of the `Top' node.
chapter
unnumbered & appendix
majorheading & chapheading
section
unnumberedsec appendixsec heading
subsection
unnumberedsubsec appendixsubsec subheading
subsubsection
Commands for the lowest level sections.
Raise/lower sections
How to change commands' hierarchical level.

Nodes

Two Paths
Different commands to structure Info output and printed output.
Node Menu Illustration
A diagram, and sample nodes and menus.
node
How to write a node, in detail.
makeinfo Pointer Creation
How to create node pointers with `makeinfo'.

The `@node' Command

Node Names
How to choose node and pointer names.
Writing a Node
How to write an `@node' line.
Node Line Tips
Keep names short.
Node Line Requirements
Keep names unique, without @-commands.
First Node
How to write a `Top' node.
makeinfo top command
How to use the `@top' command.
Top Node Summary
Write a brief description for readers.

Menus

Menu Location
Put a menu in a short node.
Writing a Menu
What is a menu?
Menu Parts
A menu entry has three parts.
Less Cluttered Menu Entry
Two part menu entry.
Menu Example
Two and three part menu entries.
Other Info Files
How to refer to a different Info file.

Cross References

References
What cross references are for.
Cross Reference Commands
A summary of the different commands.
Cross Reference Parts
A cross reference has several parts.
xref
Begin a reference with `See' ...
Top Node Naming
How to refer to the beginning of another file.
ref
A reference for the last part of a sentence.
pxref
How to write a parenthetical cross reference.
inforef
How to refer to an Info-only file.

`@xref'

Reference Syntax
What a reference looks like and requires.
One Argument
`@xref' with one argument.
Two Arguments
`@xref' with two arguments.
Three Arguments
`@xref' with three arguments.
Four and Five Arguments
`@xref' with four and five arguments.

Marking Words and Phrases

Indicating
How to indicate definitions, files, etc.
Emphasis
How to emphasize text.

Indicating Definitions, Commands, etc.

Useful Highlighting
Highlighting provides useful information.
code
How to indicate code.
kbd
How to show keyboard input.
key
How to specify keys.
samp
How to show a literal sequence of characters.
var
How to indicate a metasyntactic variable.
file
How to indicate the name of a file.
dfn
How to specify a definition.
cite
How to refer to a book that is not in Info.
url
How to indicate a world wide web reference.
email
How to indicate an electronic mail address.

Emphasizing Text

emph & strong
How to emphasize text in Texinfo.
Smallcaps
How to use the small caps font.
Fonts
Various font commands for printed output.
Customized Highlighting
How to define highlighting commands.

Quotations and Examples

Block Enclosing Commands
Use different constructs for different purposes.
quotation
How to write a quotation.
example
How to write an example in a fixed-width font.
noindent
How to prevent paragraph indentation.
Lisp Example
How to illustrate Lisp code.
smallexample & smalllisp
Forms for the `@smallbook' option.
display
How to write an example in the current font.
format
How to write an example that does not narrow the margins.
exdent
How to undo the indentation of a line.
flushleft & flushright
How to push text flushleft or flushright.
cartouche
How to draw cartouches around examples.

Making Lists and Tables

Introducing Lists
Texinfo formats lists for you.
itemize
How to construct a simple list.
enumerate
How to construct a numbered list.
Two-column Tables
How to construct a two-column table.
Multi-column Tables
How to construct generalized tables.

Making a Two-column Table

table
How to construct a two-column table.
ftable vtable
How to construct a two-column table with automatic indexing.
itemx
How to put more entries in the first column.

Multi-column Tables

Multitable Column Widths
Defining multitable column widths.
Multitable Rows
Defining multitable rows, with examples.

Creating Indices

Index Entries
Choose different words for index entries.
Predefined Indices
Use different indices for different kinds of entry.
Indexing Commands
How to make an index entry.
Combining Indices
How to combine indices.
New Indices
How to define your own indices.

Combining Indices

syncodeindex
How to merge two indices, using `@code' font for the merged-from index.
synindex
How to merge two indices, using the default font of the merged-to index.

Special Insertions

Braces Atsigns
How to insert braces, `@'.
Inserting Space
How to insert the right amount of space within a sentence.
Inserting Accents
How to insert accents and special characters.
Dots Bullets
How to insert dots and bullets.
TeX and copyright
How to insert the TeX logo and the copyright symbol.
pounds
How to insert the pounds currency symbol.
minus
How to insert a minus sign.
math
How to format a mathematical expression.

Inserting @ and Braces

Inserting An Atsign
How to insert `@'.
Inserting Braces
How to insert `{' and `}'.

Inserting Space

Not Ending a Sentence
Sometimes a . doesn't end a sentence.
Ending a Sentence
Sometimes it does.
Multiple Spaces
Inserting multiple spaces.
dmn
How to format a dimension.

Inserting Ellipsis, Dots, and Bullets

dots
How to insert dots ...
bullet
How to insert a bullet.

Inserting TeX and the Copyright Symbol

tex
How to insert the TeX logo.
copyright symbol
How to use `@copyright'{}.

Glyphs for Examples

Glyphs Summary
result
How to show the result of expression.
expansion
How to indicate an expansion.
Print Glyph
How to indicate printed output.
Error Glyph
How to indicate an error message.
Equivalence
How to indicate equivalence.
Point Glyph
How to indicate the location of point.

Making and Preventing Breaks

Break Commands
Cause and prevent splits.
Line Breaks
How to force a single line to use two lines.
- and hyphenation
How to tell TeX about hyphenation points.
w
How to prevent unwanted line breaks.
sp
How to insert blank lines.
page
How to force the start of a new page.
group
How to prevent unwanted page breaks.
need
Another way to prevent unwanted page breaks.

Definition Commands

Def Cmd Template
How to structure a description using a definition command.
Optional Arguments
How to handle optional and repeated arguments.
deffnx
How to group two or more `first' lines.
Def Cmds in Detail
All the definition commands.
Def Cmd Conventions
Conventions for writing definitions.
Sample Function Definition

The Definition Commands

Functions Commands
Commands for functions and similar entities.
Variables Commands
Commands for variables and similar entities.
Typed Functions
Commands for functions in typed languages.
Typed Variables
Commands for variables in typed languages.
Abstract Objects
Commands for object-oriented programming.
Data Types
The definition command for data types.

Footnotes

Footnote Commands
How to write a footnote in Texinfo.
Footnote Styles
Controlling how footnotes appear in Info.

Conditionally Visible Text

Conditional Commands
How to specify text for HTML, Info, or TeX.
Using Ordinary TeX Commands
You can use any and all TeX commands.
set clear value
How to designate which text to format (for both Info and TeX); and how to set a flag to a string that you can insert.

`@set', `@clear', and `@value'

ifset ifclear
Format a region if a flag is set.
value
Replace a flag with a string.
value Example
An easy way to update edition information.

Macros: Defining New Texinfo Commands

Defining Macros
Both defining and undefining new commands.
Invoking Macros
Using a macro, once you've defined it.

Format and Print Hardcopy

Use TeX
Use TeX to format for hardcopy.
Format with tex/texindex
How to format in a shell.
Format with texi2dvi
A simpler way to use the shell.
Print with lpr
How to print.
Within Emacs
How to format and print from an Emacs shell.
Texinfo Mode Printing
How to format and print in Texinfo mode.
Compile-Command
How to print using Emacs's compile command.
Requirements Summary
TeX formatting requirements summary.
Preparing for TeX
What you need to do to use TeX.
Overfull hboxes
What are and what to do with overfull hboxes.
smallbook
How to print small format books and manuals.
A4 Paper
How to print on European A4 paper.
Cropmarks and Magnification
How to print marks to indicate the size of pages and how to print scaled up output.

Creating an Info File

makeinfo advantages
`makeinfo' provides better error checking.
Invoking makeinfo
How to run `makeinfo' from a shell.
makeinfo options
Specify fill-column and other options.
Pointer Validation
How to check that pointers point somewhere.
makeinfo in Emacs
How to run `makeinfo' from Emacs.
texinfo-format commands
Two Info formatting commands written in Emacs Lisp are an alternative to `makeinfo'.
Batch Formatting
How to format for Info in Emacs Batch mode.
Tag and Split Files
How tagged and split files help Info to run better.

Installing an Info File

Directory file
The top level menu for all Info files.
New Info File
Listing a new info file.
Other Info Directories
How to specify Info files that are located in other directories.
Installing Dir Entries
How to specify what menu entry to add to the Info directory.
Invoking install-info
`install-info' options.

Sample Permissions

Inserting Permissions
How to put permissions in your document.
ifinfo Permissions
Sample `ifinfo' copying permissions.
Titlepage Permissions
Sample Titlepage copying permissions.

Include Files

Using Include Files
How to use the `@include' command.
texinfo-multiple-files-update
How to create and update nodes and menus when using included files.
Include File Requirements
What `texinfo-multiple-files-update' expects.
Sample Include File
A sample outer file with included files within it; and a sample included file.
Include Files Evolution
How use of the `@include' command has changed over time.

Page Headings

Headings Introduced
Conventions for using page headings.
Heading Format
Standard page heading formats.
Heading Choice
How to specify the type of page heading.
Custom Headings
How to create your own headings and footings.

Formatting Mistakes

makeinfo preferred
`makeinfo' finds errors.
Debugging with Info
How to catch errors with Info formatting.
Debugging with TeX
How to catch errors with TeX formatting.
Using texinfo-show-structure
How to use `texinfo-show-structure'.
Using occur
How to list all lines containing a pattern.
Running Info-Validate
How to find badly referenced nodes.

Finding Badly Referenced Nodes

Using Info-validate
How to run `Info-validate'.
Unsplit
How to create an unsplit file.
Tagifying
How to tagify a file.
Splitting
How to split a file manually.

Second Edition Features

New Texinfo Mode Commands
The updating commands are especially useful.
New Commands
Many newly described @-commands.