Texinfo

by Daniel Pimentel — Sat 09 September 2000

Texinfo is the official documentation format of the GNU project. It was invented by Richard Stallman and Bob Chassell many years ago, loosely based on Brian Reid's Scribe and other formatting languages of the time. It is used by many non-GNU projects as well.
Texinfo uses a single source file to produce output in a number of formats, both online and printed (dvi, html, info, pdf, xml, etc.). This means that instead of writing different documents for online information and another for a printed manual, you need write only one document. And when the work is revised, you need revise only that one document. The Texinfo system is well-integrated with GNU Emacs.

Simple Texinfo file

\input texinfo
@settitle name-of-manual version

@copying
This manual is for program, version version.

Copyright @copyright{} years copyright-owner.

@quotation
Permission is granted to Daniel Pimentel
@end quotation
@end copying

@titlepage
@title name-of-manual-when-printed
@subtitle subtitle-if-any
@subtitle second-subtitle
@author author

@c  The following two commands
@c  start the copyright page.
@page
@vskip 0pt plus 1filll
@insertcopying

Published by Daniel Pimentel
@end titlepage

@c So the toc is printed at the start.
@contents

@ifnottex
@node Top
@top title

This manual is for program, version version.
@end ifnottex

@menu
* First Chapter::    Getting started
* Second Chapter::   GNU developer
 …
* Copying::          Your rights and freedoms.
@end menu

@node First Chapter
@chapter First Chapter

@cindex first chapter
@cindex chapter, first

Generating documentation

makeinfo --docbook foo
makeinfo --html foo
makeinfo --plaintext foo
makeinfo --xml foo
makeinfo --dvi foo
makeinfo --dvipdf foo
makeinfo --ps foo
makeinfo --pdf foo
Texinfo
2000-2016 by Daniel Pimentel under GFDL