mirror of
https://github.com/coreutils/coreutils.git
synced 2024-12-14 04:18:48 +08:00
.
This commit is contained in:
parent
b998bbef74
commit
d8ab1cdcfb
@ -3,7 +3,7 @@
|
||||
% Load plain if necessary, i.e., if running under initex.
|
||||
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
|
||||
%
|
||||
\def\texinfoversion{2003-01-23.10}
|
||||
\def\texinfoversion{2003-01-24.17}
|
||||
%
|
||||
% Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
|
||||
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
|
||||
@ -1365,7 +1365,25 @@ where each line of input produces a line of output.}
|
||||
\let\tensf=\smallersf \let\teni=\smalleri \let\tensy=\smallersy
|
||||
\let\tenttsl=\smallerttsl
|
||||
\resetmathfonts \setleading{9.5pt}}
|
||||
\let\smallexamplefonts = \smallerfonts
|
||||
|
||||
% Set the fonts to use with the @small... environments.
|
||||
\let\smallexamplefonts = \smallfonts
|
||||
|
||||
% About \smallexamplefonts. If we use \smallfonts (9pt), @smallexample
|
||||
% can fit this many characters:
|
||||
% 8.5x11=86 smallbook=72 a4=90 a5=69
|
||||
% If we use \smallerfonts (8pt), then we can fit this many characters:
|
||||
% 8.5x11=90+ smallbook=80 a4=90+ a5=77
|
||||
% For me, subjectively, the few extra characters that fit aren't worth
|
||||
% the additional smallness of 8pt. So I'm making the default 9pt.
|
||||
%
|
||||
% By the way, for comparison, here's what fits with @example (10pt):
|
||||
% 8.5x11=71 smallbook=60 a4=75 a5=58
|
||||
%
|
||||
% I wish we used A4 paper on this side of the Atlantic.
|
||||
%
|
||||
% --karl, 24jan03.
|
||||
|
||||
|
||||
% Set up the default fonts, so we can use them for creating boxes.
|
||||
%
|
||||
@ -3110,13 +3128,6 @@ width0pt\relax} \fi
|
||||
\let\w=\asis
|
||||
}
|
||||
|
||||
% To define \realbackslash, we must make \ not be an escape.
|
||||
% We must first make another character (@) an escape
|
||||
% so we do not become unable to do a definition.
|
||||
|
||||
{\catcode`\@=0 \catcode`\\=\other
|
||||
@gdef@realbackslash{\}}
|
||||
|
||||
\let\indexbackslash=0 %overridden during \printindex.
|
||||
\let\SETmarginindex=\relax % put index entries in margin (undocumented)?
|
||||
|
||||
@ -4514,27 +4525,16 @@ width0pt\relax} \fi
|
||||
% @example: Same as @lisp.
|
||||
\def\example{\begingroup \def\Eexample{\nonfillfinish\endgroup}\lisp}
|
||||
|
||||
% @small... is usually equivalent to the non-small (@smallbook
|
||||
% redefines). We must call \example (or whatever) last in the
|
||||
% definition, since it reads the return following the @example (or
|
||||
% whatever) command.
|
||||
%
|
||||
% This actually allows (for example) @end display inside an
|
||||
% @smalldisplay. Too bad, but makeinfo will catch the error anyway.
|
||||
%
|
||||
\def\smalldisplay{\begingroup\def\Esmalldisplay{\nonfillfinish\endgroup}\display}
|
||||
\def\smallexample{\begingroup\def\Esmallexample{\nonfillfinish\endgroup}\lisp}
|
||||
\def\smallformat{\begingroup\def\Esmallformat{\nonfillfinish\endgroup}\format}
|
||||
\def\smalllisp{\begingroup\def\Esmalllisp{\nonfillfinish\endgroup}\lisp}
|
||||
|
||||
% Real @smallexample and @smalllisp (when @smallbook): use smaller fonts.
|
||||
% @smallexample and @smalllisp: use smaller fonts.
|
||||
% Originally contributed by Pavel@xerox.
|
||||
\def\smalllispx{\begingroup
|
||||
\def\smalllisp{\begingroup
|
||||
\def\Esmalllisp{\nonfillfinish\endgroup}%
|
||||
\def\Esmallexample{\nonfillfinish\endgroup}%
|
||||
\smallexamplefonts
|
||||
\lisp
|
||||
}
|
||||
\let\smallexample = \smalllisp
|
||||
|
||||
|
||||
% @display: same as @lisp except keep current font.
|
||||
%
|
||||
@ -4544,9 +4544,9 @@ width0pt\relax} \fi
|
||||
\gobble
|
||||
}
|
||||
%
|
||||
% @smalldisplay (when @smallbook): @display plus smaller fonts.
|
||||
% @smalldisplay: @display plus smaller fonts.
|
||||
%
|
||||
\def\smalldisplayx{\begingroup
|
||||
\def\smalldisplay{\begingroup
|
||||
\def\Esmalldisplay{\nonfillfinish\endgroup}%
|
||||
\smallexamplefonts \rm
|
||||
\display
|
||||
@ -4561,9 +4561,9 @@ width0pt\relax} \fi
|
||||
\gobble
|
||||
}
|
||||
%
|
||||
% @smallformat (when @smallbook): @format plus smaller fonts.
|
||||
% @smallformat: @format plus smaller fonts.
|
||||
%
|
||||
\def\smallformatx{\begingroup
|
||||
\def\smallformat{\begingroup
|
||||
\def\Esmallformat{\nonfillfinish\endgroup}%
|
||||
\smallexamplefonts \rm
|
||||
\format
|
||||
@ -5747,11 +5747,13 @@ width0pt\relax} \fi
|
||||
\gdef\restoresf{\relax \ifhmode \spacefactor=\savesfregister \fi}
|
||||
\gdef\anchor#1{\savesf \setref{#1}{Ynothing}\restoresf \ignorespaces}
|
||||
|
||||
% \setref{NAME}{SNT} defines a cross-reference point NAME, namely
|
||||
% NAME-title, NAME-pg, and NAME-SNT. Called from \foonoderef. We have
|
||||
% to set \indexdummies so commands such as @code in a section title
|
||||
% aren't expanded. It would be nicer not to expand the titles in the
|
||||
% first place, but there's so many layers that that is hard to do.
|
||||
% \setref{NAME}{SNT} defines a cross-reference point NAME (a node or an
|
||||
% anchor), namely NAME-title (the corresponding @chapter name), NAME-pg
|
||||
% (the page number), and NAME-snt (section number). Called from
|
||||
% \foonoderef. We have to set \indexdummies so commands such as @code
|
||||
% in a section title aren't expanded. It would be nicer not to expand
|
||||
% the titles in the first place, but there's so many layers that that is
|
||||
% hard to do.
|
||||
%
|
||||
\def\setref#1#2{{%
|
||||
\indexdummies
|
||||
@ -5807,7 +5809,7 @@ width0pt\relax} \fi
|
||||
\ifpdf
|
||||
\leavevmode
|
||||
\getfilename{#4}%
|
||||
{\normalturnoffactive
|
||||
{\turnoffactive \otherbackslash
|
||||
\ifnum\filenamelength>0
|
||||
\startlink attr{/Border [0 0 0]}%
|
||||
goto file{\the\filename.pdf} name{#1}%
|
||||
@ -5827,7 +5829,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.
|
||||
{\normalturnoffactive
|
||||
{\normalturnoffactive \otherbackslash
|
||||
% Only output a following space if the -snt ref is nonempty; for
|
||||
% @unnumbered and @anchor, it won't be.
|
||||
\setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}%
|
||||
@ -5836,58 +5838,56 @@ width0pt\relax} \fi
|
||||
% [mynode],
|
||||
[\printednodename],\space
|
||||
% page 3
|
||||
\turnoffactive \putwordpage\tie\refx{#1-pg}{}%
|
||||
\turnoffactive \otherbackslash \putwordpage\tie\refx{#1-pg}{}%
|
||||
\fi
|
||||
\endlink
|
||||
\endgroup}
|
||||
|
||||
% \dosetq is the interface for calls from other macros
|
||||
|
||||
% Use \normalturnoffactive so that punctuation chars such as underscore
|
||||
% and backslash work in node names. (\turnoffactive doesn't do \.)
|
||||
% Use \turnoffactive so that punctuation chars such as underscore
|
||||
% and backslash work in node names.
|
||||
\def\dosetq#1#2{%
|
||||
{\let\folio=0%
|
||||
\normalturnoffactive
|
||||
\turnoffactive
|
||||
\edef\next{\write\auxfile{\internalsetq{#1}{#2}}}%
|
||||
\iflinks
|
||||
\next
|
||||
\fi
|
||||
\iflinks \next \fi
|
||||
}%
|
||||
}
|
||||
|
||||
% \internalsetq {foo}{page} expands into
|
||||
% CHARACTERS 'xrdef {foo}{...expansion of \Ypage...}
|
||||
% When the aux file is read, ' is the escape character
|
||||
|
||||
\def\internalsetq #1#2{'xrdef {#1}{\csname #2\endcsname}}
|
||||
|
||||
% Things to be expanded by \internalsetq
|
||||
% \internalsetq{foo}{page} expands into
|
||||
% CHARACTERS @xrdef{foo}{...expansion of \Ypage...}
|
||||
\def\internalsetq#1#2{@xrdef{#1}{\csname #2\endcsname}}
|
||||
|
||||
% Things to be expanded by \internalsetq.
|
||||
%
|
||||
\def\Ypagenumber{\folio}
|
||||
|
||||
\def\Ytitle{\thissection}
|
||||
|
||||
\def\Ynothing{}
|
||||
|
||||
\def\Ysectionnumberandtype{%
|
||||
\ifnum\secno=0 \putwordChapter\xreftie\the\chapno %
|
||||
\else \ifnum \subsecno=0 \putwordSection\xreftie\the\chapno.\the\secno %
|
||||
\else \ifnum \subsubsecno=0 %
|
||||
\putwordSection\xreftie\the\chapno.\the\secno.\the\subsecno %
|
||||
\else %
|
||||
\putwordSection\xreftie\the\chapno.\the\secno.\the\subsecno.\the\subsubsecno %
|
||||
\fi \fi \fi }
|
||||
\ifnum\secno=0
|
||||
\putwordChapter@tie \the\chapno
|
||||
\else \ifnum\subsecno=0
|
||||
\putwordSection@tie \the\chapno.\the\secno
|
||||
\else \ifnum\subsubsecno=0
|
||||
\putwordSection@tie \the\chapno.\the\secno.\the\subsecno
|
||||
\else
|
||||
\putwordSection@tie \the\chapno.\the\secno.\the\subsecno.\the\subsubsecno
|
||||
\fi\fi\fi
|
||||
}
|
||||
|
||||
\def\Yappendixletterandtype{%
|
||||
\ifnum\secno=0 \putwordAppendix\xreftie'char\the\appendixno{}%
|
||||
\else \ifnum \subsecno=0 \putwordSection\xreftie'char\the\appendixno.\the\secno %
|
||||
\else \ifnum \subsubsecno=0 %
|
||||
\putwordSection\xreftie'char\the\appendixno.\the\secno.\the\subsecno %
|
||||
\else %
|
||||
\putwordSection\xreftie'char\the\appendixno.\the\secno.\the\subsecno.\the\subsubsecno %
|
||||
\fi \fi \fi }
|
||||
|
||||
\gdef\xreftie{'tie}
|
||||
\ifnum\secno=0
|
||||
\putwordAppendix@tie @char\the\appendixno{}%
|
||||
\else \ifnum\subsecno=0
|
||||
\putwordSection@tie @char\the\appendixno.\the\secno
|
||||
\else \ifnum\subsubsecno=0
|
||||
\putwordSection@tie @char\the\appendixno.\the\secno.\the\subsecno
|
||||
\else
|
||||
\putwordSection@tie
|
||||
@char\the\appendixno.\the\secno.\the\subsecno.\the\subsubsecno
|
||||
\fi\fi\fi
|
||||
}
|
||||
|
||||
% Use TeX 3.0's \inputlineno to get the line number, for better error
|
||||
% messages, but if we're using an old version of TeX, don't do anything.
|
||||
@ -5900,10 +5900,11 @@ width0pt\relax} \fi
|
||||
|
||||
% Define \refx{NAME}{SUFFIX} to reference a cross-reference string named NAME.
|
||||
% If its value is nonempty, SUFFIX is output afterward.
|
||||
|
||||
%
|
||||
\def\refx#1#2{%
|
||||
{%
|
||||
\indexdummies
|
||||
\indexnofonts
|
||||
\otherbackslash
|
||||
\expandafter\global\expandafter\let\expandafter\thisrefX
|
||||
\csname X#1\endcsname
|
||||
}%
|
||||
@ -5929,12 +5930,7 @@ width0pt\relax} \fi
|
||||
|
||||
% This is the macro invoked by entries in the aux file.
|
||||
%
|
||||
\def\xrdef#1{\begingroup
|
||||
% Reenable \ as an escape while reading the second argument.
|
||||
\catcode`\\ = 0
|
||||
\afterassignment\endgroup
|
||||
\expandafter\gdef\csname X#1\endcsname
|
||||
}
|
||||
\def\xrdef#1{\expandafter\gdef\csname X#1\endcsname}
|
||||
|
||||
% Read the last existing aux file, if any. No error if none exists.
|
||||
\def\readauxfile{\begingroup
|
||||
@ -5965,9 +5961,7 @@ width0pt\relax} \fi
|
||||
\catcode`\^^]=\other
|
||||
\catcode`\^^^=\other
|
||||
\catcode`\^^_=\other
|
||||
\catcode`\@=\other
|
||||
\catcode`\^=\other
|
||||
% It was suggested to define this as 7, which would allow ^^e4 etc.
|
||||
% It was suggested to set the catcode of ^ to 7, which would allow ^^e4 etc.
|
||||
% in xref tags, i.e., node names. But since ^^e4 notation isn't
|
||||
% supported in the main text, it doesn't seem desirable. Furthermore,
|
||||
% that is not enough: for node names that actually contain a ^
|
||||
@ -5980,6 +5974,9 @@ width0pt\relax} \fi
|
||||
% \def\auxhat{\def^{'hat }}% extra space so ok if followed by letter
|
||||
% and then to call \auxhat in \setq.
|
||||
%
|
||||
\catcode`\^=\other
|
||||
%
|
||||
% Special characters. Should be turned off anyway, but...
|
||||
\catcode`\~=\other
|
||||
\catcode`\[=\other
|
||||
\catcode`\]=\other
|
||||
@ -5991,7 +5988,9 @@ width0pt\relax} \fi
|
||||
\catcode`\$=\other
|
||||
\catcode`\#=\other
|
||||
\catcode`\&=\other
|
||||
\catcode`\%=\other
|
||||
\catcode`+=\other % avoid \+ for paranoia even though we've turned it off
|
||||
%
|
||||
% Make the characters 128-255 be printing characters
|
||||
{%
|
||||
\count 1=128
|
||||
@ -6001,17 +6000,18 @@ width0pt\relax} \fi
|
||||
\ifnum \count 1<256 \loop \fi
|
||||
}%
|
||||
}%
|
||||
% The aux file uses ' as the escape (for now).
|
||||
%
|
||||
% Turn off \ as an escape so we do not lose on
|
||||
% entries which were dumped with control sequences in their names.
|
||||
% For example, 'xrdef {$\leq $-fun}{page ...} made by @defun ^^
|
||||
% For example, @xrdef{$\leq $-fun}{page ...} made by @defun ^^
|
||||
% Reference to such entries still does not work the way one would wish,
|
||||
% but at least they do not bomb out when the aux file is read in.
|
||||
\catcode`\\=\other
|
||||
%
|
||||
% @ is our escape character in .aux files.
|
||||
\catcode`\{=1
|
||||
\catcode`\}=2
|
||||
\catcode`\%=\other
|
||||
\catcode`\'=0
|
||||
\catcode`\\=\other
|
||||
\catcode`\@=0
|
||||
%
|
||||
\openin 1 \jobname.aux
|
||||
\ifeof 1 \else
|
||||
@ -6314,15 +6314,6 @@ should work if nowhere else does.}
|
||||
\setemergencystretch
|
||||
}
|
||||
|
||||
% Use `small' versions.
|
||||
%
|
||||
\def\smallenvironments{%
|
||||
\let\smalldisplay = \smalldisplayx
|
||||
\let\smallexample = \smalllispx
|
||||
\let\smallformat = \smallformatx
|
||||
\let\smalllisp = \smalllispx
|
||||
}
|
||||
|
||||
% @letterpaper (the default).
|
||||
\def\letterpaper{{\globaldefs = 1
|
||||
\parskip = 3pt plus 2pt minus 1pt
|
||||
@ -6350,7 +6341,6 @@ should work if nowhere else does.}
|
||||
\hfuzz = 1pt
|
||||
\contentsrightmargin = 0pt
|
||||
\defbodyindent = .5cm
|
||||
\smallenvironments
|
||||
}}
|
||||
|
||||
% Use @afourpaper to print on European A4 paper.
|
||||
@ -6397,8 +6387,6 @@ should work if nowhere else does.}
|
||||
\contentsrightmargin = 0pt
|
||||
\defbodyindent = 2mm
|
||||
\tableindent = 12mm
|
||||
%
|
||||
\smallenvironments
|
||||
}}
|
||||
|
||||
% A specific text layout, 24x15cm overall, intended for A4 paper.
|
||||
@ -6539,14 +6527,20 @@ should work if nowhere else does.}
|
||||
|
||||
\catcode`\@=0
|
||||
|
||||
% \rawbackslashxx output one backslash character in current font
|
||||
% \rawbackslashxx outputs one backslash character in current font,
|
||||
% as in \char`\\.
|
||||
\global\chardef\rawbackslashxx=`\\
|
||||
%{\catcode`\\=\other
|
||||
%@gdef@rawbackslashxx{\}}
|
||||
|
||||
% \rawbackslash redefines \ as input to do \rawbackslashxx.
|
||||
% \rawbackslash defines an active \ to do \rawbackslashxx.
|
||||
% \otherbackslash defines an active \ to be a literal `\' character with
|
||||
% catcode other.
|
||||
{\catcode`\\=\active
|
||||
@gdef@rawbackslash{@let\=@rawbackslashxx }}
|
||||
@gdef@rawbackslash{@let\=@rawbackslashxx}
|
||||
@gdef@otherbackslash{@let\=@realbackslash}
|
||||
}
|
||||
|
||||
% \realbackslash is an actual character `\' with catcode other.
|
||||
{\catcode`\\=\other @gdef@realbackslash{\}}
|
||||
|
||||
% \normalbackslash outputs one backslash in fixed width font.
|
||||
\def\normalbackslash{{\tt\rawbackslashxx}}
|
||||
@ -6555,18 +6549,23 @@ should work if nowhere else does.}
|
||||
|
||||
% Used sometimes to turn off (effectively) the active characters
|
||||
% even after parsing them.
|
||||
@def@turnoffactive{@let"=@normaldoublequote
|
||||
@let\=@realbackslash
|
||||
@let~=@normaltilde
|
||||
@let^=@normalcaret
|
||||
@let_=@normalunderscore
|
||||
@let|=@normalverticalbar
|
||||
@let<=@normalless
|
||||
@let>=@normalgreater
|
||||
@let+=@normalplus
|
||||
@let$=@normaldollar}%$ font-lock fix
|
||||
@def@turnoffactive{%
|
||||
@let"=@normaldoublequote
|
||||
@let\=@realbackslash
|
||||
@let~=@normaltilde
|
||||
@let^=@normalcaret
|
||||
@let_=@normalunderscore
|
||||
@let|=@normalverticalbar
|
||||
@let<=@normalless
|
||||
@let>=@normalgreater
|
||||
@let+=@normalplus
|
||||
@let$=@normaldollar %$ font-lock fix
|
||||
}
|
||||
|
||||
% Same as @turnoffactive except for \.
|
||||
% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of
|
||||
% the literal character `\'. (Thus, \ is not expandable when this is in
|
||||
% effect.)
|
||||
%
|
||||
@def@normalturnoffactive{@turnoffactive @let\=@normalbackslash}
|
||||
|
||||
% Make _ and + \other characters, temporarily.
|
||||
|
Loading…
Reference in New Issue
Block a user