comparison lispintro/texinfo.tex @ 49600:23a1cea22d13

Trailing whitespace deleted.
author Juanma Barranquero <lekktu@gmail.com>
date Tue, 04 Feb 2003 14:56:31 +0000
parents f267224443ae
children 4bfad02b45db d7ddb3e565de
comparison
equal deleted inserted replaced
49599:5ade352e8d1c 49600:23a1cea22d13
33 % (and all GNU mirrors, see http://www.gnu.org/order/ftp.html) 33 % (and all GNU mirrors, see http://www.gnu.org/order/ftp.html)
34 % ftp://texinfo.org/texinfo/texinfo.tex 34 % ftp://texinfo.org/texinfo/texinfo.tex
35 % ftp://tug.org/tex/texinfo.tex 35 % ftp://tug.org/tex/texinfo.tex
36 % (and all CTAN mirrors, see http://www.ctan.org), 36 % (and all CTAN mirrors, see http://www.ctan.org),
37 % and /home/gd/gnu/doc/texinfo.tex on the GNU machines. 37 % and /home/gd/gnu/doc/texinfo.tex on the GNU machines.
38 % 38 %
39 % The texinfo.tex in any given Texinfo distribution could well be out 39 % The texinfo.tex in any given Texinfo distribution could well be out
40 % of date, so if that's what you're using, please check. 40 % of date, so if that's what you're using, please check.
41 % 41 %
42 % Texinfo has a small home page at http://texinfo.org/ and also 42 % Texinfo has a small home page at http://texinfo.org/ and also
43 % http://www.gnu.org/software/texinfo. 43 % http://www.gnu.org/software/texinfo.
44 % 44 %
45 % Send bug reports to bug-texinfo@gnu.org. Please include including a 45 % Send bug reports to bug-texinfo@gnu.org. Please include including a
46 % complete document in each bug report with which we can reproduce the 46 % complete document in each bug report with which we can reproduce the
173 }% 173 }%
174 \fi 174 \fi
175 175
176 % add check for \lastpenalty to plain's definitions. If the last thing 176 % add check for \lastpenalty to plain's definitions. If the last thing
177 % we did was a \nobreak, we don't want to insert more space. 177 % we did was a \nobreak, we don't want to insert more space.
178 % 178 %
179 \def\smallbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\smallskipamount 179 \def\smallbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\smallskipamount
180 \removelastskip\penalty-50\smallskip\fi\fi} 180 \removelastskip\penalty-50\smallskip\fi\fi}
181 \def\medbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\medskipamount 181 \def\medbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\medskipamount
182 \removelastskip\penalty-100\medskip\fi\fi} 182 \removelastskip\penalty-100\medskip\fi\fi}
183 \def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount 183 \def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount
728 \def\inrightmargin{\doinmargin r} 728 \def\inrightmargin{\doinmargin r}
729 % 729 %
730 % @inmargin{TEXT [, RIGHT-TEXT]} 730 % @inmargin{TEXT [, RIGHT-TEXT]}
731 % (if RIGHT-TEXT is given, use TEXT for left page, RIGHT-TEXT for right; 731 % (if RIGHT-TEXT is given, use TEXT for left page, RIGHT-TEXT for right;
732 % else use TEXT for both). 732 % else use TEXT for both).
733 % 733 %
734 \def\inmargin#1{\parseinmargin #1,,\finish} 734 \def\inmargin#1{\parseinmargin #1,,\finish}
735 \def\parseinmargin#1,#2,#3\finish{% not perfect, but better than nothing. 735 \def\parseinmargin#1,#2,#3\finish{% not perfect, but better than nothing.
736 \setbox0 = \hbox{\ignorespaces #2}% 736 \setbox0 = \hbox{\ignorespaces #2}%
737 \ifdim\wd0 > 0pt 737 \ifdim\wd0 > 0pt
738 \def\lefttext{#1}% have both texts 738 \def\lefttext{#1}% have both texts
739 \def\righttext{#2}% 739 \def\righttext{#2}%
740 \else 740 \else
741 \def\lefttext{#1}% have only one text 741 \def\lefttext{#1}% have only one text
795 \let\c=\comment 795 \let\c=\comment
796 796
797 % @paragraphindent NCHARS 797 % @paragraphindent NCHARS
798 % We'll use ems for NCHARS, close enough. 798 % We'll use ems for NCHARS, close enough.
799 % We cannot implement @paragraphindent asis, though. 799 % We cannot implement @paragraphindent asis, though.
800 % 800 %
801 \def\asisword{asis} % no translation, these are keywords 801 \def\asisword{asis} % no translation, these are keywords
802 \def\noneword{none} 802 \def\noneword{none}
803 % 803 %
804 \def\paragraphindent{\parsearg\doparagraphindent} 804 \def\paragraphindent{\parsearg\doparagraphindent}
805 \def\doparagraphindent#1{% 805 \def\doparagraphindent#1{%
838 838
839 % @math outputs its argument in math mode. 839 % @math outputs its argument in math mode.
840 % We don't use $'s directly in the definition of \math because we need 840 % We don't use $'s directly in the definition of \math because we need
841 % to set catcodes according to plain TeX first, to allow for subscripts, 841 % to set catcodes according to plain TeX first, to allow for subscripts,
842 % superscripts, special math chars, etc. 842 % superscripts, special math chars, etc.
843 % 843 %
844 % @math does not do math typesetting in section titles, index 844 % @math does not do math typesetting in section titles, index
845 % entries, and other such contexts where the catcodes are set before 845 % entries, and other such contexts where the catcodes are set before
846 % @math gets a chance to work. This could perhaps be fixed, but for now 846 % @math gets a chance to work. This could perhaps be fixed, but for now
847 % at least we can have real math in the main text, where it's needed most. 847 % at least we can have real math in the main text, where it's needed most.
848 % 848 %
850 % 850 %
851 % One complication: _ usually means subscripts, but it could also mean 851 % One complication: _ usually means subscripts, but it could also mean
852 % an actual _ character, as in @math{@var{some_variable} + 1}. So make 852 % an actual _ character, as in @math{@var{some_variable} + 1}. So make
853 % _ within @math be active (mathcode "8000), and distinguish by seeing 853 % _ within @math be active (mathcode "8000), and distinguish by seeing
854 % if the current family is \slfam, which is what @var uses. 854 % if the current family is \slfam, which is what @var uses.
855 % 855 %
856 {\catcode95 = \active % 95 = _ 856 {\catcode95 = \active % 95 = _
857 \gdef\mathunderscore{% 857 \gdef\mathunderscore{%
858 \catcode95=\active 858 \catcode95=\active
859 \def_{\ifnum\fam=\slfam \_\else\sb\fi}% 859 \def_{\ifnum\fam=\slfam \_\else\sb\fi}%
860 }} 860 }}
861 % 861 %
862 % Another complication: we want \\ (and @\) to output a \ character. 862 % Another complication: we want \\ (and @\) to output a \ character.
863 % FYI, plain.tex uses \\ as a temporary control sequence (why?), but 863 % FYI, plain.tex uses \\ as a temporary control sequence (why?), but
864 % this is not advertised and we don't care. Texinfo does not 864 % this is not advertised and we don't care. Texinfo does not
865 % otherwise define @\. 865 % otherwise define @\.
866 % 866 %
867 % The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\. 867 % The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\.
868 \def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi} 868 \def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi}
869 % 869 %
870 \def\math{% 870 \def\math{%
871 \tex 871 \tex
984 \advance\tempnum by1 984 \advance\tempnum by1
985 \expandafter\xdef\csname#1\endcsname{\the\tempnum}} 985 \expandafter\xdef\csname#1\endcsname{\the\tempnum}}
986 \def\pdfmakeoutlines{{% 986 \def\pdfmakeoutlines{{%
987 \openin 1 \jobname.toc 987 \openin 1 \jobname.toc
988 \ifeof 1\else\begingroup 988 \ifeof 1\else\begingroup
989 \closein 1 989 \closein 1
990 \indexnofonts 990 \indexnofonts
991 \def\tt{} 991 \def\tt{}
992 \let\_ = \normalunderscore 992 \let\_ = \normalunderscore
993 % Thanh's hack / proper braces in bookmarks 993 % Thanh's hack / proper braces in bookmarks
994 \edef\mylbrace{\iftrue \string{\else}\fi}\let\{=\mylbrace 994 \edef\mylbrace{\iftrue \string{\else}\fi}\let\{=\mylbrace
995 \edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace 995 \edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace
996 % 996 %
997 \def\chapentry ##1##2##3{} 997 \def\chapentry ##1##2##3{}
998 \let\appendixentry = \chapentry 998 \let\appendixentry = \chapentry
1030 \let\nextmakelinks=\relax 1030 \let\nextmakelinks=\relax
1031 \else 1031 \else
1032 \let\nextmakelinks=\makelinks 1032 \let\nextmakelinks=\makelinks
1033 \ifnum\lnkcount>0,\fi 1033 \ifnum\lnkcount>0,\fi
1034 \picknum{#1}% 1034 \picknum{#1}%
1035 \startlink attr{/Border [0 0 0]} 1035 \startlink attr{/Border [0 0 0]}
1036 goto name{\pdfmkpgn{\the\pgn}}% 1036 goto name{\pdfmkpgn{\the\pgn}}%
1037 \linkcolor #1% 1037 \linkcolor #1%
1038 \advance\lnkcount by 1% 1038 \advance\lnkcount by 1%
1039 \endlink 1039 \endlink
1040 \fi 1040 \fi
1085 \def\maketoks{% 1085 \def\maketoks{%
1086 \expandafter\poptoks\the\toksA|ENDTOKS| 1086 \expandafter\poptoks\the\toksA|ENDTOKS|
1087 \ifx\first0\adn0 1087 \ifx\first0\adn0
1088 \else\ifx\first1\adn1 \else\ifx\first2\adn2 \else\ifx\first3\adn3 1088 \else\ifx\first1\adn1 \else\ifx\first2\adn2 \else\ifx\first3\adn3
1089 \else\ifx\first4\adn4 \else\ifx\first5\adn5 \else\ifx\first6\adn6 1089 \else\ifx\first4\adn4 \else\ifx\first5\adn5 \else\ifx\first6\adn6
1090 \else\ifx\first7\adn7 \else\ifx\first8\adn8 \else\ifx\first9\adn9 1090 \else\ifx\first7\adn7 \else\ifx\first8\adn8 \else\ifx\first9\adn9
1091 \else 1091 \else
1092 \ifnum0=\countA\else\makelink\fi 1092 \ifnum0=\countA\else\makelink\fi
1093 \ifx\first.\let\next=\done\else 1093 \ifx\first.\let\next=\done\else
1094 \let\next=\maketoks 1094 \let\next=\maketoks
1095 \addtokens{\toksB}{\the\toksD} 1095 \addtokens{\toksB}{\the\toksD}
1520 \endlink 1520 \endlink
1521 \endgroup} 1521 \endgroup}
1522 1522
1523 % rms does not like angle brackets --karl, 17may97. 1523 % rms does not like angle brackets --karl, 17may97.
1524 % So now @email is just like @uref, unless we are pdf. 1524 % So now @email is just like @uref, unless we are pdf.
1525 % 1525 %
1526 %\def\email#1{\angleleft{\tt #1}\angleright} 1526 %\def\email#1{\angleleft{\tt #1}\angleright}
1527 \ifpdf 1527 \ifpdf
1528 \def\email#1{\doemail#1,,\finish} 1528 \def\email#1{\doemail#1,,\finish}
1529 \def\doemail#1,#2,#3\finish{\begingroup 1529 \def\doemail#1,#2,#3\finish{\begingroup
1530 \unsepspaces 1530 \unsepspaces
2741 } 2741 }
2742 2742
2743 2743
2744 % @synindex foo bar makes index foo feed into index bar. 2744 % @synindex foo bar makes index foo feed into index bar.
2745 % Do this instead of @defindex foo if you don't want it as a separate index. 2745 % Do this instead of @defindex foo if you don't want it as a separate index.
2746 % 2746 %
2747 % @syncodeindex foo bar similar, but put all entries made for index foo 2747 % @syncodeindex foo bar similar, but put all entries made for index foo
2748 % inside @code. 2748 % inside @code.
2749 % 2749 %
2750 \def\synindex#1 #2 {\dosynindex\doindex{#1}{#2}} 2750 \def\synindex#1 #2 {\dosynindex\doindex{#1}{#2}}
2751 \def\syncodeindex#1 #2 {\dosynindex\docodeindex{#1}{#2}} 2751 \def\syncodeindex#1 #2 {\dosynindex\docodeindex{#1}{#2}}
2752 2752
2753 % #1 is \doindex or \docodeindex, #2 the index getting redefined (foo), 2753 % #1 is \doindex or \docodeindex, #2 the index getting redefined (foo),
2754 % #3 the target index (bar). 2754 % #3 the target index (bar).
2786 \def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}} 2786 \def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}}
2787 2787
2788 % Take care of texinfo commands likely to appear in an index entry. 2788 % Take care of texinfo commands likely to appear in an index entry.
2789 % (Must be a way to avoid doing expansion at all, and thus not have to 2789 % (Must be a way to avoid doing expansion at all, and thus not have to
2790 % laboriously list every single command here.) 2790 % laboriously list every single command here.)
2791 % 2791 %
2792 \def\indexdummies{% 2792 \def\indexdummies{%
2793 \def\ { }% 2793 \def\ { }%
2794 \def\@{@}% change to @@ when we switch to @ as escape char in aux files. 2794 \def\@{@}% change to @@ when we switch to @ as escape char in aux files.
2795 % Need these in case \tex is in effect and \{ is a \delimiter again. 2795 % Need these in case \tex is in effect and \{ is a \delimiter again.
2796 % But can't use \lbracecmd and \rbracecmd because texindex assumes 2796 % But can't use \lbracecmd and \rbracecmd because texindex assumes
2797 % braces and backslashes are used only as delimiters. 2797 % braces and backslashes are used only as delimiters.
2798 \let\{ = \mylbrace 2798 \let\{ = \mylbrace
2799 \let\} = \myrbrace 2799 \let\} = \myrbrace
2800 \def\_{{\realbackslash _}}% 2800 \def\_{{\realbackslash _}}%
2801 \normalturnoffactive 2801 \normalturnoffactive
2802 % 2802 %
3347 % 3347 %
3348 \hsize = \doublecolumnhsize 3348 \hsize = \doublecolumnhsize
3349 \wd0=\hsize \wd2=\hsize 3349 \wd0=\hsize \wd2=\hsize
3350 \hbox to\pagewidth{\box0\hfil\box2}% 3350 \hbox to\pagewidth{\box0\hfil\box2}%
3351 } 3351 }
3352 % 3352 %
3353 % All done with double columns. 3353 % All done with double columns.
3354 \def\enddoublecolumns{% 3354 \def\enddoublecolumns{%
3355 \output = {% 3355 \output = {%
3356 % Split the last of the double-column material. Leave it on the 3356 % Split the last of the double-column material. Leave it on the
3357 % current page, no automatic page break. 3357 % current page, no automatic page break.
4148 4148
4149 \message{environments,} 4149 \message{environments,}
4150 % @foo ... @end foo. 4150 % @foo ... @end foo.
4151 4151
4152 % @point{}, @result{}, @expansion{}, @print{}, @equiv{}. 4152 % @point{}, @result{}, @expansion{}, @print{}, @equiv{}.
4153 % 4153 %
4154 % Since these characters are used in examples, it should be an even number of 4154 % Since these characters are used in examples, it should be an even number of
4155 % \tt widths. Each \tt character is 1en, so two makes it 1em. 4155 % \tt widths. Each \tt character is 1en, so two makes it 1em.
4156 % 4156 %
4157 \def\point{$\star$} 4157 \def\point{$\star$}
4158 \def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}} 4158 \def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}}
4160 \def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}} 4160 \def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}}
4161 \def\equiv{\leavevmode\lower.1ex\hbox to 1em{\hfil$\ptexequiv$\hfil}} 4161 \def\equiv{\leavevmode\lower.1ex\hbox to 1em{\hfil$\ptexequiv$\hfil}}
4162 4162
4163 % The @error{} command. 4163 % The @error{} command.
4164 % Adapted from the TeXbook's \boxit. 4164 % Adapted from the TeXbook's \boxit.
4165 % 4165 %
4166 \newbox\errorbox 4166 \newbox\errorbox
4167 % 4167 %
4168 {\tentt \global\dimen0 = 3em}% Width of the box. 4168 {\tentt \global\dimen0 = 3em}% Width of the box.
4169 \dimen2 = .55pt % Thickness of rules 4169 \dimen2 = .55pt % Thickness of rules
4170 % The text. (`r' is open on the right, `e' somewhat less so on the left.) 4170 % The text. (`r' is open on the right, `e' somewhat less so on the left.)
4468 \fi 4468 \fi
4469 } 4469 }
4470 4470
4471 4471
4472 % LaTeX-like @verbatim...@end verbatim and @verb{<char>...<char>} 4472 % LaTeX-like @verbatim...@end verbatim and @verb{<char>...<char>}
4473 % If we want to allow any <char> as delimiter, 4473 % If we want to allow any <char> as delimiter,
4474 % we need the curly braces so that makeinfo sees the @verb command, eg: 4474 % we need the curly braces so that makeinfo sees the @verb command, eg:
4475 % `@verbx...x' would look like the '@verbx' command. --janneke@gnu.org 4475 % `@verbx...x' would look like the '@verbx' command. --janneke@gnu.org
4476 % 4476 %
4477 % [Knuth]: Donald Ervin Knuth, 1996. The TeXbook. 4477 % [Knuth]: Donald Ervin Knuth, 1996. The TeXbook.
4478 % 4478 %
4542 % must do in this order: 4542 % must do in this order:
4543 \obeylines \uncatcodespecials \sepspaces 4543 \obeylines \uncatcodespecials \sepspaces
4544 \everypar{\starttabbox}% 4544 \everypar{\starttabbox}%
4545 } 4545 }
4546 4546
4547 % Do the @verb magic: verbatim text is quoted by unique 4547 % Do the @verb magic: verbatim text is quoted by unique
4548 % delimiter characters. Before first delimiter expect a 4548 % delimiter characters. Before first delimiter expect a
4549 % right brace, after last delimiter expect closing brace: 4549 % right brace, after last delimiter expect closing brace:
4550 % 4550 %
4551 % \def\doverb'{'<char>#1<char>'}'{#1} 4551 % \def\doverb'{'<char>#1<char>'}'{#1}
4552 % 4552 %
4553 % [Knuth] p. 382; only eat outer {} 4553 % [Knuth] p. 382; only eat outer {}
4562 % Do the @verbatim magic: define the macro \doverbatim so that 4562 % Do the @verbatim magic: define the macro \doverbatim so that
4563 % the (first) argument ends when '@end verbatim' is reached, ie: 4563 % the (first) argument ends when '@end verbatim' is reached, ie:
4564 % 4564 %
4565 % \def\doverbatim#1@end verbatim{#1} 4565 % \def\doverbatim#1@end verbatim{#1}
4566 % 4566 %
4567 % For Texinfo it's a lot easier than for LaTeX, 4567 % For Texinfo it's a lot easier than for LaTeX,
4568 % because texinfo's \verbatim doesn't stop at '\end{verbatim}': 4568 % because texinfo's \verbatim doesn't stop at '\end{verbatim}':
4569 % we need not redefine '\', '{' and '}' 4569 % we need not redefine '\', '{' and '}'
4570 % 4570 %
4571 % Inspired by LaTeX's verbatim command set [latex.ltx] 4571 % Inspired by LaTeX's verbatim command set [latex.ltx]
4572 %% Include LaTeX hack for completeness -- never know 4572 %% Include LaTeX hack for completeness -- never know
4620 \endgroup\nonfillfinish\endgroup 4620 \endgroup\nonfillfinish\endgroup
4621 } 4621 }
4622 4622
4623 % @copying ... @end copying. 4623 % @copying ... @end copying.
4624 % Save the text away for @insertcopying later. 4624 % Save the text away for @insertcopying later.
4625 % 4625 %
4626 \newbox\copyingbox 4626 \newbox\copyingbox
4627 % 4627 %
4628 \def\copying{\begingroup 4628 \def\copying{\begingroup
4629 \parindent = 0pt % looks wrong on title page 4629 \parindent = 0pt % looks wrong on title page
4630 \def\Ecopying{\egroup\endgroup}% 4630 \def\Ecopying{\egroup\endgroup}%
4631 \global\setbox\copyingbox = \vbox\bgroup 4631 \global\setbox\copyingbox = \vbox\bgroup
4632 } 4632 }
4633 4633
4634 % @insertcopying. 4634 % @insertcopying.
4635 % 4635 %
4636 \def\insertcopying{\unvcopy\copyingbox} 4636 \def\insertcopying{\unvcopy\copyingbox}
4637 4637
4638 4638
4639 \message{defuns,} 4639 \message{defuns,}
4640 % @defun etc. 4640 % @defun etc.
4786 % extra argument at the beginning which is the `category', instead of it 4786 % extra argument at the beginning which is the `category', instead of it
4787 % being the hardwired string `Method' or `Instance Variable'. We have 4787 % being the hardwired string `Method' or `Instance Variable'. We have
4788 % to account for this both in the \...x definition and in parsing the 4788 % to account for this both in the \...x definition and in parsing the
4789 % input at hand. Thus also need a control sequence (passed as #5) for 4789 % input at hand. Thus also need a control sequence (passed as #5) for
4790 % the \E... definition to assign the category name to. 4790 % the \E... definition to assign the category name to.
4791 % 4791 %
4792 \def\deftypeopparsebody#1#2#3#4#5 #6 {\begingroup\inENV 4792 \def\deftypeopparsebody#1#2#3#4#5 #6 {\begingroup\inENV
4793 \medbreak 4793 \medbreak
4794 \def#1{\endgraf\endgroup\medbreak}% 4794 \def#1{\endgraf\endgroup\medbreak}%
4795 \def#2##1 ##2 ##3 {% 4795 \def#2##1 ##2 ##3 {%
4796 \def#4{##1}% 4796 \def#4{##1}%
5170 \def\deftpheader #1#2#3{\doind {tp}{\code{#2}}% 5170 \def\deftpheader #1#2#3{\doind {tp}{\code{#2}}%
5171 \begingroup\defname {#2}{#1}\deftpargs{#3}\endgroup} 5171 \begingroup\defname {#2}{#1}\deftpargs{#3}\endgroup}
5172 5172
5173 % These definitions are used if you use @defunx (etc.) 5173 % These definitions are used if you use @defunx (etc.)
5174 % anywhere other than immediately after a @defun or @defunx. 5174 % anywhere other than immediately after a @defun or @defunx.
5175 % 5175 %
5176 \def\defcvx#1 {\errmessage{@defcvx in invalid context}} 5176 \def\defcvx#1 {\errmessage{@defcvx in invalid context}}
5177 \def\deffnx#1 {\errmessage{@deffnx in invalid context}} 5177 \def\deffnx#1 {\errmessage{@deffnx in invalid context}}
5178 \def\defivarx#1 {\errmessage{@defivarx in invalid context}} 5178 \def\defivarx#1 {\errmessage{@defivarx in invalid context}}
5179 \def\defmacx#1 {\errmessage{@defmacx in invalid context}} 5179 \def\defmacx#1 {\errmessage{@defmacx in invalid context}}
5180 \def\defmethodx#1 {\errmessage{@defmethodx in invalid context}} 5180 \def\defmethodx#1 {\errmessage{@defmethodx in invalid context}}
5971 \ifvmode 5971 \ifvmode
5972 \imagevmodetrue 5972 \imagevmodetrue
5973 \nobreak\bigskip 5973 \nobreak\bigskip
5974 % Usually we'll have text after the image which will insert 5974 % Usually we'll have text after the image which will insert
5975 % \parskip glue, so insert it here too to equalize the space 5975 % \parskip glue, so insert it here too to equalize the space
5976 % above and below. 5976 % above and below.
5977 \nobreak\vskip\parskip 5977 \nobreak\vskip\parskip
5978 \nobreak 5978 \nobreak
5979 \line\bgroup\hss 5979 \line\bgroup\hss
5980 \fi 5980 \fi
5981 % 5981 %
6087 \parindent = \defaultparindent 6087 \parindent = \defaultparindent
6088 \setemergencystretch 6088 \setemergencystretch
6089 } 6089 }
6090 6090
6091 % Use `small' versions. 6091 % Use `small' versions.
6092 % 6092 %
6093 \def\smallenvironments{% 6093 \def\smallenvironments{%
6094 \let\smalldisplay = \smalldisplayx 6094 \let\smalldisplay = \smalldisplayx
6095 \let\smallexample = \smalllispx 6095 \let\smallexample = \smalllispx
6096 \let\smallformat = \smallformatx 6096 \let\smallformat = \smallformatx
6097 \let\smalllisp = \smalllispx 6097 \let\smalllisp = \smalllispx
6344 } 6344 }
6345 6345
6346 % Say @foo, not \foo, in error messages. 6346 % Say @foo, not \foo, in error messages.
6347 @escapechar = `@@ 6347 @escapechar = `@@
6348 6348
6349 % These look ok in all fonts, so just make them not special. 6349 % These look ok in all fonts, so just make them not special.
6350 @catcode`@& = @other 6350 @catcode`@& = @other
6351 @catcode`@# = @other 6351 @catcode`@# = @other
6352 @catcode`@% = @other 6352 @catcode`@% = @other
6353 6353
6354 @c Set initial fonts. 6354 @c Set initial fonts.