Mercurial > emacs
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. |