1998-04-13 16:36  Ulrich Drepper  <drepper@cygnus.com>

	* manual/texinfo.texi: Updated from last version.
This commit is contained in:
Ulrich Drepper 1998-04-13 16:41:10 +00:00
parent 2b47435322
commit 40c0dc53b0
2 changed files with 100 additions and 62 deletions

View File

@ -1,3 +1,7 @@
1998-04-13 16:36 Ulrich Drepper <drepper@cygnus.com>
* manual/texinfo.texi: Updated from last version.
1998-04-13 14:52 Ulrich Drepper <drepper@cygnus.com>
* iconvdata/cns11643.c: New file.

View File

@ -1,5 +1,5 @@
% texinfo.tex -- TeX macros to handle Texinfo files.
% $Id: texinfo.tex,v 2.213 1998/03/04 17:13:03 drepper Exp $
% $Id: texinfo.tex,v 2.214 1998/04/13 16:40:45 drepper Exp $
%
% Copyright (C) 1985, 86, 88, 90, 91, 92, 93, 94, 95, 96, 97, 98
% Free Software Foundation, Inc.
@ -25,8 +25,12 @@
%
% Please try the latest version of texinfo.tex before submitting bug
% reports; you can get the latest version from:
% ftp://ftp.cs.umb.edu/pub/tex/texinfo.tex
% /home/gd/gnu/doc/texinfo.tex on the GNU machines.
% ftp://ftp.gnu.org/pub/gnu/texinfo.tex
% (and all GNU mirrors)
% ftp://tug.org/tex/texinfo.tex
% ftp://ctan.org/macros/texinfo/texinfo.tex
% (and all CTAN mirrors, finger ctan@tug.org for a list).
%
% Send bug reports to bug-texinfo@gnu.org.
% Please include a precise test case in each bug report,
@ -35,6 +39,18 @@
% Texinfo macros (with @macro) are *not* supported by texinfo.tex. You
% have to run makeinfo -E to expand macros first; the texi2dvi script
% does this.
%
% To process a Texinfo manual with TeX, it's most reliable to use the
% texi2dvi shell script that comes with the distribution. For simple
% manuals, you can get away with:
% tex foo.texi
% texindex foo.??
% tex foo.texi
% tex foo.texi
% dvips foo.dvi -o # or whatever, to process the dvi file.
% The extra runs of TeX get the cross-reference information correct.
% Sometimes one run after texindex suffices, and sometimes you need more
% than two; texi2dvi does it as many times as necessary.
% Make it possible to create a .fmt file just by loading this file:
@ -44,7 +60,7 @@
% This automatically updates the version number based on RCS.
\def\deftexinfoversion$#1: #2 ${\def\texinfoversion{#2}}
\deftexinfoversion$Revision: 2.213 $
\deftexinfoversion$Revision: 2.214 $
\message{Loading texinfo package [Version \texinfoversion]:}
% If in a .fmt file, print the version number
@ -70,17 +86,9 @@
\let\ptexstar=\*
\let\ptext=\t
% Be sure we're in horizontal mode when doing a tie, since we make space
% equivalent to this in @example-like environments. Otherwise, a space
% at the beginning of a line will start with \penalty -- and
% since \penalty is valid in vertical mode, we'd end up putting the
% penalty on the vertical list instead of in the new paragraph.
{\catcode`@ = 11
% Avoid using \@M directly, because that causes trouble
% if the definition is written into an index file.
\global\let\tiepenalty = \@M
\gdef\tie{\leavevmode\penalty\tiepenalty\ }
}
% We never want plain's outer \+ definition in Texinfo.
% For @tex, we can use \tabalign.
\let\+ = \relax
\message{Basics,}
@ -393,7 +401,7 @@
% @@ prints an @
% Kludge this until the fonts are right (grr).
\def\@{{\tt \char '100}}
\def\@{{\tt\char64}}
% This is turned off because it was never documented
% and you can use @w{...} around a quote to suppress ligatures.
@ -403,8 +411,8 @@
%\def\'{{'}}
% Used to generate quoted braces.
\def\mylbrace {{\tt \char '173}}
\def\myrbrace {{\tt \char '175}}
\def\mylbrace {{\tt\char123}}
\def\myrbrace {{\tt\char125}}
\let\{=\mylbrace
\let\}=\myrbrace
\begingroup
@ -441,6 +449,18 @@
\fi\fi
}
% Be sure we're in horizontal mode when doing a tie, since we make space
% equivalent to this in @example-like environments. Otherwise, a space
% at the beginning of a line will start with \penalty -- and
% since \penalty is valid in vertical mode, we'd end up putting the
% penalty on the vertical list instead of in the new paragraph.
{\catcode`@ = 11
% Avoid using \@M directly, because that causes trouble
% if the definition is written into an index file.
\global\let\tiepenalty = \@M
\gdef\tie{\leavevmode\penalty\tiepenalty\ }
}
% @: forces normal size whitespace following.
\def\:{\spacefactor=1000 }
@ -772,6 +792,7 @@ where each line of input produces a line of output.}
% Also ignore @macro ... @end macro. The user must run texi2dvi,
% which runs makeinfo to do macro expansion. Ignore @unmacro, too.
\def\macro{\doignore{macro}}
\def\macrocsname{macro}
\let\unmacro = \comment
@ -786,7 +807,9 @@ where each line of input produces a line of output.}
\ignoresections
%
% Define a command to swallow text until we reach `@end #1'.
\long\def\doignoretext##1\end #1{\enddoignore}%
% This @ is a catcode 12 token (that is the normal catcode of @ in
% this texinfo.tex file). We change the catcode of @ below to match.
\long\def\doignoretext##1@end #1{\enddoignore}%
%
% Make sure that spaces turn into tokens that match what \doignoretext wants.
\catcode32 = 10
@ -795,6 +818,22 @@ where each line of input produces a line of output.}
\catcode`\{ = 9
\catcode`\} = 9
%
% We must not have @c interpreted as a control sequence.
\catcode`\@ = 12
%
% Make the letter c a comment character so that the rest of the line
% will be ignored. This way, the document can have (for example)
% @c @end ifinfo
% and the @end ifinfo will be properly ignored.
% (We've just changed @ to catcode 12.)
%
% But we can't do this if #1 is `macro', since that actually contains a c.
% Happily, none of the other conditionals have the letter `c' in their names!
\def\temp{#1}%
\ifx\temp\macrocsname \else
\catcode`\c = 14
\fi
%
% And now expand that command.
\doignoretext
}
@ -1702,18 +1741,6 @@ July\or August\or September\or October\or November\or December\fi
\message{tables,}
% @tabs -- simple alignment
% These don't work. For one thing, \+ is defined as outer.
% So these macros cannot even be defined.
%\def\tabs{\parsearg\tabszzz}
%\def\tabszzz #1{\settabs\+#1\cr}
%\def\tabline{\parsearg\tablinezzz}
%\def\tablinezzz #1{\+#1\cr}
%\def\&{&}
% Tables -- @table, @ftable, @vtable, @item(x), @kitem(x), @xitem(x).
% default indentation of table text
@ -2260,20 +2287,24 @@ width0pt\relax} \fi
% @synindex foo bar makes index foo feed into index bar.
% Do this instead of @defindex foo if you don't want it as a separate index.
\def\synindex #1 #2 {%
\expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname
\expandafter\let\csname#1indfile\endcsname=\synindexfoo
\expandafter\xdef\csname#1index\endcsname{% % Define \xxxindex
\noexpand\doindex {#2}}%
% The \closeout helps reduce unnecessary open files; the limit on the
% Acorn RISC OS is a mere 16 files.
\def\synindex#1 #2 {%
\expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname
\expandafter\closeout\csname#1indfile\endcsname
\expandafter\let\csname#1indfile\endcsname=\synindexfoo
\expandafter\xdef\csname#1index\endcsname{% define \xxxindex
\noexpand\doindex{#2}}%
}
% @syncodeindex foo bar similar, but put all entries made for index foo
% inside @code.
\def\syncodeindex #1 #2 {%
\expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname
\expandafter\let\csname#1indfile\endcsname=\synindexfoo
\expandafter\xdef\csname#1index\endcsname{% % Define \xxxindex
\noexpand\docodeindex {#2}}%
\def\syncodeindex#1 #2 {%
\expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname
\expandafter\closeout\csname#1indfile\endcsname
\expandafter\let\csname#1indfile\endcsname=\synindexfoo
\expandafter\xdef\csname#1index\endcsname{% define \xxxindex
\noexpand\docodeindex{#2}}%
}
% Define \doindex, the driver for all \fooindex macros.
@ -3553,6 +3584,7 @@ width0pt\relax} \fi
\let\!=\ptexexclam
\let\i=\ptexi
\let\{=\ptexlbrace
\let\+=\tabalign
\let\}=\ptexrbrace
\let\*=\ptexstar
\let\t=\ptext
@ -3604,8 +3636,8 @@ width0pt\relax} \fi
% \nonarrowing is a flag. If "set", @lisp etc don't narrow margins.
\let\nonarrowing=\relax
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \cartouche: draw rectangle w/rounded corners around argument
% @cartouche ... @end cartouche: draw rectangle w/rounded corners around
% environment contents.
\font\circle=lcircle10
\newdimen\circthick
\newdimen\cartouter\newdimen\cartinner
@ -3632,9 +3664,9 @@ width0pt\relax} \fi
\cartinner=\hsize \advance\cartinner by-\lskip
\advance\cartinner by-\rskip
\cartouter=\hsize
\advance\cartouter by 18pt % allow for 3pt kerns on either
\advance\cartouter by 18.4pt % allow for 3pt kerns on either
% side, and for 6pt waste from
% each corner char
% each corner char, and rule thickness
\normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip
% Flag to tell @lisp, etc., not to narrow margin.
\let\nonarrowing=\comment
@ -4270,18 +4302,17 @@ width0pt\relax} \fi
\message{cross reference,}
% Define cross-reference macros
\newwrite \auxfile
\newwrite\auxfile
\newif\ifhavexrefs % True if xref values are known.
\newif\ifwarnedxrefs % True if we warned once that they aren't known.
% @inforef is simple.
% @inforef is relatively simple.
\def\inforef #1{\inforefzzz #1,,,,**}
\def\inforefzzz #1,#2,#3,#4**{\putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}},
node \samp{\ignorespaces#1{}}}
% \setref{foo} defines a cross-reference point named foo.
% @setref{foo} defines a cross-reference point named foo.
\def\setref#1{%
\dosetq{#1-title}{Ytitle}%
@ -4349,7 +4380,7 @@ width0pt\relax} \fi
% into the usual \leavevmode...\vrule stuff for purposes of
% printing. So we \turnoffactive for the \refx-snt, back on for the
% printing, back off for the \refx-pg.
{\turnoffactive \refx{#1-snt}{}}%
{\normalturnoffactive \refx{#1-snt}{}}%
\space [\printednodename],\space
\turnoffactive \putwordpage\tie\refx{#1-pg}{}%
\fi
@ -4357,11 +4388,15 @@ width0pt\relax} \fi
% \dosetq is the interface for calls from other macros
% Use \turnoffactive so that punctuation chars such as underscore
% work in node names.
\def\dosetq #1#2{{\let\folio=0 \turnoffactive
\edef\next{\write\auxfile{\internalsetq {#1}{#2}}}%
\next}}
% Use \normalturnoffactive so that punctuation chars such as underscore
% and backslash work in node names. (\turnoffactive doesn't do \.)
\def\dosetq#1#2{%
{\let\folio=0
\normalturnoffactive
\edef\next{\write\auxfile{\internalsetq{#1}{#2}}}%
\next
}%
}
% \internalsetq {foo}{page} expands into
% CHARACTERS 'xrdef {foo}{...expansion of \Ypage...}
@ -4492,8 +4527,7 @@ width0pt\relax} \fi
\catcode`\$=\other
\catcode`\#=\other
\catcode`\&=\other
% `\+ does not work, so use 43.
\catcode43=\other
\catcode`+=\other % avoid \+ for paranoia even though we've turned it off
% Make the characters 128-255 be printing characters
{%
\count 1=128
@ -4864,10 +4898,10 @@ width0pt\relax} \fi
% use math or other variants that look better in normal text.
\catcode`\"=\active
\def\activedoublequote{{\tt \char '042}}
\def\activedoublequote{{\tt\char34}}
\let"=\activedoublequote
\catcode`\~=\active
\def~{{\tt \char '176}}
\def~{{\tt\char126}}
\chardef\hat=`\^
\catcode`\^=\active
\def^{{\tt \hat}}
@ -4878,7 +4912,7 @@ width0pt\relax} \fi
\def\_{\leavevmode \kern.06em \vbox{\hrule width.3em height.1ex}}
\catcode`\|=\active
\def|{{\tt \char '174}}
\def|{{\tt\char124}}
\chardef \less=`\<
\catcode`\<=\active
\def<{{\tt \less}}
@ -4965,8 +4999,8 @@ width0pt\relax} \fi
@gdef@fixbackslash{@ifx\@eatinput @let\ = @normalbackslash @fi
@catcode`+=@active @catcode`@_=@active}
%% These look ok in all fonts, so just make them not special. The @rm below
%% makes sure that the current font starts out as the newly loaded cmr10
% These look ok in all fonts, so just make them not special. The @rm below
% makes sure that the current font starts out as the newly loaded cmr10
@catcode`@$=@other @catcode`@%=@other @catcode`@&=@other @catcode`@#=@other
@textfonts