"Fossies" - the Fresh Open Source Software Archive

Member "texinfo-6.5/doc/refcard/txirefcard.tex" (12 Sep 2017, 52125 Bytes) of package /linux/misc/texinfo-6.5.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) TeX and LaTeX source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 % Texinfo reference card.
    2 % $Id: txirefcard.tex 7842 2017-06-23 06:47:27Z gavin $
    3 %
    4 %**start of header
    5 % This file can be printed with 1, 2, or 3 columns per page (see below).
    6 % Specify how many you want here.  (Except only 3 has been tested.)
    7 \newcount\columnsperpage
    8 \columnsperpage=3
    9 
   10 % Set letterpaper to 0 for A4 paper, 1 for letter (US) paper.
   11 % (Except only 1 (letter) has been tested)
   12 % Useful only when columnsperpage is 2 or 3.
   13 % \afour is defined in the invocation from the Makefile.
   14 \newcount\letterpaper
   15 \ifx\undefined\afour\letterpaper=1 \else\letterpaper=0 \fi
   16 
   17 % Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017
   18 % Free Software Foundation, Inc.
   19 %
   20 % This file is part of GNU Texinfo.
   21 %
   22 % Texinfo is free software; you can redistribute it and/or modify it
   23 % under the terms of the GNU General Public License as published by the
   24 % Free Software Foundation; either version 3 of the License, or (at your
   25 % option) any later version.
   26 %
   27 % Texinfo is distributed in the hope that it will be useful,
   28 % but WITHOUT ANY WARRANTY; without even the implied warranty of
   29 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   30 % GNU General Public License for more details.
   31 %
   32 % You should have received a copy of the GNU General Public License
   33 % along with Texinfo.  If not, see <http://www.gnu.org/licenses/>.
   34 %
   35 % This file is written in plain TeX.
   36 %
   37 % To compile and print this document:
   38 % tex refcard.tex
   39 % dvips -t letter -t landscape refcard.dvi
   40 %
   41 % Author:
   42 %  Robert D. Solimeno (adapted from Emacs reference card by Stephen Gildea)
   43 %  Internet: solimeno (at) gmail (dot) com
   44 %
   45 % The author thanks Karl Berry for the opportunity to contribute to this
   46 % project and for his assistance and great patience as I learned how to
   47 % use TeX.
   48 %
   49 % Much of the text is based on, and sometimes copied from, the @-Command
   50 % Summary node in the Texinfo manual, originally written by Bob Chassell.
   51 
   52 \def\versionyear{2017}          % year manual was updated
   53 \def\versionTexinfo{6.5}        % version of Texinfo this manual is for
   54 
   55 \def\copyrightnotice{%
   56 \vskip 1ex plus 1filll\begingroup\small
   57 \advance\baselineskip by 1pt
   58 \centerline{Copyright \copyright\ 2016 Free Software Foundation, Inc.}
   59 \centerline{for Texinfo version \versionTexinfo, \versionyear}
   60 \centerline{by Robert D. Solimeno}
   61 \centerline{and the Texinfo maintainers}
   62 
   63 \smallskip
   64   Copying and distribution of this material, with or without modification,
   65   are permitted in any medium without royalty provided the copyright
   66   notice and this notice are preserved.
   67 
   68 \smallskip
   69 For printed copies of the Texinfo manual, visit {\tt
   70 http://www.gnupress.org} or write to the Free Software Foundation, Inc.,
   71 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
   72 
   73 \endgroup}
   74 
   75 % make \bye not \outer so that the \def\bye in the \else clause below
   76 % can be scanned without complaint.
   77 \def\bye{\par\vfill\supereject\end}
   78 
   79 \newdimen\intercolumnskip   %horizontal space between columns
   80 \newbox\columna         %boxes to hold columns already built
   81 \newbox\columnb
   82 
   83 \def\ncolumns{\the\columnsperpage}
   84 
   85 \message{[\ncolumns\space
   86   column\if 1\ncolumns\else s\fi\space per page]}
   87 
   88 \def\scaledmag#1{ scaled \magstep #1}
   89 
   90 % This multi-way format was designed by Stephen Gildea October 1986.
   91 % Note that the 1-column format is fontfamily-independent.
   92 \ifnum \ncolumns=1          %one-column format uses normal size
   93   \hsize 4in
   94   \vsize 10in
   95   \voffset -.7in
   96   \font\titlefont=\fontname\tenbf \scaledmag3
   97   \font\headingfont=\fontname\tenbf \scaledmag2
   98   \font\smallfont=\fontname\sevenrm
   99   \font\smallsy=\fontname\sevensy
  100   \font\acrofont=cmr9
  101   \footline{\hss\folio}
  102   \def\makefootline{\baselineskip10pt\hsize6.5in\line{\the\footline}}
  103 \else               %2 or 3 columns uses prereduced size
  104   \hsize 3.4in
  105   \ifnum \letterpaper=1
  106      \vsize 7.95in
  107   \else
  108      \vsize 7.65in
  109   \fi
  110   \hoffset -.75in
  111   \voffset -.745in
  112   \font\titlefont=cmbx8 \scaledmag3
  113   \font\headingfont=cmbx8 \scaledmag2
  114   \font\subheadingfont=cmbx8 \scaledmag1
  115   \font\subsubheadingfont=cmbx8 \scaledmag0
  116   \font\smallfont=cmr8
  117   \font\smallsy=cmsy8
  118   \font\eightrm=cmr8
  119   \font\eightbf=cmbx8
  120   \font\eightit=cmti8
  121   \font\eighttt=cmtt8
  122   \font\eightmi=cmmi8
  123   \font\eightsl=cmsl8
  124   \font\eightsy=cmsy8
  125   \textfont0=\eightrm
  126   \textfont1=\eightmi
  127   \textfont2=\eightsy
  128   \def\rm{\eightrm}
  129   \def\bf{\eightbf}
  130   \def\it{\eightit}
  131   \def\sl{\eightsl}
  132   \def\tt{\eighttt}
  133   \font\acrofont=cmr7
  134   \ifnum \letterpaper=1
  135      \normalbaselineskip=.75\normalbaselineskip
  136   \else
  137      \normalbaselineskip=.7\normalbaselineskip
  138   \fi
  139   \normallineskip=.8\normallineskip
  140   \normallineskiplimit=.8\normallineskiplimit
  141   \normalbaselines\rm       %make definitions take effect
  142 
  143   \if 2\ncolumns
  144     \let\maxcolumn=b
  145     \footline{\hss\rm\folio\hss}
  146     \def\makefootline{\vskip 2in \hsize=6.86in\line{\the\footline}}
  147   \else \if 3\ncolumns
  148     \let\maxcolumn=c
  149     \nopagenumbers
  150   \else
  151     \errhelp{You must set \columnsperpage equal to 1, 2, or 3.}
  152     \errmessage{Invalid number of columns per page}
  153   \fi\fi
  154 
  155   \intercolumnskip=.1in
  156   \def\abc{a}
  157   \output={%            %see The TeXbook page 257
  158       % This next line is useful when designing the layout.
  159       %\immediate\write16{Column \folio\abc\space starts with \firstmark}
  160       \if \maxcolumn\abc \multicolumnformat \global\def\abc{a}
  161       \else\if a\abc
  162     \global\setbox\columna\columnbox \global\def\abc{b}
  163         %% in case we never use \columnb (two-column mode)
  164         \global\setbox\columnb\hbox to -\intercolumnskip{}
  165       \else
  166     \global\setbox\columnb\columnbox \global\def\abc{c}\fi\fi}
  167   \def\multicolumnformat{\shipout\vbox{\makeheadline
  168       \hbox{\box\columna\hskip\intercolumnskip
  169         \box\columnb\hskip\intercolumnskip\columnbox}
  170       \makefootline}\advancepageno}
  171   \def\columnbox{\leftline{\pagebody}}
  172 
  173   \def\bye{\par\vfill\supereject
  174     \if a\abc \else\null\vfill\eject\fi
  175     \if a\abc \else\null\vfill\eject\fi
  176     \end}
  177 \fi
  178 
  179 \parindent 0pt
  180 \parskip 1ex plus.5ex minus.5ex  % between entries
  181 \emergencystretch = .9\hsize
  182 \rightskip = 0pt plus.33\hsize
  183 \hbadness = 3000
  184 
  185 % characters special to TeX.
  186 \catcode`\^=12
  187 \catcode`\_=12
  188 \def\tildechar{{\tt \char`\~}}
  189 \def\bschar{{\tt \char`\\}}
  190 \def\lbracechar{{\tt \char`\{}}
  191 \def\rbracechar{{\tt \char`\}}}
  192 
  193 \def\small{\smallfont\textfont2=\smallsy\baselineskip=0.9\baselineskip}
  194 
  195 % newcolumn - force a new column.  Use sparingly if at all.
  196 \outer\def\newcolumn{\vfill\eject}
  197 
  198 % title - page title.  Argument is title text.
  199 \outer\def\title#1{{\titlefont\centerline{#1}}\vskip 1ex plus .5ex minus .75ex}
  200 
  201 % chapter - new major section.  Argument is section name.
  202 \outer\def\chapter#1{\glueabove{2ex plus1.5ex minus1.5ex}%
  203   \nobreak\noindent {\headingfont #1}%
  204   \nobreak\vskip 0pt plus1ex\nobreak}
  205 %
  206 \outer\def\section#1{\glueabove{1.5ex plus1ex minus1ex}
  207   \nobreak\noindent {\subheadingfont #1}%
  208   \nobreak\vskip 0pt plus.5ex\nobreak}
  209 %
  210 \outer\def\subsection#1{\glueabove{.75ex plus.5ex minus.5ex}%
  211   \nobreak\noindent \centerline{\it #1}%
  212   \nobreak\vskip-.5ex % reduce parskip
  213   \nobreak
  214   }
  215 
  216 \def\glueabove#1{\par\ifnum\lastpenalty<10000 \filbreak \vskip #1\relax\fi}
  217 
  218 % paralign - begin paragraph containing an alignment.
  219 % If an \halign is entered while in vertical mode, a parskip is never
  220 % inserted.  Using \paralign instead of \halign solves this problem.
  221 \def\paralign{\vskip\parskip\halign}
  222 
  223 % forced line break.
  224 \def\linebreak{\hfil\break}
  225 
  226 % code, samp - typewriter, without or with surrounding quotes.
  227 \def\code#1{{\tt#1}\null}   %\null so not an abbrev even if period follows
  228 \def\samp#1{`\code{#1}'}
  229 
  230 % var - metasyntactic var, in slanted.
  231 \def\var#1{{\sl#1\/}\null}
  232 
  233 % acro - one point size smaller than main text.
  234 \def\acro#1{{\acrofont #1}}
  235 
  236 % beginexample...endexample surrounds literal text, such a code example.
  237 % typeset in a typewriter font with line breaks preserved
  238 \def\beginexample{\par\leavevmode\begingroup
  239   \obeylines\obeyspaces\parskip0pt\tt}
  240 {\obeyspaces\global\let =\ }
  241 \def\endexample{\endgroup}
  242 
  243 % \beginindentedkeys...\endindentedkeys - key definitions will be
  244 % indented, but running text, typically used as headings to group
  245 % definitions, will not.
  246 \newdimen\keyindent
  247 \def\beginindentedkeys{\keyindent=1em}
  248 \def\endindentedkeys{\keyindent=0em}
  249 \endindentedkeys
  250 
  251 % \key{key-name}{description of key}
  252 % prints the description left-justified, and the key-name in a \code
  253 % form near the right margin.  Both in typewriter.  The order of the
  254 % arguments is because that is what describe-mode outputs.
  255 \def\key#1#2{\leavevmode\hbox to \hsize{\tt
  256   \vtop{\hsize=.75\hsize \rightskip=1em \hskip\keyindent\relax #2}%
  257   #1\hfil}}
  258 
  259 % \infokey KEY DESC
  260 % the keystroke is delimited by space(s) from the description, the idea
  261 % being to make straight copy-and-paste from the help message mostly work.
  262 \gdef\infokey#1 #2\cr{\code{#1}&#2\cr}%
  263 
  264 % make eol active.
  265 \def\begininfokeys{
  266   \smallskip
  267   \begingroup
  268     \def\par{\noalign{\smallskip}}% blank lines within the table
  269     \halign\bgroup ##\quad\hfil&##\hfil\cr
  270 }
  271 \def\endinfokeys{\egroup\endgroup\smallskip}
  272 
  273 % txicmd - definition of a txicmd.
  274 % \txicmd{cmdname}{args}{description of txicmd}
  275 % prints the txicmd-name left-justified in typewriter, and the description
  276 % in small font in a paragraph below the command.
  277 %
  278 \def\txicmd#1#2#3{\ifnum\lastpenalty<10000 \filbreak\fi
  279   {{\tt#1}\txicmdarg{#2}\ {\small#3}\vskip -2pt}}
  280 \def\txicmdarg#1{\ {\small\sl\kern-.17em #1}}
  281 % the kern there gives us less than a full word space; we want enough
  282 % space for the line-delimited commands like @chapter, but not to be
  283 % excessive for the brace-delimited commands like @url.
  284 
  285 % For the definition commands, which all have @foo and @foox variants.
  286 \def\txicmdx#1{\txicmd{#1\rmbrack[x]}}
  287 
  288 % Enclose argument in roman brackets.
  289 \def\rmbrack[#1]{{\small[}#1\/{\small{]}\thinspace}}
  290 
  291 % Enclose argument in typewriter braces.
  292 \def\ttbraced#1{\lbracechar#1\rbracechar}
  293 
  294 % metax - definition of a M-x command.
  295 % \metax{description of command}{M-x command-name}
  296 % Tries to justify the beginning of the command name at the same place
  297 % as \key starts the key name.  (The "M-x " sticks out to the left.)
  298 \newbox\metaxbox
  299 \setbox\metaxbox\hbox{\code{M-x }}
  300 \newdimen\metaxwidth
  301 \metaxwidth=\wd\metaxbox
  302 
  303 \def\metax#1#2{\leavevmode\hbox to \hsize{\hbox to .75\hsize
  304   {\hskip\keyindent\relax#1\hfil}%
  305   \hskip -\metaxwidth minus 1fil
  306   \code{#2}\hfil}}
  307 
  308 % threecol - like "key" but with two key names.
  309 % for example, one for doing the action backward, and one for forward.
  310 \def\threecol#1#2#3{\hskip\keyindent\relax#1\hfil&\code{#2}\hfil\quad
  311   &\code{#3}\hfil\quad\cr}
  312 
  313 % Define the LaTeX logo
  314 \def\LaTeX{L\kern-.35em \raise.65ex\hbox{\fiverm A}\kern-.15em \TeX}%
  315 
  316 % Define some special glyphs, taken from Texinfo.tex
  317 % The @error{} command.
  318 % Adapted from the TeXbook's \boxit.
  319 %
  320 \newbox\errorbox
  321 %
  322 {\tentt \global\dimen0 = 3em}% Width of the box.
  323 \dimen2 = .35pt % Thickness of rules
  324 % The text. (`r' is open on the right, `e' somewhat less so on the left.)
  325 \setbox0 = \hbox{\kern-.75pt  \smallfont error\kern-1.5pt}
  326 %
  327 \setbox\errorbox=\hbox to \dimen0{\hfil
  328    \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right.
  329    \advance\hsize by -2\dimen2 % Rules.
  330    \vbox{%
  331       \hrule height\dimen2
  332       \hbox{\vrule width\dimen2 \kern3pt          % Space to left of text.
  333          \vtop{\kern2.4pt \box0 \kern2.4pt}% Space above/below.
  334          \kern3pt\vrule width\dimen2}% Space to right.
  335       \hrule height\dimen2}
  336     \hfil}
  337 %
  338 \def\error{\leavevmode\lower.7ex\copy\errorbox}
  339 
  340 % @point{}, @result{}, @expansion{}, @print{}, @equiv{}.
  341 %
  342 % Since these characters are used in examples, it should be an even number of
  343 % \tt widths. Each \tt character is 1en, so two makes it 1em.
  344 %
  345 \def\point{$\star$}
  346 \def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}}
  347 \def\expansion{\leavevmode\raise.1ex\hbox to 1em{\hfil$\mapsto$\hfil}}
  348 \def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}}
  349 
  350 % @registeredsymbol - R in a circle.
  351 \def\registeredsymbol{%
  352  \raise.8ex\hbox{{{\ooalign{\hfil\raise.07ex\hbox{\fiverm R}%
  353               \hfil\crcr\Orb}}%
  354    }}%
  355 }
  356 
  357 \def\ordf{\leavevmode\raise1ex\hbox{\fiverm \underbar{a}}}
  358 \def\ordm{\leavevmode\raise1ex\hbox{\fiverm \underbar{o}}}
  359 
  360 \font\eurofont = feybr10 at 8pt
  361 \def\euro{{\eurofont e}}
  362 
  363 \font\ecfont = ecrm0800
  364 \def\DH{{\ecfont \char"D0}} % Eth
  365 \def\dh{{\ecfont \char"F0}} % eth
  366 \def\TH{{\ecfont \char"DE}} % Thorn
  367 \def\th{{\ecfont \char"FE}} % thorn
  368 \def\guillemetleft{{\ecfont \char"13}}
  369 \def\guillemotleft{\guillemetleft}
  370 \def\guillemetright{{\ecfont \char"14}}
  371 \def\guillemotright{\guillemetright}
  372 \def\guilsinglleft{{\ecfont \char"0E}}
  373 \def\guilsinglright{{\ecfont \char"0F}}
  374 \def\quotedblbase{{\ecfont \char"12}}
  375 \def\quotesinglbase{{\ecfont \char"0D}}
  376 \def\ogonek#1{{%
  377     \ecfont \setbox0=\hbox{#1}%
  378     \ifdim\ht0=1ex\accent"0C #1%
  379     \else\ooalign{\unhbox0\crcr\hidewidth\char"0C \hidewidth}%
  380     \fi
  381 }}
  382 % normal quotes
  383 \def\quoteleft{`}
  384 \def\quoteright{'}
  385 \def\quotedblleft{``}
  386 \def\quotedblright{''}
  387 
  388 %**end of header
  389 
  390 % 
  391 \title{GNU Texinfo Reference Card}
  392 
  393 \centerline{(for Texinfo version \versionTexinfo)}
  394 \vskip1pt
  395 \centerline{\code{http://www.gnu.org/software/texinfo/}}
  396 
  397 \chapter{Texinfo document skeleton}
  398 
  399 Texinfo source files are plain text; standard extensions are
  400 \samp{.texinfo}, \samp{.texi}, and \samp{.txi}.  A Texinfo file must
  401 begin with lines like this:
  402 
  403 {\advance\baselineskip by -3pt
  404 \code{\bschar input texinfo}\linebreak
  405 \code{@setfilename {\sl info-file-name}}\linebreak
  406 \code{@settitle {\sl name-of-manual}}}
  407 
  408 \dots the contents of the Texinfo document,
  409 ending with:\linebreak
  410 \code{@bye}
  411 
  412 
  413 \chapter{Texinfo @-commands}
  414 
  415 \section{Beginning a Texinfo document}
  416 
  417 The commands in this section are given approximately in the order in
  418 which they conventionally appear.
  419 
  420 \txicmd{@setfilename}{info-file-name}{Provide a name to be used for the output files. This command is essential for \TeX\  formatting as well, even though it produces no output.  Should be the first command in the input.}
  421 \txicmd{@settitle}{title}{Specify document \var{title}.}
  422 \txicmd{@copying}{}{Specify copyright and licensing text. Pair with \code{@end copying}.}
  423 \txicmd{@insertcopying}{}{Insert text defined by \code{@copying}.}
  424 
  425 \subsection{Internationalization}
  426 
  427 \txicmd{@documentencoding}{enc}{Declare the input encoding to be \var{enc}; use right after \code{@setfilename}.  Default is \code{US-ASCII}; other possibilities: \code{UTF-8}, \code{ISO-8859-1}, \code{koi8-r}, \dots}
  428 \txicmd{@documentlanguage}{LL\rmbrack[\code{_}CC]}{Declare the current language as the two-character \acro{ISO}-639 abbreviation \var{LL}, optionally followed by an underscore and a two-letter \acro{ISO} 3166 two-letter country code (\var{CC}). Default is \code{en_US}.}
  429 \txicmd{@frenchspacing}{\code{on|off}}{Control spacing after punctuation.}
  430 
  431 \subsection{Info directory specifications}
  432 
  433 \txicmd{@dircategory}{category name}{Specify an Info directory section for this file's entries.  Can be repeated.  We try to follow the categories in the Free Software Directory.}
  434 \txicmd{@direntry}{}{Begin the Info directory menu entries for this file. Pair with \tt @end direntry.}
  435 
  436 \subsection{\acro{HTML} document description}
  437 
  438 \txicmd{@documentdescription}{}{Set the document description text for \acro{HTML}; default is just the title of the document. Pair with \code{@end documentdescription}.}
  439 
  440 \subsection{Title pages}
  441 
  442 \txicmd{@shorttitlepage}{title}{Generate a minimal title page, generally for the first page of output in a long printed manual.}
  443 \txicmd{@center}{line-of-text}{Center \var{line-of-text}, usually for titles.}
  444 \txicmd{@titlefont}{\ttbraced{\var{text}}}{In a printed manual, print \var{text} in a larger than normal font. Ignored in Info.}
  445 \txicmd{@titlepage}{}{Begin the title page. Write the command on a line of its own, paired with \code{@end titlepage}. Ignored in Info.}
  446 \txicmd{@title}{title}{Within \code{@titlepage}, display \var{title} appropriately.}
  447 \txicmd{@subtitle}{subtitle}{Within \code{@titlepage}, display \var{subtitle}.}
  448 \txicmd{@author}{author}{Within \code{@titlepage}, display \var{author}.}
  449 
  450 \subsection{Tables of contents}
  451 
  452 \txicmd{@shortcontents}{}{Print a short table of contents (chapter-level entries only). Not relevant to Info.}
  453 \txicmd{@summarycontents}{}{Synonym for \code{@shortcontents}.}
  454 \txicmd{@contents}{}{Print a complete table of contents. Has no effect in Info, which uses menus instead.}
  455 
  456 
  457 \section{Nodes}
  458 
  459 \txicmd{@node}{name\rmbrack[, next, previous, up]}{Begin a new node.  The \var{next}, \var{previous}, and \var{up} pointers are usually omitted in a normally-structured document.}
  460 \txicmd{@top}{title}{Mark the topmost \code{@node} in the file, which must be defined on the line immediately preceding \code{@top}. The \var{title} is formatted as a chapter-level heading.  The entire top node, including the \code{@node} and \code{@top} lines, are normally enclosed with \code{@ifnottex ... @end ifnottex}.}
  461 \txicmd{@anchor}{\ttbraced{\var{name}}}{Define \var{name} as the current location, for use as a cross-reference target.}
  462 \txicmd{@novalidate}{}{Suppress validation of node references and omit creation of auxiliary files with \TeX. Use before \code{@setfilename}.}
  463 
  464 
  465 \section{Chapter structuring}
  466 
  467 \txicmd{@lowersections}{}{Change subsequent chapters to sections, sections to subsections, and so on.}
  468 \txicmd{@raisesections}{}{Change subsequent sections to chapters, subsections to sections, and so on.}
  469 \txicmd{@part}{title}{Print part page, beginning a group of chapters; included in contents.}
  470 
  471 \subsection{Numbered, included in contents}
  472 
  473 \txicmd{@chapter}{title}{Begin a numbered chapter; \var{title} appears in the table of contents.}
  474 \txicmd{@centerchap}{title}{Like \code{@chapter}, with chapter title centered.}
  475 
  476 \subsection{Context-dependent, included in contents}
  477 
  478 \txicmd{@section}{title}{Begin a section within a chapter.  Within \code{@chapter} and \code{@appendix}, the section is numbered; within \code{@unnumbered}, it is unnumbered.}
  479 \txicmd{@subsection}{title}{Begin a subsection within a section.  Same context-dependent numbering as \code{@section}.}
  480 \txicmd{@subsubsection}{title}{Begin a numbered subsubsection within a subsection. Same context-dependent numbering as \code{@section}.}
  481 
  482 \subsection{Unnumbered, included in contents}
  483 
  484 \txicmd{@unnumbered}{title}{Begin an unnumbered chapter.}
  485 \txicmd{@unnumberedsec}{title}{Begin an unnumbered section.}
  486 \txicmd{@unnumberedsubsec}{title}{Begin an unnumbered subsection.}
  487 \txicmd{@unnumberedsubsubsec}{title}{Begin an unnumbered subsubsection.}
  488 
  489 \subsection{Lettered and numbered, included in contents}
  490 
  491 \txicmd{@appendix}{title}{Begin an appendix.}
  492 \txicmd{@appendixsec}{title}{Begin an appendix section within an appendix; \code{@appendixsection} is a synonym.}
  493 \txicmd{@appendixsubsec}{title}{Begin an appendix subsection; \code{@appendixsubsection} is a synonym.}
  494 \txicmd{@appendixsubsubsec}{title}{Begin an appendix subsubsection; \code{@appendixsubsubsection} is a synonym.}
  495 
  496 \subsection{Unnumbered, not in contents, no new page}
  497 
  498 \txicmd{@chapheading}{title}{Print an unnumbered chapter-like heading.}
  499 \txicmd{@majorheading}{title}{Like \code{@chapheading}, but generate additional vertical whitespace before the heading.}
  500 \txicmd{@heading}{title}{Print an unnumbered section-like heading.}
  501 \txicmd{@subheading}{title}{Print an unnumbered subsection-like heading.}
  502 \txicmd{@subsubheading}{title}{Print an unnumbered subsubsection-like heading.}
  503 
  504 
  505 \section{Menus}
  506 
  507 \txicmd{@menu}{}{Mark the beginning of a menu of nodes in Info. No effect in a printed manual. Pair with \code{@end menu}.}
  508 \txicmd{@detailmenu}{}{Mark the (optional) detailed node listing in a master menu.}
  509 \txicmd{@validatemenus}{}{Specify whether menus can be automatically generated.}
  510 
  511 
  512 \section{Cross references}
  513 
  514 \subsection{Within the Info system}
  515 
  516 \txicmd{@xref}{\ttbraced{node, \rmbrack[entry], \rmbrack[node-title], \rmbrack[info-file], \rmbrack[manual]}}{Makes a reference that starts with `See' in a printed manual. Follow command with punctuation. Only the first argument is mandatory.}
  517 \txicmd{@pxref}{\ttbraced{node, \rmbrack[entry], \rmbrack[node-title], \rmbrack[info-file], \rmbrack[manual]}}{Like \code{@xref}, but starts with `see' instead of `See', and must be used inside parentheses.}
  518 \txicmd{@ref}{\ttbraced{node, \rmbrack[entry], \rmbrack[node-title], \rmbrack[info-file], \rmbrack[manual]}}{Like \code{@xref}, but produces only the bare reference without `See' or `see'; must be followed by a punctuation mark.}
  519 \txicmd{@inforef}{\ttbraced{node, \rmbrack[entry-name], info-file}}{Make a cross reference to an Info file for which there is no printed manual.}
  520 \txicmd{@xrefautomaticsectiontitle}{\code{on|off}}{By default, use the section title instead of the node name in cross references.}
  521 
  522 \subsection{Outside of Info}
  523 
  524 \txicmd{@url}{\ttbraced{url, \rmbrack[displayed-text], \rmbrack[replacement]}}{Make a hyperlink reference to a uniform resource locator.  \code{@uref} is a synonym.}
  525 \txicmd{@cite}{\ttbraced{title}}{Indicate the name of a book or other reference that has no Info file; no hyperlink.}
  526 
  527 
  528 \section{Marking text}
  529 
  530 \subsection{Markup for regular text}
  531 
  532 \txicmd{@abbr}{\ttbraced{abbreviation}}{Indicate a general abbreviation, such as `Comput.'}
  533 \txicmd{@acronym}{\ttbraced{acronym}}{Indicate an acronym written in all capital letters, such as `\acro{NASA}'.}
  534 \txicmd{@dfn}{\ttbraced{term}}{Indicate the introductory or defining use of a technical term.}
  535 \txicmd{@emph}{\ttbraced{text}}{Emphasize \var{text}, by using italics where possible, and enclosing in asterisks in Info.}
  536 \txicmd{@strong}{\ttbraced{text}}{Emphasize \var{text} even more strongly, by using bold where possible; still enclosed in asterisks in Info.}
  537 \txicmd{@sub}{\ttbraced{text}}{Set \var{text} as a subscript.}
  538 \txicmd{@sup}{\ttbraced{text}}{Set \var{text} as a superscript.}
  539 \txicmd{@var}{\ttbraced{metasyntactic-variable}}{Indicate a meta variable (a name that stands for another piece of text).}
  540 
  541 \subsection{Markup for literal text}
  542 
  543 \txicmd{@code}{\ttbraced{sample-code}}{Indicate an expression, a syntactically complete token, or a program name. Unquoted in Info output.}
  544 \txicmd{@command}{\ttbraced{command-name}}{Indicate a system command name, such as \code{ls}.}
  545 \txicmd{@email}{\ttbraced{address, \rmbrack[displayed-text]}}{Indicate an email address.}
  546 \txicmd{@env}{\ttbraced{environment-variable}}{Indicate an environment variable name, such as \code{PATH}.}
  547 \txicmd{@file}{\ttbraced{filename}}{Indicate the name of a file, buffer, node, directory, etc.}
  548 \txicmd{@indicateurl}{\ttbraced{url}}{Indicate a uniform resource locator, but without creating any hyperlink.}
  549 \txicmd{@kbd}{\ttbraced{keyboard-characters}}{Indicate characters of input to be typed by users.}
  550 \txicmd{@key}{\ttbraced{key-name}}{Indicate the name of a key on a keyboard.}
  551 \txicmd{@option}{\ttbraced{option-name}}{Indicate a command-line option, such as \code{-v} and \code{--help}.}
  552 \txicmd{@samp}{\ttbraced{text}}{Indicate a sequence of literal characters, in general. Quoted in Info output.}
  553 \txicmd{@verb}{\ttbraced{delimchar literal-text delimchar}}{Output \var{literal-text}, delimited by the single character \var{delimchar}, exactly as is, including any whitespace or Texinfo special characters. Example: \code{@verb\ttbraced{|@ @\rbracechar|}}.}
  554 
  555 \subsection{GUI sequences}
  556 
  557 \txicmd{@arrow}{\ttbraced{}}{Insert a right arrow glyph, $\rightarrow$.}
  558 \txicmd{@clicksequence}{\ttbraced{action \code{@click\ttbraced{}} \var{action} \dots}}{Represent a sequence of \acro{GUI} actions or clicks.}
  559 \txicmd{@click}{\ttbraced{}}{Represent a single `click' in a \code{@clicksequence}.}
  560 \txicmd{@clickstyle}{\code{@}cmd}{Execute \var{@cmd} for each \code{@click}; default is \code{@arrow}. Empty braces usually following \code{@\var{cmd}} are omitted here.}
  561 
  562 \subsection{Math}
  563 
  564 \txicmd{@math}{\ttbraced{math}}{Format the given math (inline); \bschar{} becomes an escape character, and all plain \TeX\ math is available.}
  565 \txicmd{@minus}{\ttbraced{}}{Insert a minus sign, `$-$'.}
  566 \txicmd{@\bschar}{}{Inside \code{@math}, insert a math backslash, $\backslash$.}
  567 \txicmd{@geq}{\ttbraced{}}{Insert a greater-than-or-equal sign, $\geq$.}
  568 \txicmd{@leq}{\ttbraced{}}{Insert a less-than-or-equal sign, $\leq$.}
  569 
  570 \subsection{Explicit font selection}
  571 
  572 \txicmd{@b}{\ttbraced{text}}{Set \var{text} in a bold font.}
  573 \txicmd{@i}{\ttbraced{text}}{Set \var{text} in an italic font.}
  574 \txicmd{@r}{\ttbraced{text}}{Set \var{text} in the regular roman font.}
  575 \txicmd{@sansserif}{\ttbraced{text}}{Set \var{text} in a sans serif font if possible.}
  576 \txicmd{@sc}{\ttbraced{text}}{Set \var{text} in a small caps font in printed output, and uppercase in Info.  No other font command has any effect in Info.}
  577 \txicmd{@slanted}{\ttbraced{text}}{Set \var{text} in a slanted (oblique) font if possible.}
  578 \txicmd{@t}{\ttbraced{text}}{Set \var{text} in a fixed-width, typewriter-like font.}
  579 
  580 
  581 \section{Block environments}
  582 
  583 `Environments' in Texinfo begin with \code{@\var{envname}} on a line of
  584 its own and continue through the following lines of input until the
  585 corresponding \code{@end \var{envname}} is seen.
  586 
  587 \txicmd{@cartouche}{}{Highlight a block of text by drawing a box with rounded corners around it. Pair with \code{@end cartouche}. No effect in Info.}
  588 \txicmd{@exdent}{line-of-text}{Output \var{line-of-text} without any indentation.}
  589 \txicmd{@indent}{}{Insert normal paragraph indentation.}
  590 \txicmd{@noindent}{}{Omit the normal indentation when starting a new paragraph; often used after environments.}
  591 
  592 \subsection{Normally-filled displays using regular text fonts}
  593 
  594 In these environments, the input is automatically rebroken into lines of
  595 output as usual.
  596 
  597 \txicmd{@quotation}{}{Fill text, indent on both left and right, retain
  598 normal text font.  Often used for quoting text.  Pair with \code{@end quotation}.}
  599 \txicmd{@smallquotation}{}{Like \code{@quotation}, but select a smaller (text) font where possible.  Pair with \code{@end quotation}.}
  600 \txicmd{@indentedblock}{}{Fill text, indent on left (but not right), retain normal text font.  Pair with \code{@end indentedblock}.}
  601 \txicmd{@smallindentedblock}{}{Like \code{@indentedblock}, but select a smaller (text) font where possible.  Pair with \code{@end smallindentedblock}.}
  602 \txicmd{@raggedright}{}{Leave right end ragged, but otherwise fill text; retain normal text font. Pair with \code{@end raggedright}.}
  603 
  604 \subsection{Line-for-line displays using regular text fonts}
  605 
  606 In these environments, each line of input is a line of output.
  607 
  608 \txicmd{@display}{}{Begin displayed text: do not fill, but indent text on left; retain normal text font. Pair with \code{@end display}.}
  609 \txicmd{@smalldisplay}{}{Like \code{@display}, but select a smaller (text) font where possible.  Pair with \code{@end smalldisplay}.}
  610 \txicmd{@format}{}{Begin formatted text: do not fill, retain normal margins and normal text font.  Pair with \code{@end format}.}
  611 \txicmd{@smallformat}{}{Like \code{@format}, but select a smaller (text) font where possible.  Pair with \code{@end smallformat}.}
  612 \txicmd{@flushleft}{}{Left justify lines, leaving the right end ragged: do not fill text, retain normal margins and normal text font. Pair with \code{@end flushleft}.}
  613 \txicmd{@flushright}{}{Right justify lines, leaving the left end ragged: do not fill text, retain normal margins and normal text font. Pair with \code{@end flushright}.}
  614 
  615 \subsection{Displays using fixed-width fonts}
  616 
  617 In these environments also, each line of input is a line of output.
  618 
  619 \txicmd{@example}{}{Begin an example. Indent text, do not fill, and select fixed-width font. Pair with \code{@end example}.}
  620 \txicmd{@smallexample}{}{Like \code{@example}, but where possible, print text in a smaller font. Pair with \code{@end smallexample}.}
  621 \txicmd{@lisp}{}{Like \code{@example}, but specifically for an example of Lisp code. Pair with \code{@end lisp}.}
  622 \txicmd{@smalllisp}{}{Begin an example specifically of Lisp code; same effects as \code{@smallexample}. Pair with \code{@end smalllisp}.}
  623 \txicmd{@verbatim}{}{Output the text of the environment exactly as is, without indentation. Pair with \code{@end verbatim}.}
  624 
  625 
  626 \section{Lists and tables}
  627 
  628 \txicmd{@itemize}{mark-command}{Begin an unordered list, using \code{@item} for each entry, which consist of indented paragraphs, with a mark such as \code{@bullet} inside the left margin at the beginning of each item. Pair with \code{@end itemize}.}
  629 \txicmd{@enumerate}{\rmbrack[number-or-letter]}{Begin a numbered list, using \code{@item} for each entry. Optionally, start list with \var{number-or-letter} and count from there; by default, number consecutively from `1'. Pair with \code{@end enumerate}.}
  630 \txicmd{@table}{formatting-command}{Begin a two-column table (description list), using \code{@item} for each entry. Write each first column entry on the same line as \code{@item}.  \var{formatting-command} is applied to each first column entry. Pair with \code{@end table}.}
  631 \txicmd{@ftable}{formatting-command}{Like \code{@table}, but automatically enter each first column entry in the function index.}
  632 \txicmd{@vtable}{formatting-command}{Like \code{@table}, but automatically enter each first column entry in the variable index.}
  633 \txicmd{@multitable}{column-width-spec}{Begin multi-column table; start rows with \code{@item} or \code{@headitem}. Pair with \code{@end multitable}.}
  634 \txicmd{@tab}{}{Separate columns in a row of a multitable.}
  635 \txicmd{@item}{}{Begin an item for the list and table commands.}
  636 \txicmd{@itemx}{}{Used only with \code{@table}.  Like \code{@item} but do not generate extra preceding vertical space.  When several items have the same description, use \code{@item} for the first and \code{@itemx} for the rest.}
  637 \txicmd{@headitem}{}{Used only for multitables.  Like \code{@item}, but indicates a heading row.}
  638 \txicmd{@headitemfont}{\ttbraced{text}}{Set \var{text} in the heading row font.}
  639 \txicmd{@asis}{text}{Prints \var{text} as-is; used as \var{formatting-command} for tables when no highlighting is desired.}
  640 
  641 
  642 \section{Floating displays}
  643 
  644 \txicmd{@float}{}{Environment enclosing material which can float. Pair with \code{@end float}.}
  645 \txicmd{@listoffloats}{}{Generate a list of floats for a given float type.}
  646 \txicmd{@caption}{}{Define the full caption for a \code{@float} anywhere in the float environment.}
  647 \txicmd{@shortcaption}{}{Define the short caption for a \code{@float}, used in the list of floats.}
  648 \txicmd{@image}{\ttbraced{filename, \rmbrack[width], \rmbrack[height], \rmbrack[alt], \rmbrack[ext]}}{Include graphics image in external \var{filename} scaled to the given width and/or height, using alt text and looking for \samp{\var{filename}.\var{ext}} first.  Can occur inline or by itself on the page.}
  649 
  650 \subsection{Footnotes}
  651 \txicmd{@footnote}{\ttbraced{text-of-footnote}}{Insert a footnote: \var{text-of-footnote} is printed at the bottom of the page by \TeX, while Info and others may format at either (by default) the end of the current node, or in a separate node.}
  652 \txicmd{@footnotestyle}{style}{Specify footnote style: \samp{end} or \samp{separate}.}
  653 
  654 
  655 \section{Indices}
  656 
  657 \txicmd{@cindex}{entry}{Add entry to the index of concepts.}
  658 \txicmd{@findex}{entry}{Add entry to the index of functions.}
  659 \txicmd{@kindex}{entry}{Add entry to the index of keys.}
  660 \txicmd{@pindex}{entry}{Add entry to the index of programs.}
  661 \txicmd{@tindex}{entry}{Add entry to the index of data types.}
  662 \txicmd{@vindex}{entry}{Add entry to the index of variables.}
  663 \txicmd{@defindex}{newidx}{Define a new index and its indexing command. Format entries as regular text.}
  664 \txicmd{@defcodeindex}{newidx}{Define a new index and its indexing command (namely, \code{@\var{newidx}index}). Format entries in this index with \code{@code}.}
  665 \txicmd{@syncodeindex}{from-index to-index}{Merge the contents of \var{from-index} into \code{to-index}, formatting the entries in \var{from-index} with \code{@code}.}
  666 \txicmd{@synindex}{from-index to-index}{Merge the contents of \var{from-index} into \var{to-index}; no special formatting.}
  667 \txicmd{@printindex}{index-name}{Generate an alphabetized index (using two columns in a printed manual).}
  668 \txicmd{@sortas}{\ttbraced{key}}{Specify a string by which to sort an 
  669 index entry.}
  670 
  671 
  672 \section{Insertions within a paragraph}
  673 
  674 \subsection{Characters special to Texinfo}
  675 
  676 \txicmd{@@}{, \code{@atchar\ttbraced{}}}{Insert an at sign, `@'.}
  677 \txicmd{@\lbracechar}{, \code{@lbracechar\ttbraced{}}}{Insert a left brace, `$\{$'.}
  678 \txicmd{@\rbracechar}{, \code{@rbracechar\ttbraced{}}}{Insert a right brace, `$\}$'.}
  679 \txicmd{@backslashchar}{\ttbraced{}}{Insert a typewriter backslash, {\tt\char`\\}.}
  680 \txicmd{@comma}{\ttbraced{}}{Insert a comma character; needed only when a literal comma would be an argument separator, as in \code{@xref}.}
  681 \txicmd{@hashchar}{\ttbraced{}}{Insert a hash character, \#; needed only when a literal hash would introduce a \code{\#line} directive.}
  682 \txicmd{@\var{whitespace}}{}{An \code{@} followed by a space, tab, or newline produces a normal, stretchable, interword space.}
  683 
  684 \subsection{Spacing refinements}
  685 
  686 \txicmd{@:}{}{Tell \TeX\  to refrain from inserting extra whitespace after an immediately preceding period, question mark, exclamation mark, or colon, as \TeX\  normally would.}
  687 \txicmd{@.}{}{Insert a period that ends a sentence; typically needed after an end-of-sentence capital letter.}
  688 \txicmd{@?}{}{Insert a question mark that ends a sentence.}
  689 \txicmd{@!}{}{Insert an exclamation point that ends a sentence.}
  690 \txicmd{@dmn}{\ttbraced{dimension}}{Format a unit of measure, as in `12\thinspace{}pt'. Causes \TeX\  to insert a thin space before \var{dimension}. No effect in Info.}
  691 
  692 \subsection{Accents}
  693 
  694 Braces are optional for the arguments to the accent commands, with the
  695 exception of \code{@tieaccent}.
  696 
  697 \txicmd{@"}{c}{Generate an umlaut, \"o.}
  698 \txicmd{@'}{c}{Generate an acute accent, \'o.}
  699 \txicmd{@,}{c}{Generate a cedilla accent, \c c.}
  700 \txicmd{@=}{c}{Generate a macron accent, \=o.}
  701 \txicmd{@^}{c}{Generate a circumflex (hat) accent, \^o.}
  702 \txicmd{@`}{c}{Generate a grave accent, \'o.}
  703 \txicmd{@\tildechar}{c}{Generate a tilde accent, \~o.}
  704 \txicmd{@dotaccent}{c}{Generate a dot (over) accent, \.o.}
  705 \txicmd{@H}{c}{Generate a long Hungarian umlaut accent, \H o.}
  706 \txicmd{@ogonek}{c}{Generate an ogonek diacritic, \ogonek{a}.}
  707 \txicmd{@ringaccent}{c}{Generate a ring accent, \accent23o.}
  708 \txicmd{@tieaccent}{\ttbraced{cc}}{Generate a tie-after accent, \t{oo}; argument must be given in braces.}
  709 \txicmd{@u}{c}{Generate a breve accent, \u{o}.}
  710 \txicmd{@ubaraccent}{c}{Generate an underbar accent, \b{o}.}
  711 \txicmd{@udotaccent}{c}{Generate an underdot accent, \d{o}.}
  712 \txicmd{@v}{c}{Generate a check (hacek) accent, \v{o}.}
  713 
  714 \subsection{Non-English characters}
  715 
  716 \txicmd{@AA\txicmdarg{\ttbraced{}}, @aa}{\ttbraced{}}{Generate uppercase \AA\  and lowercase \aa.}
  717 \txicmd{@AE\txicmdarg{\ttbraced{}}, @ae}{\ttbraced{}}{Generate uppercase \AE\ and lowercase \ae.}
  718 \txicmd{@DH\txicmdarg{\ttbraced{}}, @dh}{\ttbraced{}}{Generate uppercase \DH\ and lowercase \dh.}
  719 \txicmd{@L\txicmdarg{\ttbraced{}}, @l}{\ttbraced{}}{Generate uppercase \L\  and lowercase \l.}
  720 \txicmd{@O\txicmdarg{\ttbraced{}}, @o}{\ttbraced{}}{Generate uppercase \O\  and lowercase \o.}
  721 \txicmd{@OE\txicmdarg{\ttbraced{}}, @oe}{\ttbraced{}}{Generate uppercase \OE\  and lowercase \oe.}
  722 \txicmd{@TH\txicmdarg{\ttbraced{}}, @th}{\ttbraced{}}{Generate uppercase \TH\ and lowercase \th.}
  723 \txicmd{@dotless}{\ttbraced{\code{i|j}}}{Generate dotless \i\ and \j.}
  724 \txicmd{@exclamdown}{\ttbraced{}}{Generate an upside-down exclamation point, \raise.4ex\hbox{<}.}
  725 \txicmd{@ordf\txicmdarg{\ttbraced{}}, @ordm}{\ttbraced{}}{Generate \ordf\ and lowercase \ordm.}
  726 \txicmd{@questiondown}{\ttbraced{}}{Generate an upside-down question mark, \raise.4ex\hbox{?`}.}
  727 \txicmd{@ss}{\ttbraced{}}{Generate the German sharp-S (es-zet) letter, \ss.}
  728 
  729 \subsection{Other text characters and logos}
  730 
  731 \txicmd{@LaTeX}{\ttbraced{}}{Insert the \LaTeX\ logo.}
  732 \txicmd{@TeX}{\ttbraced{}}{Insert the \TeX\ logo.}
  733 \txicmd{@bullet}{\ttbraced{}}{Insert a large round dot, $\bullet$ (\samp{*} in Info).}
  734 \txicmd{@copyright}{\ttbraced{}}{Insert the copyright symbol, \copyright.}
  735 \txicmd{@dots}{\ttbraced{}}{Insert an ellipsis, `\dots'.}
  736 \txicmd{@enddots}{\ttbraced{}}{Insert an end-of-sentence ellipsis, `\dots' (more following space in \TeX.)}
  737 \txicmd{@euro}{\ttbraced{}}{Insert the Euro currency sign, \euro.}
  738 \txicmd{@guillemetleft\ttbraced{} @guillemetright\ttbraced{} @guillemotleft\ttbraced{} @guillemotright @guilsinglleft\ttbraced{} @guilsinglright\ttbraced{} @quotedblbase\ttbraced{} @quotedblleft @quotedblright\ttbraced{} @quoteleft\ttbraced{} @quoteright\ttbraced{} @quotesinglbase\ttbraced{}}{}{Insert various quotation marks: \guillemetleft\ \guillemetright\ \guillemotleft\ \guillemotright\ \guilsinglleft\ \guilsinglright\ \quotedblbase\ \quotedblleft\ \quotedblright\ \quoteleft\ \quoteright\ \quotesinglbase.}
  739 \txicmd{@pounds}{\ttbraced{}}{Insert the pounds sterling currency sign, {\it\$}.}
  740 \txicmd{@registeredsymbol}{\ttbraced{}}{Insert the registered symbol, \registeredsymbol.}
  741 \txicmd{@textdegree}{\ttbraced{}}{Insert the degree symbol, \raise.8ex\hbox{$\circ$}.}
  742 \txicmd{@today}{\ttbraced{}}{Insert the current date, in `1 Jan 2000' style.}
  743 \txicmd{@U}{\ttbraced{x}}{Insert Unicode character U+\var{x} (hex).}
  744 
  745 \subsection{Glyphs for code examples}
  746 
  747 \txicmd{@equiv}{\ttbraced{}}{Indicate equivalence of two forms, $\equiv$.}
  748 \txicmd{@error}{\ttbraced{}}{Indicate an error message, \error.}
  749 \txicmd{@expansion}{\ttbraced{}}{Indicate the result of a macro expansion, \expansion.}
  750 \txicmd{@point}{\ttbraced{}}{Indicate the position of point in a buffer, \point.}
  751 \txicmd{@print}{\ttbraced{}}{Indicate printed output, \print.}
  752 \txicmd{@result}{\ttbraced{}}{Indicate the result of an expression, \result.}
  753 
  754 
  755 \section{Making and preventing breaks}
  756 
  757 \txicmd{@*}{}{Force a line break.}
  758 \txicmd{@/}{}{Generates no output, but allows a line break.}
  759 \txicmd{@-}{}{Insert a discretionary hyphenation point.}
  760 \txicmd{@hyphenation}{\ttbraced{hy-phen-a-ted words}}{Explicitly define hyphenation points.}
  761 \txicmd{@tie}{\ttbraced{}}{Generate a normal interword space at which a line break is not allowed.}
  762 \txicmd{@w}{\ttbraced{text}}{Disallow line breaks within \var{text}.}
  763 \txicmd{@refill}{}{Does nothing (previously refilled and indented the preceding paragraph for Info).}
  764 
  765 \subsection{Vertical space}
  766 
  767 \txicmd{@group}{\dots\code{@end group}}{In \TeX\ output, disallow page breaks in enclosed text; ignored otherwise.}
  768 \txicmd{@need}{mils}{Start a new page in a printed manual if fewer than \var{mils} thousandths of an inch remain on the current page. Ignored in other formats.}
  769 \txicmd{@page}{}{Start a new page in a printed manual. Ignored in other formats.}
  770 \txicmd{@sp}{n}{Skip \var{n} blank lines.}
  771 \txicmd{@vskip}{amount}{In a printed manual, insert whitespace \var{amount}.  Ignored in other formats.}
  772 
  773 
  774 \section{Definition commands}
  775 
  776 The \code{...x} variant of each command is analogous to \code{@itemx},
  777 leaving no extra space above.  All definition commands must be written
  778 entirely on one line.  Multiword arguments must be enclosed in braces.
  779 Descriptive text follows, ended by \samp{@end \var{defcmdname}}.
  780 
  781 \subsection{Function-like definitions, untyped}
  782 
  783 \txicmdx{@deffn}{category name arguments}{Format a description for a function, interactive command, or similar entity that may take arguments. Its arguments are the \var{category} of entity being described, the \var{name} of this particular entity, and the entity's \var{arguments}, if any.}
  784 \txicmdx{@defun}{name arguments}{Format a description for a function; equivalent to \samp{@deffn Function \dots}.}
  785 \txicmdx{@defmac}{name arguments}{Format a description for a macro; equivalent to \samp{@deffn Macro \dots}.}
  786 \txicmdx{@defspec}{name arguments}{Format a description for a special form; equivalent to \samp{@deffn \ttbraced{Special Form} \dots}.}
  787 
  788 \subsection{Function-like definitions, typed}
  789 
  790 \txicmdx{@deftypefn}{category data-type name arguments}{Like \code{@deffn}, but for typed entities.}
  791 \txicmdx{@deftypefun}{data-type name arguments}{Like \code{@defun}, but for typed entities; equivalent to \samp{@deftypefn Function \dots}.}
  792 
  793 \subsection{Variable-like definitions, untyped}
  794 
  795 \txicmdx{@defvr}{category name}{Format a description for any kind of variable. Its arguments are the \var{category} of the entity and the \var{name} of this particular entity.}
  796 \txicmdx{@defvar}{name}{Format a description for a variable; equivalent to \samp{@defvr Variable \dots}.}
  797 \txicmdx{@defopt}{name}{Format a description for a user option; equivalent to \samp{@defvar \ttbraced{User Option} \dots}.}
  798 
  799 \subsection{Variable-like definitions, typed}
  800 
  801 \txicmdx{@deftypevr}{category data-type name}{Like \code{@defvr}, but for typed entities.}
  802 \txicmdx{@deftypevar}{data-type name}{Like \code{@defvar}, but for typed entities; equivalent to \samp{@deftypevr Variable \dots}.}
  803 
  804 \subsection{Type definitions}
  805 
  806 \txicmdx{@deftp}{category name attributes}{Format a description for a data type.  Its arguments are the \var{category}, the \var{name} of the type (e.g., \samp{int}), and then the \var{attributes} of objects of that type.}
  807 
  808 \subsection{Object-oriented entities, untyped}
  809 
  810 \txicmdx{@defcv}{category class name}{Format a description for a variable associated with a class in object-oriented programming.}
  811 \txicmdx{@defivar}{class name}{Format a description for an instance variable \var{name} in object-oriented programming; equivalent to  \samp{@defcv \ttbraced{Instance Variable of} \dots}.}
  812 \txicmdx{@defmethod}{class name arguments}{Format a description for method \var{name}; equivalent to \samp{@defop \ttbraced{Method on} \dots}.}
  813 \txicmdx{@defop}{category class name arguments}{Format a description for an operation in object-oriented programming.   Its arguments are the \var{category} of the variable, the \var{class} to which it belongs, its \var{name}, and any \var{arguments}.}
  814 
  815 \subsection{Object-oriented entities, typed}
  816 
  817 \txicmdx{@deftypecv}{category class datatype name}{Like \code{@defcv}, but for typed class variables.}
  818 \txicmdx{@deftypeivar}{class data-type name}{Like \code{@defivar}, but for typed instance variables.}
  819 \txicmdx{@deftypemethod}{class data-type name arguments}{Format a description for a typed method in object-oriented programming; equivalent to \samp{@deftypeop \ttbraced{Method on} \dots}.}
  820 \txicmdx{@deftypeop}{category class data-type name arguments}{Format a description for a typed operation in object-oriented programming.}
  821 
  822 
  823 \section{Conditionally (in)visible text}
  824 
  825 \txicmd{@comment}{comment}{Begin a comment in Texinfo. The rest of the line is not visible in any output.}
  826 \txicmd{@c}{comment}{Synonym for \code{@comment}.  \code{DEL} also starts a comment.}
  827 \txicmd{@ignore}{\dots\code{@end ignore}}{Text that will not appear in any output.}
  828 
  829 \subsection{Output formats}
  830 
  831 \txicmd{@ifdocbook}{\dots\code{@end ifdocbook}}{Texinfo text to appear only in Docbook output.}
  832 \txicmd{@ifhtml}{\dots\code{@end ifhtml}}{Text to appear only in \acro{HTML} output.}
  833 \txicmd{@ifinfo}{\dots\code{@end ifinfo}}{Text to appear in both Info and (for historical compatibility) plain text output.}
  834 \txicmd{@ifplaintext}{\dots\code{@end ifplaintext}}{Text to appear only in plain text output.}
  835 \txicmd{@iftex}{\dots\code{@end iftex}}{Text to appear only in the \TeX\ output.}
  836 \txicmd{@ifxml}{\dots\code{@end ifxml}}{Text to appear only in \acro{XML} output.}
  837 \txicmd{@ifnotdocbook @ifnothtml @ifnotplaintext @ifnottex @ifnotxml}{\dots\code{@end ifnot\var{format}}}{Begin text to be ignored in one output format but no others: \code{@ifnothtml} text is omitted from \acro{HTML} output, etc.}
  838 \txicmd{@ifnotinfo}{\dots\code{@end ifnotinfo}}{Like the other \code{@ifnot\dots} commands, but omit from plain text output as well as Info.}
  839 \txicmd{@inlinefmt}{\ttbraced{format, text}}{Include Texinfo \var{text} only in \var{format} output.}
  840 \txicmd{@inlinefmtifelse}{\ttbraced{format, then-text, else-text}}{Include either \var{then-text} or \var{else-text} according to whether \var{format} is output.}
  841 
  842 \subsection{Raw formatter text}
  843 
  844 \txicmd{@docbook}{\dots\code{@end docbook}}{Enter Docbook completely.}
  845 \txicmd{@html}{\dots\code{@end html}}{Enter \acro{HTML} completely.}
  846 \txicmd{@tex}{\dots\code{@end tex}}{Enter \TeX\  completely (e.g., \bschar\ becomes an escape character).}
  847 \txicmd{@xml}{\dots\code{@end xml}}{Enter \acro{XML} completely.}
  848 \txicmd{@inlineraw}{\ttbraced{format, text}}{Include raw \var{text} only in \var{format} output.}
  849 
  850 \subsection{Document variables}
  851 
  852 \txicmd{@set}{name \rmbrack[string]}{Define the Texinfo variable \var{name}, optionally to the value \var{string}.}
  853 \txicmd{@clear}{name}{Undefine \var{name}.}
  854 \txicmd{@value}{\ttbraced{name}}{Insert the value of \var{name}.}
  855 \txicmd{@ifset}{name \dots\code{@end ifset}}{If \var{name} is set, format enclosed text.}
  856 \txicmd{@ifclear}{name \dots\code{@end ifclear}}{If \var{name} is not set, format enclosed text.}
  857 \txicmd{@inlineifset}{\ttbraced{name, text}}{If \var{name} is set, format \var{text}.}
  858 \txicmd{@inlineifclear}{\ttbraced{name, text}}{If \var{name} is not set, format \var{text}.}
  859 
  860 \subsection{Testing for commands}
  861 
  862 \txicmd{@ifcommanddefined}{\var{cmd} \dots\code{@end ifcommanddefined}}{\linebreak Text to appear only if \code{@}\var{cmd} is defined \dots}
  863 \txicmd{@ifcommandnotdefined}{\var{cmd} \dots\code{@end ifcommandnotdefined}}{\linebreak\dots\ or not defined.}
  864 \txicmd{txicommandconditionals}{}{Texinfo variable predefined to true.}
  865 
  866 
  867 \section{Defining new Texinfo commands}
  868 
  869 \txicmd{@alias}{new\code{=}existing}{Make the command \code{@new} a synonym for the existing command \code{@existing}.}
  870 \txicmd{@macro}{macroname \ttbraced{\var{params}} \dots\code{@end macro}}{Define a new Texinfo command \code{@\var{macroname}}.}
  871 \txicmd{@unmacro}{macroname}{Undefine \code{@\var{macroname}} if it is defined.}
  872 \txicmd{@definfoenclose}{newcmd\code{,} before\code{,} after}{Can only be used within \code{@ifinfo}; create a new command that encloses its argument in the \var{before} and \var{after} strings.}
  873 
  874 
  875 \section{File inclusion}
  876 
  877 \txicmd{@include}{filename}{Read the contents of Texinfo source file \var{filename}.}
  878 \txicmd{@verbatiminclude}{filename}{Incorporate the contents of \var{filename} in the output, exactly as is (in the fixed-width font).}
  879 
  880 
  881 \section{Formatting and headers/footers for \TeX}
  882 
  883 \txicmd{@allowcodebreaks}{\code{true|false}}{Control breaks at \code{-} and \code{_} in \TeX; default true.}
  884 \txicmd{@finalout}{}{Omit large black rectangles at overfull lines in \TeX\ output.}
  885 \txicmd{@fonttextsize}{\code{10|11}}{Change size of main body font in \TeX.}
  886 
  887 \subsection{Paper sizes}
  888 
  889 The default paper size is \acro{US} letter-size, 8x11in.
  890 
  891 \txicmd{@smallbook}{}{Format for a 7x9.25in trim size.}
  892 \txicmd{@afourpaper, @afivepaper}{}{Format for A4 and A5 paper sizes.}
  893 \txicmd{@afourlatex}{}{Variant for A4 with more whitespace.}
  894 \txicmd{@afourwide}{}{Format for A4 in landscape.}
  895 \txicmd{@pagesizes}{\rmbrack[{width{\small][}, height}]}{Format for the explicitly given page dimensions, \var{width} by \var{height}.}
  896 
  897 \subsection{Page headers and footers}
  898 
  899 \def\footingheading#1#2{% #1=odd/even/every, #2=description
  900 \txicmd{@#1footing}{\rmbrack[left] \code{@|} \rmbrack[center] \code{@|} \rmbrack[right]}{}
  901 \vskip-.3\parskip
  902 \txicmd{@#1heading}{\rmbrack[left] \code{@|} \rmbrack[center] \code{@|} \rmbrack[right]}{\hfill Specify page footings resp.\ headings for #2.}
  903 \vskip+.1\parskip
  904 }
  905 
  906 \footingheading{odd}{odd-numbered (right-hand) pages}
  907 \footingheading{even}{even-numbered (left-hand) pages}
  908 \footingheading{every}{every page}
  909 
  910 \txicmd{@thischapter, @thischaptername, @thischapternum, @thisfile, @thispage, @thistitle}{}{These commands are only allowed in a heading or footing. They stand for, respectively, the number and name of the current chapter (in the format `Chapter~1: Title'), the current chapter name only (`Title'), the current chapter number only (`1'), the filename, the current page number, and the title of the document.}
  911 
  912 
  913 \section{Document preferences}
  914 
  915 It is usually best to omit any of these (merely preferential) settings
  916 from the Texinfo document, so users can easily override the defaults
  917 when processing the document.
  918 
  919 \txicmd{@codequoteundirected}{\code{on|off}}{Use undirected single quote for \code{'}; default off.}
  920 \txicmd{@codequotebacktick}{\code{on|off}}{Use backtick (standalone grave accent) for \code{`}; default off.}
  921 \txicmd{@deftypefnnewline}{\code{on|off}}{Put return type on a line by itself; default off.}
  922 \txicmd{@exampleindent}{indent}{Indent example-like environments by \var{indent} number of spaces (perhaps 0).}
  923 \txicmd{@firstparagraphindent}{\code{insert|none}}{Indent first paragraphs after section headings, or not.}
  924 \txicmd{@headings}{\code{on|off|single|double}}{Turn page headings on or off, specify single-sided or double-sided page headings for printing.}
  925 \txicmd{@kbdinputstyle}{\code{code|distinct|example}}{Specify font for \code{@kbd}: normal \code{@code} font, a distinct (slanted) typewriter font, or a distinct font only within \code{@example} and similar.}
  926 \txicmd{@paragraphindent}{indent}{Indent paragraphs by \var{indent} number of spaces (perhaps 0); preserve source file indentation if \var{indent} is the string \code{asis}.}
  927 \txicmd{@setchapternewpage}{\code{on|off|odd}}{Specify whether chapters start on new pages, and if so, whether on odd-numbered (right-hand) new pages; also set page headings accordingly.}
  928 \txicmd{@urefbreakstyle}{\code{after|before|none}}{Specify how \code{@uref} should break at special characters; default \code{after}.}
  929 
  930 
  931 \section{Ending a Texinfo document}
  932 
  933 \txicmd{@bye}{}{End reading the Texinfo source.  Any following text in the file is ignored.}
  934 
  935 \smallskip Finally, this meta-command doesn't fit anywhere else:
  936 \txicmd{@errormsg}{\ttbraced{msg}}{Report \var{msg} as an error.}
  937 
  938 
  939 
  940 \chapter{Reading Info files}
  941 
  942 There are two main Info readers: \code{M-x info} (\code{C-h i}) in GNU
  943 Emacs, and the standalone \code{info} program.  These basic keystrokes
  944 work in both.
  945 
  946 \begininfokeys %
  947 \infokey q           Quit Info altogether.\cr
  948 \infokey h           Invoke the Info tutorial.\cr
  949 
  950 \infokey Up          Move up one line.\cr
  951 \infokey Down        Move down one line.\cr
  952 \infokey DEL         Scroll backward one screenful.\cr
  953 \infokey SPC         Scroll forward one screenful.\cr
  954 \infokey Home,b      Go to the beginning of this node.\cr
  955 \infokey End         Go to the end of this node.\cr
  956 
  957 \infokey TAB         Skip to the next hypertext link.\cr
  958 \infokey RET         Follow the hypertext link under the cursor.\cr
  959 \infokey l           Go back to the last node seen in this window.\cr
  960 
  961 \infokey [           Go to the previous node in the document.\cr
  962 \infokey ]           Go to the next node in the document.\cr
  963 \infokey p           Go to the previous node on this level.\cr
  964 \infokey n           Go to the next node on this level.\cr
  965 \infokey u           Go up one level.\cr
  966 \infokey t           Go to the top node of this document.\cr
  967 \infokey d           Go to the main `directory' node.\cr
  968 
  969 \infokey 1...9       Pick the first...ninth item in this node's menu.\cr
  970 \infokey 0           Pick the last item in this node's menu.\cr
  971 \infokey m           Pick a menu item specified by name.\cr
  972 \infokey f           Follow a cross reference specified by name.\cr
  973 \infokey g           Go to a node specified by name.\cr
  974 
  975 \infokey s           Search forward for a specified string.\cr
  976 \infokey \lbracechar{}           Search for previous occurrence.\cr
  977 \infokey \rbracechar{}           Search for next occurrence.\cr
  978 \infokey i           Search for a specified string in the index, and\cr
  979 \infokey {}              select the node referenced by the first entry found.\cr
  980 \infokey I           Synthesize menu of matching index entries.\cr
  981 
  982 \infokey C-g         Cancel the current operation.\cr
  983 \endinfokeys
  984 
  985 The Texinfo manual is available via \code{info texinfo}\linebreak
  986 (and at \code{http://www.gnu.org/software/texinfo/manual}).
  987 
  988 \copyrightnotice
  989 \bye