Texinfo
   HOME

TheInfoList



OR:

Texinfo is a typesetting syntax used for generating documentation in both on-line and printed form (creating filetypes as , , , etc., and its own hypertext format, ) with a single source file. It is implemented by a
computer program A computer program is a sequence or set of instructions in a programming language for a computer to execute. Computer programs are one component of software, which also includes documentation and other intangible components. A computer program ...
released as
free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
of the same name, created and made available by the
GNU Project The GNU Project () is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and computing devices by collaborat ...
from the
Free Software Foundation The Free Software Foundation (FSF) is a 501(c)(3) non-profit organization founded by Richard Stallman on October 4, 1985, to support the free software movement, with the organization's preference for software being distributed under copyleft (" ...
. The main purpose of Texinfo is to provide a way to easily typeset software manuals. Similar to the
LaTeX Latex is an emulsion (stable dispersion) of polymer microparticles in water. Latexes are found in nature, but synthetic latexes are common as well. In nature, latex is found as a milky fluid found in 10% of all flowering plants (angiosperms ...
syntax, all the normal features of a book, such as chapters, sections, cross references, tables and indices are available for use in documents. Using the various output generators that are available for Texinfo, it is possible to keep several documentation types up-to-date (such as on-line documentation provided via a Web site, and printed documentation, as generated using the
TeX Tex may refer to: People and fictional characters * Tex (nickname), a list of people and fictional characters with the nickname * Joe Tex (1933–1982), stage name of American soul singer Joseph Arrington Jr. Entertainment * ''Tex'', the Italian ...
typesetting system) using only a single source file. The official Texinfo documentation states that the first syllable of "Texinfo" is pronounced so as to rhyme with "speck", not "hex"; this pronunciation is derived from the pronunciation of
TeX Tex may refer to: People and fictional characters * Tex (nickname), a list of people and fictional characters with the nickname * Joe Tex (1933–1982), stage name of American soul singer Joseph Arrington Jr. Entertainment * ''Tex'', the Italian ...
, in which the X represents the
Greek Greek may refer to: Greece Anything of, from, or related to Greece, a country in Southern Europe: *Greeks, an ethnic group. *Greek language, a branch of the Indo-European language family. **Proto-Greek language, the assumed last common ancestor ...
letter chi rather than the English letter x. The maintainers state that "Texinfo" should be written with only a capital "T" and the rest of the letters in lower case.


Output formats

In order to make it possible for several documentation output formats to be updated all at once, upon changing the original Texinfo (.texi) source file, several syntax converters are available that can be used to generate translations of the Texinfo file into other formats. Most of these are created using the program, which is part of the GNU Texinfo distribution. ;HTML :(Generated via .) As HTML is the standard language for documents presented on the World Wide Web, this output format can effectively be used to produce online documentation pages. The manual notes that the program attempts to restrict its output files to a certain subset of HTML markup that can be read by as many browsers as possible. ;DVI :(Generated via .) The
device independent file format The device independent file format (DVI) is the output file format of the TeX typesetting program, designed by David R. Fuchs and implemented by Donald E. Knuth in 1982. Unlike the TeX markup files used to generate them, DVI files are not inte ...
is output by the
TeX Tex may refer to: People and fictional characters * Tex (nickname), a list of people and fictional characters with the nickname * Joe Tex (1933–1982), stage name of American soul singer Joseph Arrington Jr. Entertainment * ''Tex'', the Italian ...
typesetting system, and can be used for generating device-specific commands that can be viewed or printed; for example, translation to PostScript ( files). ;PDF :(Generated via or .) Based on the PostScript language, this format was developed by Adobe Systems for portable document interchange. Like the PostScript format, it can represent the exact appearance of a document and supports arbitrary scaling. It is intended to be platform-independent and can be viewed with a large variety of software. Texinfo uses the program, a variant of TeX, to output PDF. ;
Docbook DocBook is a semantic markup language for technical documentation. It was originally intended for writing technical documents related to computer hardware and software, but it can be used for any other sort of documentation. As a semantic languag ...
:(Generated via .) This is an XML-based markup language for technical documentation that bears some resemblance to Texinfo, in broad outlines. It is also possible to convert Docbook files to Texinfo, using the program. ;XML :(Generated via .) For general purposes. ;Info :(Generated via .) This is a specific format which essentially is a plain text version of the original Texinfo syntax in conjunction with a few control characters to separate nodes and provide navigational elements for menus, cross-references, sections, and so on. The Info format can be viewed with the program.


Man output

Notably,
man A man is an adult male human. Prior to adulthood, a male human is referred to as a boy (a male child or adolescent). Like most other male mammals, a man's genome usually inherits an X chromosome from the mother and a Y chromo ...
is not available as an output format from the standard Texinfo tools. While Texinfo is used for writing the documentation of
GNU GNU () is an extensive collection of free software (383 packages as of January 2022), which can be used as an operating system or can be used in parts with other operating systems. The use of the completed GNU tools led to the family of operat ...
software, which typically is used in
Unix-like A Unix-like (sometimes referred to as UN*X or *nix) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Unix-li ...
environments such as
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
, where man pages are the traditional format for documentation, the rationale for this is that man pages have a strict conventional format, used traditionally as quick reference guides, whereas typical Texinfo applications are for tutorials as well as reference manuals. As such, no benefit is seen in expressing Texinfo content in man page format. Moreover, many GNU projects eschew man pages almost completely, referring the reader of the provided man page (which often describes itself as seldom maintained) to the Info document.


Texinfo source file

Texinfo enables structuring a document like a book with chapters, sections, cross references and indices. The source is almost
plain text In computing, plain text is a loose term for data (e.g. file contents) that represent only characters of readable material but not its graphical representation nor other objects (floating-point numbers, images, etc.). It may also include a limit ...
, but technically it is formatted text marked up by commands that begin with "@". A sample of a part of a source file:
@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
The commands mark structure such as chapters or denote a part of the source to be processed only for certain types of output.


History and status

Texinfo is used as the official documentation system for the
GNU Project The GNU Project () is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and computing devices by collaborat ...
. Texinfo is licensed under the
GNU General Public License The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general ...
. The Texinfo format was created by Richard M. Stallman, combining another system for print output in use at MIT called BoTeX, with the online
Info Info is shorthand for "information". It may also refer to: Computing * .info, a generic top-level domain * info:, a URI scheme for information assets with identifiers in public namespaces * info (Unix), a command used to view documentation produc ...
hyperlinked documentation system, also created by Stallman on top of the TECO implementation of Emacs. BoTeX itself was based on an earlier system called Bolio (associated with David A. Moon, and used for documentation of the
Lisp Machine Lisp machines are general-purpose computers designed to efficiently run Lisp as their main software and programming language, usually via hardware support. They are an example of a high-level language computer architecture, and in a sense, they ...
), converted to use
TeX Tex may refer to: People and fictional characters * Tex (nickname), a list of people and fictional characters with the nickname * Joe Tex (1933–1982), stage name of American soul singer Joseph Arrington Jr. Entertainment * ''Tex'', the Italian ...
for its output. Robert Chassell helped Stallman to create the first translator to create Info in
Emacs Lisp Emacs Lisp is a dialect of the Lisp programming language used as a scripting language by Emacs (a text editor family most commonly associated with GNU Emacs and XEmacs). It is used for implementing most of the editing functionality built into Em ...
. The Texinfo software distribution development was led by Brian Fox (up to version 3.8), Karl Berry (through version 5.2), and by Gavin Smith (since Dec. 2014). Texinfo is "loosely based on Brian Reid's Scribe and other formatting languages of the time".Texinfo
/ref>


See also

*
TeX Tex may refer to: People and fictional characters * Tex (nickname), a list of people and fictional characters with the nickname * Joe Tex (1933–1982), stage name of American soul singer Joseph Arrington Jr. Entertainment * ''Tex'', the Italian ...
*
List of TeX extensions TeX is a free typesetting system for which many extensions have been developed. Languages * ArabTeX – adds support for Hebrew and Arabic alphabets * FarsiTeX – adds support for Farsi * Omega (TeX) – extends multilinguality by usi ...


Notes and references


External links

* {{Document markup languages Free TeX software GNU Project software Hypertext Markup languages