comparison man/texinfo.tex @ 49600:23a1cea22d13

Trailing whitespace deleted.
author Juanma Barranquero <lekktu@gmail.com>
date Tue, 04 Feb 2003 14:56:31 +0000
parents efec044efb3a
children 695cf19ef79e 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}
1519 \endlink 1519 \endlink
1520 \endgroup} 1520 \endgroup}
1521 1521
1522 % rms does not like angle brackets --karl, 17may97. 1522 % rms does not like angle brackets --karl, 17may97.
1523 % So now @email is just like @uref, unless we are pdf. 1523 % So now @email is just like @uref, unless we are pdf.
1524 % 1524 %
1525 %\def\email#1{\angleleft{\tt #1}\angleright} 1525 %\def\email#1{\angleleft{\tt #1}\angleright}
1526 \ifpdf 1526 \ifpdf
1527 \def\email#1{\doemail#1,,\finish} 1527 \def\email#1{\doemail#1,,\finish}
1528 \def\doemail#1,#2,#3\finish{\begingroup 1528 \def\doemail#1,#2,#3\finish{\begingroup
1529 \unsepspaces 1529 \unsepspaces
2740 } 2740 }
2741 2741
2742 2742
2743 % @synindex foo bar makes index foo feed into index bar. 2743 % @synindex foo bar makes index foo feed into index bar.
2744 % Do this instead of @defindex foo if you don't want it as a separate index. 2744 % Do this instead of @defindex foo if you don't want it as a separate index.
2745 % 2745 %
2746 % @syncodeindex foo bar similar, but put all entries made for index foo 2746 % @syncodeindex foo bar similar, but put all entries made for index foo
2747 % inside @code. 2747 % inside @code.
2748 % 2748 %
2749 \def\synindex#1 #2 {\dosynindex\doindex{#1}{#2}} 2749 \def\synindex#1 #2 {\dosynindex\doindex{#1}{#2}}
2750 \def\syncodeindex#1 #2 {\dosynindex\docodeindex{#1}{#2}} 2750 \def\syncodeindex#1 #2 {\dosynindex\docodeindex{#1}{#2}}
2751 2751
2752 % #1 is \doindex or \docodeindex, #2 the index getting redefined (foo), 2752 % #1 is \doindex or \docodeindex, #2 the index getting redefined (foo),
2753 % #3 the target index (bar). 2753 % #3 the target index (bar).
2785 \def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}} 2785 \def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}}
2786 2786
2787 % Take care of texinfo commands likely to appear in an index entry. 2787 % Take care of texinfo commands likely to appear in an index entry.
2788 % (Must be a way to avoid doing expansion at all, and thus not have to 2788 % (Must be a way to avoid doing expansion at all, and thus not have to
2789 % laboriously list every single command here.) 2789 % laboriously list every single command here.)
2790 % 2790 %
2791 \def\indexdummies{% 2791 \def\indexdummies{%
2792 \def\ { }% 2792 \def\ { }%
2793 \def\@{@}% change to @@ when we switch to @ as escape char in aux files. 2793 \def\@{@}% change to @@ when we switch to @ as escape char in aux files.
2794 % Need these in case \tex is in effect and \{ is a \delimiter again. 2794 % Need these in case \tex is in effect and \{ is a \delimiter again.
2795 % But can't use \lbracecmd and \rbracecmd because texindex assumes 2795 % But can't use \lbracecmd and \rbracecmd because texindex assumes
2796 % braces and backslashes are used only as delimiters. 2796 % braces and backslashes are used only as delimiters.
2797 \let\{ = \mylbrace 2797 \let\{ = \mylbrace
2798 \let\} = \myrbrace 2798 \let\} = \myrbrace
2799 \def\_{{\realbackslash _}}% 2799 \def\_{{\realbackslash _}}%
2800 \normalturnoffactive 2800 \normalturnoffactive
2801 % 2801 %
3346 % 3346 %
3347 \hsize = \doublecolumnhsize 3347 \hsize = \doublecolumnhsize
3348 \wd0=\hsize \wd2=\hsize 3348 \wd0=\hsize \wd2=\hsize
3349 \hbox to\pagewidth{\box0\hfil\box2}% 3349 \hbox to\pagewidth{\box0\hfil\box2}%
3350 } 3350 }
3351 % 3351 %
3352 % All done with double columns. 3352 % All done with double columns.
3353 \def\enddoublecolumns{% 3353 \def\enddoublecolumns{%
3354 \output = {% 3354 \output = {%
3355 % Split the last of the double-column material. Leave it on the 3355 % Split the last of the double-column material. Leave it on the
3356 % current page, no automatic page break. 3356 % current page, no automatic page break.
4147 4147
4148 \message{environments,} 4148 \message{environments,}
4149 % @foo ... @end foo. 4149 % @foo ... @end foo.
4150 4150
4151 % @point{}, @result{}, @expansion{}, @print{}, @equiv{}. 4151 % @point{}, @result{}, @expansion{}, @print{}, @equiv{}.
4152 % 4152 %
4153 % Since these characters are used in examples, it should be an even number of 4153 % Since these characters are used in examples, it should be an even number of
4154 % \tt widths. Each \tt character is 1en, so two makes it 1em. 4154 % \tt widths. Each \tt character is 1en, so two makes it 1em.
4155 % 4155 %
4156 \def\point{$\star$} 4156 \def\point{$\star$}
4157 \def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}} 4157 \def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}}
4159 \def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}} 4159 \def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}}
4160 \def\equiv{\leavevmode\lower.1ex\hbox to 1em{\hfil$\ptexequiv$\hfil}} 4160 \def\equiv{\leavevmode\lower.1ex\hbox to 1em{\hfil$\ptexequiv$\hfil}}
4161 4161
4162 % The @error{} command. 4162 % The @error{} command.
4163 % Adapted from the TeXbook's \boxit. 4163 % Adapted from the TeXbook's \boxit.
4164 % 4164 %
4165 \newbox\errorbox 4165 \newbox\errorbox
4166 % 4166 %
4167 {\tentt \global\dimen0 = 3em}% Width of the box. 4167 {\tentt \global\dimen0 = 3em}% Width of the box.
4168 \dimen2 = .55pt % Thickness of rules 4168 \dimen2 = .55pt % Thickness of rules
4169 % The text. (`r' is open on the right, `e' somewhat less so on the left.) 4169 % The text. (`r' is open on the right, `e' somewhat less so on the left.)
4467 \fi 4467 \fi
4468 } 4468 }
4469 4469
4470 4470
4471 % LaTeX-like @verbatim...@end verbatim and @verb{<char>...<char>} 4471 % LaTeX-like @verbatim...@end verbatim and @verb{<char>...<char>}
4472 % If we want to allow any <char> as delimiter, 4472 % If we want to allow any <char> as delimiter,
4473 % we need the curly braces so that makeinfo sees the @verb command, eg: 4473 % we need the curly braces so that makeinfo sees the @verb command, eg:
4474 % `@verbx...x' would look like the '@verbx' command. --janneke@gnu.org 4474 % `@verbx...x' would look like the '@verbx' command. --janneke@gnu.org
4475 % 4475 %
4476 % [Knuth]: Donald Ervin Knuth, 1996. The TeXbook. 4476 % [Knuth]: Donald Ervin Knuth, 1996. The TeXbook.
4477 % 4477 %
4541 % must do in this order: 4541 % must do in this order:
4542 \obeylines \uncatcodespecials \sepspaces 4542 \obeylines \uncatcodespecials \sepspaces
4543 \everypar{\starttabbox}% 4543 \everypar{\starttabbox}%
4544 } 4544 }
4545 4545
4546 % Do the @verb magic: verbatim text is quoted by unique 4546 % Do the @verb magic: verbatim text is quoted by unique
4547 % delimiter characters. Before first delimiter expect a 4547 % delimiter characters. Before first delimiter expect a
4548 % right brace, after last delimiter expect closing brace: 4548 % right brace, after last delimiter expect closing brace:
4549 % 4549 %
4550 % \def\doverb'{'<char>#1<char>'}'{#1} 4550 % \def\doverb'{'<char>#1<char>'}'{#1}
4551 % 4551 %
4552 % [Knuth] p. 382; only eat outer {} 4552 % [Knuth] p. 382; only eat outer {}
4561 % Do the @verbatim magic: define the macro \doverbatim so that 4561 % Do the @verbatim magic: define the macro \doverbatim so that
4562 % the (first) argument ends when '@end verbatim' is reached, ie: 4562 % the (first) argument ends when '@end verbatim' is reached, ie:
4563 % 4563 %
4564 % \def\doverbatim#1@end verbatim{#1} 4564 % \def\doverbatim#1@end verbatim{#1}
4565 % 4565 %
4566 % For Texinfo it's a lot easier than for LaTeX, 4566 % For Texinfo it's a lot easier than for LaTeX,
4567 % because texinfo's \verbatim doesn't stop at '\end{verbatim}': 4567 % because texinfo's \verbatim doesn't stop at '\end{verbatim}':
4568 % we need not redefine '\', '{' and '}' 4568 % we need not redefine '\', '{' and '}'
4569 % 4569 %
4570 % Inspired by LaTeX's verbatim command set [latex.ltx] 4570 % Inspired by LaTeX's verbatim command set [latex.ltx]
4571 %% Include LaTeX hack for completeness -- never know 4571 %% Include LaTeX hack for completeness -- never know
4619 \endgroup\nonfillfinish\endgroup 4619 \endgroup\nonfillfinish\endgroup
4620 } 4620 }
4621 4621
4622 % @copying ... @end copying. 4622 % @copying ... @end copying.
4623 % Save the text away for @insertcopying later. 4623 % Save the text away for @insertcopying later.
4624 % 4624 %
4625 \newbox\copyingbox 4625 \newbox\copyingbox
4626 % 4626 %
4627 \def\copying{\begingroup 4627 \def\copying{\begingroup
4628 \parindent = 0pt % looks wrong on title page 4628 \parindent = 0pt % looks wrong on title page
4629 \def\Ecopying{\egroup\endgroup}% 4629 \def\Ecopying{\egroup\endgroup}%
4630 \global\setbox\copyingbox = \vbox\bgroup 4630 \global\setbox\copyingbox = \vbox\bgroup
4631 } 4631 }
4632 4632
4633 % @insertcopying. 4633 % @insertcopying.
4634 % 4634 %
4635 \def\insertcopying{\unvcopy\copyingbox} 4635 \def\insertcopying{\unvcopy\copyingbox}
4636 4636
4637 4637
4638 \message{defuns,} 4638 \message{defuns,}
4639 % @defun etc. 4639 % @defun etc.
4732 4732
4733 % Common pieces to start any @def... 4733 % Common pieces to start any @def...
4734 % #1 is the \E... control sequence to end the definition (which we define). 4734 % #1 is the \E... control sequence to end the definition (which we define).
4735 % #2 is the \...x control sequence (which our caller defines). 4735 % #2 is the \...x control sequence (which our caller defines).
4736 % #3 is the control sequence to process the header, such as \defunheader. 4736 % #3 is the control sequence to process the header, such as \defunheader.
4737 % 4737 %
4738 \def\parsebodycommon#1#2#3{% 4738 \def\parsebodycommon#1#2#3{%
4739 \begingroup\inENV 4739 \begingroup\inENV
4740 % If there are two @def commands in a row, we'll have a \nobreak, 4740 % If there are two @def commands in a row, we'll have a \nobreak,
4741 % which is there to keep the function description together with its 4741 % which is there to keep the function description together with its
4742 % header. But if there's nothing but headers, we want to allow a 4742 % header. But if there's nothing but headers, we want to allow a
4789 % extra argument at the beginning which is the `category', instead of it 4789 % extra argument at the beginning which is the `category', instead of it
4790 % being the hardwired string `Method' or `Instance Variable'. We have 4790 % being the hardwired string `Method' or `Instance Variable'. We have
4791 % to account for this both in the \...x definition and in parsing the 4791 % to account for this both in the \...x definition and in parsing the
4792 % input at hand. Thus also need a control sequence (passed as #5) for 4792 % input at hand. Thus also need a control sequence (passed as #5) for
4793 % the \E... definition to assign the category name to. 4793 % the \E... definition to assign the category name to.
4794 % 4794 %
4795 \def\deftypeopparsebody#1#2#3#4#5 #6 {% 4795 \def\deftypeopparsebody#1#2#3#4#5 #6 {%
4796 \parsebodycommon{#1}{#2}{#3}% 4796 \parsebodycommon{#1}{#2}{#3}%
4797 \def#2##1 ##2 ##3 {% 4797 \def#2##1 ##2 ##3 {%
4798 \def#4{##1}% 4798 \def#4{##1}%
4799 \begingroup\obeylines\activeparens\spacesplit{#3{##2}{##3}}}% 4799 \begingroup\obeylines\activeparens\spacesplit{#3{##2}{##3}}}%
5146 \def\deftpheader #1#2#3{\doind {tp}{\code{#2}}% 5146 \def\deftpheader #1#2#3{\doind {tp}{\code{#2}}%
5147 \begingroup\defname {#2}{#1}\deftpargs{#3}\endgroup} 5147 \begingroup\defname {#2}{#1}\deftpargs{#3}\endgroup}
5148 5148
5149 % These definitions are used if you use @defunx (etc.) 5149 % These definitions are used if you use @defunx (etc.)
5150 % anywhere other than immediately after a @defun or @defunx. 5150 % anywhere other than immediately after a @defun or @defunx.
5151 % 5151 %
5152 \def\defcvx#1 {\errmessage{@defcvx in invalid context}} 5152 \def\defcvx#1 {\errmessage{@defcvx in invalid context}}
5153 \def\deffnx#1 {\errmessage{@deffnx in invalid context}} 5153 \def\deffnx#1 {\errmessage{@deffnx in invalid context}}
5154 \def\defivarx#1 {\errmessage{@defivarx in invalid context}} 5154 \def\defivarx#1 {\errmessage{@defivarx in invalid context}}
5155 \def\defmacx#1 {\errmessage{@defmacx in invalid context}} 5155 \def\defmacx#1 {\errmessage{@defmacx in invalid context}}
5156 \def\defmethodx#1 {\errmessage{@defmethodx in invalid context}} 5156 \def\defmethodx#1 {\errmessage{@defmethodx in invalid context}}
5947 \ifvmode 5947 \ifvmode
5948 \imagevmodetrue 5948 \imagevmodetrue
5949 \nobreak\bigskip 5949 \nobreak\bigskip
5950 % Usually we'll have text after the image which will insert 5950 % Usually we'll have text after the image which will insert
5951 % \parskip glue, so insert it here too to equalize the space 5951 % \parskip glue, so insert it here too to equalize the space
5952 % above and below. 5952 % above and below.
5953 \nobreak\vskip\parskip 5953 \nobreak\vskip\parskip
5954 \nobreak 5954 \nobreak
5955 \line\bgroup\hss 5955 \line\bgroup\hss
5956 \fi 5956 \fi
5957 % 5957 %
6063 \parindent = \defaultparindent 6063 \parindent = \defaultparindent
6064 \setemergencystretch 6064 \setemergencystretch
6065 } 6065 }
6066 6066
6067 % Use `small' versions. 6067 % Use `small' versions.
6068 % 6068 %
6069 \def\smallenvironments{% 6069 \def\smallenvironments{%
6070 \let\smalldisplay = \smalldisplayx 6070 \let\smalldisplay = \smalldisplayx
6071 \let\smallexample = \smalllispx 6071 \let\smallexample = \smalllispx
6072 \let\smallformat = \smallformatx 6072 \let\smallformat = \smallformatx
6073 \let\smalllisp = \smalllispx 6073 \let\smalllisp = \smalllispx
6320 } 6320 }
6321 6321
6322 % Say @foo, not \foo, in error messages. 6322 % Say @foo, not \foo, in error messages.
6323 @escapechar = `@@ 6323 @escapechar = `@@
6324 6324
6325 % These look ok in all fonts, so just make them not special. 6325 % These look ok in all fonts, so just make them not special.
6326 @catcode`@& = @other 6326 @catcode`@& = @other
6327 @catcode`@# = @other 6327 @catcode`@# = @other
6328 @catcode`@% = @other 6328 @catcode`@% = @other
6329 6329
6330 @c Set initial fonts. 6330 @c Set initial fonts.