makeinfo1
Translate texinfo documents
Part of texi2any(1).
Usage
makeinfo [OPTION] ...
TEXINFO-FILE ...
Overview
Translate Texinfo source documentation to various other formats, by default Info files suitable for reading online with Emacs or standalone GNU Info.
This program is commonly installed as both `makeinfo' and `texi2any'; the behavior is identical, and does not depend on the installed name.
General options:
--document-language=STR locale to use in translating Texinfo keywords-
for the output document (default C)
-
--error-limit=NUM -
quit after NUM errors (default 100)
-
--force -
preserve output even if errors
-
--help -
display this help and exit
-
--no-validate -
suppress node cross-reference validation
-
--no-warn -
suppress warnings (but not errors)
-
--conf-dir=DIR -
search also for initialization files in DIR
-
--init-file=FILE -
load FILE to modify the default behavior
-
-c, --set-customization-variable VAR=VAL -
set customization variable VAR to value VAL
-
--trace-includes -
print names of included files
-
-v, --verbose -
explain what is being done
-
--version -
display version information and exit
Output format selection (default is to produce Info):
-
--docbook -
output Docbook XML
-
--html -
output HTML
-
--epub3 -
output EPUB 3
-
--latex -
output LaTeX
-
--plaintext -
output plain text rather than Info
-
--xml -
output Texinfo XML
-
--dvi, --dvipdf, --ps, --pdf -
call texi2dvi to generate given output, after checking validity of TEXINFO-FILE
General output options:
-
-E, --macro-expand=FILE -
output macro-expanded source to FILE, ignoring any @setfilename
-
--no-headers -
suppress node separators, Node: lines, and menus from Info output (thus producing plain text) or from HTML (thus producing shorter output). Also, if producing Info, write to standard output by default.
-
--no-split -
suppress any splitting of the output; generate only one output file
|
output chapter and sectioning numbers; default is on |
|---|---|
|
number footnotes sequentially; default is on |
-
-o, --output=DEST -
output to DEST. With split output, create DEST as a directory and put the output files there. With non-split output, if DEST is already a directory or ends with a /, put the output file there. Otherwise, DEST names the output file.
-
--disable-encoding -
do not output accented and special characters in Info and plain text output based on document encoding
-
--enable-encoding -
override
--disable-encoding(default)
Options for Info and plain text:
-
--fill-column=NUM -
break Info lines at NUM columns (default 72)
-
--footnote-style=STYLE -
output footnotes in Info according to STYLE: `separate' to put them in their own node; `end' to put them at the end of the node, in which they are defined (this is the default)
-
--paragraph-indent=VAL -
indent Info paragraphs by VAL spaces (default 3). If VAL is `none', do not indent; if VAL is `asis', preserve existing indentation.
-
--split-size=NUM -
split Info files at size NUM (default 300000)
Options for HTML:
-
--css-include=FILE -
include FILE in HTML <style> output; read stdin if FILE is -
-
--css-ref=URL -
generate CSS reference to URL
-
--internal-links=FILE -
produce list of internal links in FILE
-
--split=SPLIT -
split at SPLIT, where SPLIT may be `chapter', `section' or `node'
-
--transliterate-file-names -
use file names in ASCII transliteration
-
--node-files -
produce redirection files for nodes and anchors; default is set only if split
Options for DVI/PS/PDF:
-
--Xopt=OPT -
pass OPT to texi2dvi; can be repeated
Input file options:
-
-D VAR -
define the variable VAR, as with @set
-D'VAR VAL'-
define VAR to VAL (one shell argument)
-
-I DIR -
append DIR to the @include search path
-
-P DIR -
prepend DIR to the @include search path
-
-U VAR -
undefine the variable VAR, as with @clear
Conditional processing in input:
-
--ifdocbook -
process @ifdocbook and @docbook
-
--ifhtml -
process @ifhtml and @html
-
--ifinfo -
process @ifinfo
-
--iflatex -
process @iflatex and @latex
-
--ifplaintext -
process @ifplaintext
-
--iftex -
process @iftex and @tex
-
--ifxml -
process @ifxml and @xml
-
By default, an
--ifFORMATsetting is on only when the output format is FORMAT; for example,--ifhtmlis on when outputting HTML. Also, when--ifFORMATis on, @ifnotFORMAT text is not processed.
-
Each
--ifFORMAToption may be prefixed with `--no-' to negate it; for example,--no-ifhtmlmeans not to process @ifhtml or @html text, and to process @ifnothtml text.
Examples
makeinfo foo.texi
|
write Info |
|---|---|
makeinfo --html foo.texi
|
write HTML |
makeinfo --xml foo.texi
|
write Texinfo XML |
makeinfo --docbook foo.texi
|
write Docbook XML |
makeinfo --plaintext foo.texi
|
write plain text to standard output |
makeinfo --pdf foo.texi
|
write PDF using texi2dvi |
makeinfo --html --no-headers foo.texi
|
write html without node lines, menus |
makeinfo --number-sections foo.texi
|
write Info with numbered sections |
makeinfo --no-split foo.texi
|
write one Info file however big |
Releases
16 releases since Debian 2.0 (Hamm); the text changed 13 times.
--Xopt since Debian 8 (Jessie);
--conf-dir since Debian 8 (Jessie);
--css-include since Debian 3.1 (Sarge);
--css-ref since Debian 5.0 (Lenny);
--disable-encoding since Debian 5.0 (Lenny);
--docbook since Debian 3.0 (Woody);
--dvi since Debian 8 (Jessie);
--dvipdf since Debian 8 (Jessie);
--enable-encoding since Debian 3.0 (Woody);
--epub3 since Debian 13 (Trixie);
--force since Debian 2.2 (Potato);
--html since Debian 2.2 (Potato);
--ifdocbook since Debian 3.1 (Sarge);
--ifhtml since Debian 2.2 (Potato);
--ifinfo since Debian 2.2 (Potato);
--iflatex since Debian 13 (Trixie);
--ifplaintext since Debian 3.1 (Sarge);
--iftex since Debian 2.2 (Potato);
--ifxml since Debian 3.1 (Sarge);
--init-file since Debian 8 (Jessie);
--internal-links since Debian 6.0 (Squeeze);
--latex since Debian 13 (Trixie);
--macro-expand since Debian 2.2 (Potato);
--node-files since Debian 8 (Jessie);
--pdf since Debian 8 (Jessie);
--plaintext since Debian 3.1 (Sarge);
--ps since Debian 8 (Jessie);
--set-customization-variable since Debian 8 (Jessie);
--split since Debian 8 (Jessie);
--split-size since Debian 3.0 (Woody);
--trace-includes since Arch Linux 2026-11-01;
--transliterate-file-names since Debian 5.0 (Lenny);
--xml since Debian 3.0 (Woody);
-P since Debian 2.2 (Potato);
-c since Debian 8 (Jessie);
-v since Debian 2.2 (Potato).
--commands-in-node-names until Debian 12 (Bookworm);
--debug until Debian 2.1 (Slink);
--keep until Debian 2.1 (Slink);
--no-ifdocbook until Debian 13 (Trixie);
--no-ifhtml until Debian 13 (Trixie);
--no-ifinfo until Debian 13 (Trixie);
--no-iflatex until Debian 13 (Trixie);
--no-ifplaintext until Debian 13 (Trixie);
--no-iftex until Debian 13 (Trixie);
--no-ifxml until Debian 13 (Trixie);
--no-keep until Debian 2.1 (Slink);
--number-sections until Debian 7 (Wheezy);
--output-indent until Debian 12 (Bookworm);
--reference-limit until Debian 4.0 (Etch);
--texinfo until Debian 2.1 (Slink);
-k until Debian 2.1 (Slink);
-t until Debian 2.1 (Slink).