diff options
| author | Paul Eggert | 2023-01-06 17:53:54 -0800 |
|---|---|---|
| committer | Paul Eggert | 2023-01-06 18:05:57 -0800 |
| commit | 9e98ff562b4b8f2dae92bd4c64d15934c7d5877f (patch) | |
| tree | f37ce6d03a710f541fbbe72b9533a05d1a63103f /doc/misc | |
| parent | 2f05f48918ecf6e59b330709b09a36f81f7b6c48 (diff) | |
| download | emacs-9e98ff562b4b8f2dae92bd4c64d15934c7d5877f.tar.gz emacs-9e98ff562b4b8f2dae92bd4c64d15934c7d5877f.zip | |
Update from Gnulib by running admin/merge-gnulib
Diffstat (limited to 'doc/misc')
| -rw-r--r-- | doc/misc/texinfo.tex | 735 |
1 files changed, 357 insertions, 378 deletions
diff --git a/doc/misc/texinfo.tex b/doc/misc/texinfo.tex index 7c4520637a7..3cccf01d958 100644 --- a/doc/misc/texinfo.tex +++ b/doc/misc/texinfo.tex | |||
| @@ -3,9 +3,9 @@ | |||
| 3 | % Load plain if necessary, i.e., if running under initex. | 3 | % Load plain if necessary, i.e., if running under initex. |
| 4 | \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi | 4 | \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi |
| 5 | % | 5 | % |
| 6 | \def\texinfoversion{2022-12-19.22} | 6 | \def\texinfoversion{2023-01-02.21} |
| 7 | % | 7 | % |
| 8 | % Copyright 1985--1986, 1988, 1990--2023 Free Software Foundation, Inc. | 8 | % Copyright 1985, 1986, 1988, 1990-2023 Free Software Foundation, Inc. |
| 9 | % | 9 | % |
| 10 | % This texinfo.tex file is free software: you can redistribute it and/or | 10 | % This texinfo.tex file is free software: you can redistribute it and/or |
| 11 | % modify it under the terms of the GNU General Public License as | 11 | % modify it under the terms of the GNU General Public License as |
| @@ -58,12 +58,6 @@ | |||
| 58 | 58 | ||
| 59 | \message{Loading texinfo [version \texinfoversion]:} | 59 | \message{Loading texinfo [version \texinfoversion]:} |
| 60 | 60 | ||
| 61 | % If in a .fmt file, print the version number | ||
| 62 | % and turn on active characters that we couldn't do earlier because | ||
| 63 | % they might have appeared in the input file name. | ||
| 64 | \everyjob{\message{[Texinfo version \texinfoversion]}% | ||
| 65 | \catcode`+=\active \catcode`\_=\active} | ||
| 66 | |||
| 67 | % LaTeX's \typeout. This ensures that the messages it is used for | 61 | % LaTeX's \typeout. This ensures that the messages it is used for |
| 68 | % are identical in format to the corresponding ones from latex/pdflatex. | 62 | % are identical in format to the corresponding ones from latex/pdflatex. |
| 69 | \def\typeout{\immediate\write17}% | 63 | \def\typeout{\immediate\write17}% |
| @@ -530,7 +524,7 @@ | |||
| 530 | 524 | ||
| 531 | % ... but they get defined via ``\envdef\foo{...}'': | 525 | % ... but they get defined via ``\envdef\foo{...}'': |
| 532 | \long\def\envdef#1#2{\def#1{\startenvironment#1#2}} | 526 | \long\def\envdef#1#2{\def#1{\startenvironment#1#2}} |
| 533 | \def\envparseargdef#1#2{\parseargdef#1{\startenvironment#1#2}} | 527 | \long\def\envparseargdef#1#2{\parseargdef#1{\startenvironment#1#2}} |
| 534 | 528 | ||
| 535 | % Check whether we're in the right environment: | 529 | % Check whether we're in the right environment: |
| 536 | \def\checkenv#1{% | 530 | \def\checkenv#1{% |
| @@ -1200,13 +1194,17 @@ output) for that.)} | |||
| 1200 | % | 1194 | % |
| 1201 | % Set color, and create a mark which defines \thiscolor accordingly, | 1195 | % Set color, and create a mark which defines \thiscolor accordingly, |
| 1202 | % so that \makeheadline knows which color to restore. | 1196 | % so that \makeheadline knows which color to restore. |
| 1197 | \def\curcolor{0 0 0}% | ||
| 1203 | \def\setcolor#1{% | 1198 | \def\setcolor#1{% |
| 1204 | \xdef\currentcolordefs{\gdef\noexpand\thiscolor{#1}}% | 1199 | \ifx#1\curcolor\else |
| 1205 | \domark | 1200 | \xdef\currentcolordefs{\gdef\noexpand\thiscolor{#1}}% |
| 1206 | \pdfsetcolor{#1}% | 1201 | \domark |
| 1202 | \pdfsetcolor{#1}% | ||
| 1203 | \xdef\curcolor{#1}% | ||
| 1204 | \fi | ||
| 1207 | } | 1205 | } |
| 1208 | % | 1206 | % |
| 1209 | \def\maincolor{\rgbBlack} | 1207 | \let\maincolor\rgbBlack |
| 1210 | \pdfsetcolor{\maincolor} | 1208 | \pdfsetcolor{\maincolor} |
| 1211 | \edef\thiscolor{\maincolor} | 1209 | \edef\thiscolor{\maincolor} |
| 1212 | \def\currentcolordefs{} | 1210 | \def\currentcolordefs{} |
| @@ -1362,7 +1360,7 @@ output) for that.)} | |||
| 1362 | % | 1360 | % |
| 1363 | % by default, use black for everything. | 1361 | % by default, use black for everything. |
| 1364 | \def\urlcolor{\rgbBlack} | 1362 | \def\urlcolor{\rgbBlack} |
| 1365 | \def\linkcolor{\rgbBlack} | 1363 | \let\linkcolor\rgbBlack |
| 1366 | \def\endlink{\setcolor{\maincolor}\pdfendlink} | 1364 | \def\endlink{\setcolor{\maincolor}\pdfendlink} |
| 1367 | % | 1365 | % |
| 1368 | % Adding outlines to PDF; macros for calculating structure of outlines | 1366 | % Adding outlines to PDF; macros for calculating structure of outlines |
| @@ -2683,6 +2681,7 @@ end | |||
| 2683 | \gdef\setcodequotes{\let`\codequoteleft \let'\codequoteright} | 2681 | \gdef\setcodequotes{\let`\codequoteleft \let'\codequoteright} |
| 2684 | \gdef\setregularquotes{\let`\lq \let'\rq} | 2682 | \gdef\setregularquotes{\let`\lq \let'\rq} |
| 2685 | } | 2683 | } |
| 2684 | \setregularquotes | ||
| 2686 | 2685 | ||
| 2687 | % Allow an option to not use regular directed right quote/apostrophe | 2686 | % Allow an option to not use regular directed right quote/apostrophe |
| 2688 | % (char 0x27), but instead the undirected quote from cmtt (char 0x0d). | 2687 | % (char 0x27), but instead the undirected quote from cmtt (char 0x0d). |
| @@ -3744,8 +3743,8 @@ $$% | |||
| 3744 | want the contents after the title page.}}% | 3743 | want the contents after the title page.}}% |
| 3745 | 3744 | ||
| 3746 | \parseargdef\shorttitlepage{% | 3745 | \parseargdef\shorttitlepage{% |
| 3747 | \begingroup \hbox{}\vskip 1.5in \chaprm \centerline{#1}% | 3746 | {\headingsoff \begingroup \hbox{}\vskip 1.5in \chaprm \centerline{#1}% |
| 3748 | \endgroup\page\hbox{}\page} | 3747 | \endgroup\page\hbox{}\page}\pageone} |
| 3749 | 3748 | ||
| 3750 | \envdef\titlepage{% | 3749 | \envdef\titlepage{% |
| 3751 | % Open one extra group, as we want to close it in the middle of \Etitlepage. | 3750 | % Open one extra group, as we want to close it in the middle of \Etitlepage. |
| @@ -4795,21 +4794,6 @@ $$% | |||
| 4795 | \def\docodeindexxxx #1{\docind{\indexname}{#1}} | 4794 | \def\docodeindexxxx #1{\docind{\indexname}{#1}} |
| 4796 | 4795 | ||
| 4797 | 4796 | ||
| 4798 | % Used for the aux, toc and index files to prevent expansion of Texinfo | ||
| 4799 | % commands. | ||
| 4800 | % | ||
| 4801 | \def\atdummies{% | ||
| 4802 | \definedummyletter\@% | ||
| 4803 | \definedummyletter\ % | ||
| 4804 | \definedummyletter\{% | ||
| 4805 | \definedummyletter\}% | ||
| 4806 | \definedummyletter\&% | ||
| 4807 | % | ||
| 4808 | % Do the redefinitions. | ||
| 4809 | \definedummies | ||
| 4810 | \otherbackslash | ||
| 4811 | } | ||
| 4812 | |||
| 4813 | % \definedummyword defines \#1 as \string\#1\space, thus effectively | 4797 | % \definedummyword defines \#1 as \string\#1\space, thus effectively |
| 4814 | % preventing its expansion. This is used only for control words, | 4798 | % preventing its expansion. This is used only for control words, |
| 4815 | % not control letters, because the \space would be incorrect for | 4799 | % not control letters, because the \space would be incorrect for |
| @@ -4825,110 +4809,91 @@ $$% | |||
| 4825 | % | 4809 | % |
| 4826 | \def\definedummyword #1{\def#1{\string#1\space}}% | 4810 | \def\definedummyword #1{\def#1{\string#1\space}}% |
| 4827 | \def\definedummyletter#1{\def#1{\string#1}}% | 4811 | \def\definedummyletter#1{\def#1{\string#1}}% |
| 4828 | \let\definedummyaccent\definedummyletter | ||
| 4829 | 4812 | ||
| 4830 | % Called from \atdummies to prevent the expansion of commands. | 4813 | % Used for the aux, toc and index files to prevent expansion of Texinfo |
| 4814 | % commands. Most of the commands are controlled through the | ||
| 4815 | % \ifdummies conditional. | ||
| 4831 | % | 4816 | % |
| 4832 | \def\definedummies{% | 4817 | \def\atdummies{% |
| 4818 | \dummiestrue | ||
| 4833 | % | 4819 | % |
| 4834 | \let\commondummyword\definedummyword | 4820 | \definedummyletter\@% |
| 4835 | \let\commondummyletter\definedummyletter | 4821 | \definedummyletter\ % |
| 4836 | \let\commondummyaccent\definedummyaccent | 4822 | \definedummyletter\{% |
| 4837 | \commondummiesnofonts | 4823 | \definedummyletter\}% |
| 4824 | \definedummyletter\&% | ||
| 4838 | % | 4825 | % |
| 4839 | \definedummyletter\_% | 4826 | \definedummyletter\_% |
| 4840 | \definedummyletter\-% | 4827 | \definedummyletter\-% |
| 4841 | % | 4828 | % |
| 4842 | % Non-English letters. | ||
| 4843 | \definedummyword\AA | ||
| 4844 | \definedummyword\AE | ||
| 4845 | \definedummyword\DH | ||
| 4846 | \definedummyword\L | ||
| 4847 | \definedummyword\O | ||
| 4848 | \definedummyword\OE | ||
| 4849 | \definedummyword\TH | ||
| 4850 | \definedummyword\aa | ||
| 4851 | \definedummyword\ae | ||
| 4852 | \definedummyword\dh | ||
| 4853 | \definedummyword\exclamdown | ||
| 4854 | \definedummyword\l | ||
| 4855 | \definedummyword\o | ||
| 4856 | \definedummyword\oe | ||
| 4857 | \definedummyword\ordf | ||
| 4858 | \definedummyword\ordm | ||
| 4859 | \definedummyword\questiondown | ||
| 4860 | \definedummyword\ss | ||
| 4861 | \definedummyword\th | ||
| 4862 | % | ||
| 4863 | % Although these internal commands shouldn't show up, sometimes they do. | ||
| 4864 | \definedummyword\bf | ||
| 4865 | \definedummyword\gtr | ||
| 4866 | \definedummyword\hat | ||
| 4867 | \definedummyword\less | ||
| 4868 | \definedummyword\sf | ||
| 4869 | \definedummyword\sl | ||
| 4870 | \definedummyword\tclose | ||
| 4871 | \definedummyword\tt | ||
| 4872 | % | ||
| 4873 | \definedummyword\LaTeX | ||
| 4874 | \definedummyword\TeX | ||
| 4875 | % | ||
| 4876 | % Assorted special characters. | ||
| 4877 | \definedummyword\ampchar | ||
| 4878 | \definedummyword\atchar | ||
| 4879 | \definedummyword\arrow | ||
| 4880 | \definedummyword\backslashchar | ||
| 4881 | \definedummyword\bullet | ||
| 4882 | \definedummyword\comma | ||
| 4883 | \definedummyword\copyright | ||
| 4884 | \definedummyword\registeredsymbol | ||
| 4885 | \definedummyword\dots | ||
| 4886 | \definedummyword\enddots | ||
| 4887 | \definedummyword\entrybreak | ||
| 4888 | \definedummyword\equiv | ||
| 4889 | \definedummyword\error | ||
| 4890 | \definedummyword\euro | ||
| 4891 | \definedummyword\expansion | ||
| 4892 | \definedummyword\geq | ||
| 4893 | \definedummyword\guillemetleft | ||
| 4894 | \definedummyword\guillemetright | ||
| 4895 | \definedummyword\guilsinglleft | ||
| 4896 | \definedummyword\guilsinglright | ||
| 4897 | \definedummyword\lbracechar | ||
| 4898 | \definedummyword\leq | ||
| 4899 | \definedummyword\mathopsup | ||
| 4900 | \definedummyword\minus | ||
| 4901 | \definedummyword\ogonek | ||
| 4902 | \definedummyword\pounds | ||
| 4903 | \definedummyword\point | ||
| 4904 | \definedummyword\print | ||
| 4905 | \definedummyword\quotedblbase | ||
| 4906 | \definedummyword\quotedblleft | ||
| 4907 | \definedummyword\quotedblright | ||
| 4908 | \definedummyword\quoteleft | ||
| 4909 | \definedummyword\quoteright | ||
| 4910 | \definedummyword\quotesinglbase | ||
| 4911 | \definedummyword\rbracechar | ||
| 4912 | \definedummyword\result | ||
| 4913 | \definedummyword\sub | ||
| 4914 | \definedummyword\sup | ||
| 4915 | \definedummyword\textdegree | ||
| 4916 | % | ||
| 4917 | \definedummyword\subentry | 4829 | \definedummyword\subentry |
| 4918 | % | 4830 | % |
| 4919 | % We want to disable all macros so that they are not expanded by \write. | 4831 | % We want to disable all macros so that they are not expanded by \write. |
| 4832 | \let\commondummyword\definedummyword | ||
| 4920 | \macrolist | 4833 | \macrolist |
| 4921 | \let\value\dummyvalue | 4834 | \let\value\dummyvalue |
| 4922 | % | 4835 | % |
| 4923 | \normalturnoffactive | 4836 | \turnoffactive |
| 4924 | } | 4837 | } |
| 4925 | 4838 | ||
| 4926 | % \commondummiesnofonts: common to \definedummies and \indexnofonts. | 4839 | \newif\ifdummies |
| 4927 | % Define \commondummyletter, \commondummyaccent and \commondummyword before | 4840 | \newif\ifindexnofonts |
| 4928 | % using. Used for accents, font commands, and various control letters. | 4841 | |
| 4929 | % | 4842 | \def\commondummyletter#1{% |
| 4930 | \def\commondummiesnofonts{% | 4843 | \expandafter\let\csname\string#1:impl\endcsname#1% |
| 4931 | % Control letters and accents. | 4844 | \edef#1{% |
| 4845 | \noexpand\ifindexnofonts | ||
| 4846 | % empty expansion | ||
| 4847 | \noexpand\else | ||
| 4848 | \noexpand\ifdummies\string#1% | ||
| 4849 | \noexpand\else | ||
| 4850 | \noexpand\jumptwofi % dispose of the \fi | ||
| 4851 | \expandafter\noexpand\csname\string#1:impl\endcsname | ||
| 4852 | \noexpand\fi | ||
| 4853 | \noexpand\fi}% | ||
| 4854 | } | ||
| 4855 | |||
| 4856 | \def\commondummyaccent#1{% | ||
| 4857 | \expandafter\let\csname\string#1:impl\endcsname#1% | ||
| 4858 | \edef#1{% | ||
| 4859 | \noexpand\ifindexnofonts | ||
| 4860 | \noexpand\expandafter % dispose of \else ... \fi | ||
| 4861 | \noexpand\asis | ||
| 4862 | \noexpand\else | ||
| 4863 | \noexpand\ifdummies\string#1% | ||
| 4864 | \noexpand\else | ||
| 4865 | \noexpand\jumptwofi % dispose of the \fi | ||
| 4866 | \expandafter\noexpand\csname\string#1:impl\endcsname | ||
| 4867 | \noexpand\fi | ||
| 4868 | \noexpand\fi}% | ||
| 4869 | } | ||
| 4870 | |||
| 4871 | % Like \commondummyaccent but add a \space at the end of the dummy expansion | ||
| 4872 | % #2 is the expansion used for \indexnofonts. #2 is always followed by | ||
| 4873 | % \asis to remove a pair of following braces. | ||
| 4874 | \def\commondummyword#1#2{% | ||
| 4875 | \expandafter\let\csname\string#1:impl\endcsname#1% | ||
| 4876 | \expandafter\def\csname\string#1:ixnf\endcsname{#2\asis}% | ||
| 4877 | \edef#1{% | ||
| 4878 | \noexpand\ifindexnofonts | ||
| 4879 | \noexpand\expandafter % dispose of \else ... \fi | ||
| 4880 | \expandafter\noexpand\csname\string#1:ixnf\endcsname | ||
| 4881 | \noexpand\else | ||
| 4882 | \noexpand\ifdummies\string#1\space | ||
| 4883 | \noexpand\else | ||
| 4884 | \noexpand\jumptwofi % dispose of the \fi \fi | ||
| 4885 | \expandafter\noexpand\csname\string#1:impl\endcsname | ||
| 4886 | \noexpand\fi | ||
| 4887 | \noexpand\fi}% | ||
| 4888 | } | ||
| 4889 | \def\jumptwofi#1\fi\fi{\fi\fi#1} | ||
| 4890 | |||
| 4891 | % For \atdummies and \indexnofonts. \atdummies sets | ||
| 4892 | % \dummiestrue and \indexnofonts sets \indexnofontstrue. | ||
| 4893 | \def\definedummies{ | ||
| 4894 | % @-sign is always an escape character when reading auxiliary files | ||
| 4895 | \escapechar = `\@ | ||
| 4896 | % | ||
| 4932 | \commondummyletter\!% | 4897 | \commondummyletter\!% |
| 4933 | \commondummyaccent\"% | 4898 | \commondummyaccent\"% |
| 4934 | \commondummyaccent\'% | 4899 | \commondummyaccent\'% |
| @@ -4942,58 +4907,123 @@ $$% | |||
| 4942 | \commondummyaccent\^% | 4907 | \commondummyaccent\^% |
| 4943 | \commondummyaccent\`% | 4908 | \commondummyaccent\`% |
| 4944 | \commondummyaccent\~% | 4909 | \commondummyaccent\~% |
| 4945 | \commondummyword\u | 4910 | % |
| 4946 | \commondummyword\v | 4911 | % Control letters and accents. |
| 4947 | \commondummyword\H | 4912 | \commondummyword\u {}% |
| 4948 | \commondummyword\dotaccent | 4913 | \commondummyword\v {}% |
| 4949 | \commondummyword\ogonek | 4914 | \commondummyword\H {}% |
| 4950 | \commondummyword\ringaccent | 4915 | \commondummyword\dotaccent {}% |
| 4951 | \commondummyword\tieaccent | 4916 | \commondummyword\ogonek {}% |
| 4952 | \commondummyword\ubaraccent | 4917 | \commondummyword\ringaccent {}% |
| 4953 | \commondummyword\udotaccent | 4918 | \commondummyword\tieaccent {}% |
| 4954 | \commondummyword\dotless | 4919 | \commondummyword\ubaraccent {}% |
| 4920 | \commondummyword\udotaccent {}% | ||
| 4921 | \commondummyword\dotless {}% | ||
| 4955 | % | 4922 | % |
| 4956 | % Texinfo font commands. | 4923 | % Texinfo font commands. |
| 4957 | \commondummyword\b | 4924 | \commondummyword\b {}% |
| 4958 | \commondummyword\i | 4925 | \commondummyword\i {}% |
| 4959 | \commondummyword\r | 4926 | \commondummyword\r {}% |
| 4960 | \commondummyword\sansserif | 4927 | \commondummyword\sansserif {}% |
| 4961 | \commondummyword\sc | 4928 | \commondummyword\sc {}% |
| 4962 | \commondummyword\slanted | 4929 | \commondummyword\slanted {}% |
| 4963 | \commondummyword\t | 4930 | \commondummyword\t {}% |
| 4964 | % | 4931 | % |
| 4965 | % Commands that take arguments. | 4932 | % Commands that take arguments. |
| 4966 | \commondummyword\abbr | 4933 | \commondummyword\abbr {}% |
| 4967 | \commondummyword\acronym | 4934 | \commondummyword\acronym {}% |
| 4968 | \commondummyword\anchor | 4935 | \commondummyword\anchor {}% |
| 4969 | \commondummyword\cite | 4936 | \commondummyword\cite {}% |
| 4970 | \commondummyword\code | 4937 | \commondummyword\code {}% |
| 4971 | \commondummyword\command | 4938 | \commondummyword\command {}% |
| 4972 | \commondummyword\dfn | 4939 | \commondummyword\dfn {}% |
| 4973 | \commondummyword\dmn | 4940 | \commondummyword\dmn {}% |
| 4974 | \commondummyword\email | 4941 | \commondummyword\email {}% |
| 4975 | \commondummyword\emph | 4942 | \commondummyword\emph {}% |
| 4976 | \commondummyword\env | 4943 | \commondummyword\env {}% |
| 4977 | \commondummyword\file | 4944 | \commondummyword\file {}% |
| 4978 | \commondummyword\image | 4945 | \commondummyword\image {}% |
| 4979 | \commondummyword\indicateurl | 4946 | \commondummyword\indicateurl{}% |
| 4980 | \commondummyword\inforef | 4947 | \commondummyword\inforef {}% |
| 4981 | \commondummyword\kbd | 4948 | \commondummyword\kbd {}% |
| 4982 | \commondummyword\key | 4949 | \commondummyword\key {}% |
| 4983 | \commondummyword\math | 4950 | \commondummyword\math {}% |
| 4984 | \commondummyword\option | 4951 | \commondummyword\option {}% |
| 4985 | \commondummyword\pxref | 4952 | \commondummyword\pxref {}% |
| 4986 | \commondummyword\ref | 4953 | \commondummyword\ref {}% |
| 4987 | \commondummyword\samp | 4954 | \commondummyword\samp {}% |
| 4988 | \commondummyword\strong | 4955 | \commondummyword\strong {}% |
| 4989 | \commondummyword\tie | 4956 | \commondummyword\tie {}% |
| 4990 | \commondummyword\U | 4957 | \commondummyword\U {}% |
| 4991 | \commondummyword\uref | 4958 | \commondummyword\uref {}% |
| 4992 | \commondummyword\url | 4959 | \commondummyword\url {}% |
| 4993 | \commondummyword\var | 4960 | \commondummyword\var {}% |
| 4994 | \commondummyword\verb | 4961 | \commondummyword\verb {}% |
| 4995 | \commondummyword\w | 4962 | \commondummyword\w {}% |
| 4996 | \commondummyword\xref | 4963 | \commondummyword\xref {}% |
| 4964 | % | ||
| 4965 | \commondummyword\AA {AA}% | ||
| 4966 | \commondummyword\AE {AE}% | ||
| 4967 | \commondummyword\DH {DZZ}% | ||
| 4968 | \commondummyword\L {L}% | ||
| 4969 | \commondummyword\O {O}% | ||
| 4970 | \commondummyword\OE {OE}% | ||
| 4971 | \commondummyword\TH {TH}% | ||
| 4972 | \commondummyword\aa {aa}% | ||
| 4973 | \commondummyword\ae {ae}% | ||
| 4974 | \commondummyword\dh {dzz}% | ||
| 4975 | \commondummyword\exclamdown {!}% | ||
| 4976 | \commondummyword\l {l}% | ||
| 4977 | \commondummyword\o {o}% | ||
| 4978 | \commondummyword\oe {oe}% | ||
| 4979 | \commondummyword\ordf {a}% | ||
| 4980 | \commondummyword\ordm {o}% | ||
| 4981 | \commondummyword\questiondown {?}% | ||
| 4982 | \commondummyword\ss {ss}% | ||
| 4983 | \commondummyword\th {th}% | ||
| 4984 | % | ||
| 4985 | \commondummyword\LaTeX {LaTeX}% | ||
| 4986 | \commondummyword\TeX {TeX}% | ||
| 4987 | % | ||
| 4988 | % Assorted special characters. | ||
| 4989 | \commondummyword\ampchar {\normalamp}% | ||
| 4990 | \commondummyword\atchar {\@}% | ||
| 4991 | \commondummyword\arrow {->}% | ||
| 4992 | \commondummyword\backslashchar {}% | ||
| 4993 | \commondummyword\bullet {bullet}% | ||
| 4994 | \commondummyword\comma {,}% | ||
| 4995 | \commondummyword\copyright {copyright}% | ||
| 4996 | \commondummyword\dots {...}% | ||
| 4997 | \commondummyword\enddots {...}% | ||
| 4998 | \commondummyword\entrybreak {}% | ||
| 4999 | \commondummyword\equiv {===}% | ||
| 5000 | \commondummyword\error {error}% | ||
| 5001 | \commondummyword\euro {euro}% | ||
| 5002 | \commondummyword\expansion {==>}% | ||
| 5003 | \commondummyword\geq {>=}% | ||
| 5004 | \commondummyword\guillemetleft {<<}% | ||
| 5005 | \commondummyword\guillemetright {>>}% | ||
| 5006 | \commondummyword\guilsinglleft {<}% | ||
| 5007 | \commondummyword\guilsinglright {>}% | ||
| 5008 | \commondummyword\lbracechar {\{}% | ||
| 5009 | \commondummyword\leq {<=}% | ||
| 5010 | \commondummyword\mathopsup {sup}% | ||
| 5011 | \commondummyword\minus {-}% | ||
| 5012 | \commondummyword\pounds {pounds}% | ||
| 5013 | \commondummyword\point {.}% | ||
| 5014 | \commondummyword\print {-|}% | ||
| 5015 | \commondummyword\quotedblbase {"}% | ||
| 5016 | \commondummyword\quotedblleft {"}% | ||
| 5017 | \commondummyword\quotedblright {"}% | ||
| 5018 | \commondummyword\quoteleft {`}% | ||
| 5019 | \commondummyword\quoteright {'}% | ||
| 5020 | \commondummyword\quotesinglbase {,}% | ||
| 5021 | \commondummyword\rbracechar {\}}% | ||
| 5022 | \commondummyword\registeredsymbol {R}% | ||
| 5023 | \commondummyword\result {=>}% | ||
| 5024 | \commondummyword\sub {}% | ||
| 5025 | \commondummyword\sup {}% | ||
| 5026 | \commondummyword\textdegree {o}% | ||
| 4997 | } | 5027 | } |
| 4998 | 5028 | ||
| 4999 | \let\indexlbrace\relax | 5029 | \let\indexlbrace\relax |
| @@ -5044,18 +5074,7 @@ $$% | |||
| 5044 | % would be for a given command (usually its argument). | 5074 | % would be for a given command (usually its argument). |
| 5045 | % | 5075 | % |
| 5046 | \def\indexnofonts{% | 5076 | \def\indexnofonts{% |
| 5047 | % Accent commands should become @asis. | 5077 | \indexnofontstrue |
| 5048 | \def\commondummyaccent##1{\let##1\asis}% | ||
| 5049 | % We can just ignore other control letters. | ||
| 5050 | \def\commondummyletter##1{\let##1\empty}% | ||
| 5051 | % All control words become @asis by default; overrides below. | ||
| 5052 | \let\commondummyword\commondummyaccent | ||
| 5053 | \commondummiesnofonts | ||
| 5054 | % | ||
| 5055 | % Don't no-op \tt, since it isn't a user-level command | ||
| 5056 | % and is used in the definitions of the active chars like <, >, |, etc. | ||
| 5057 | % Likewise with the other plain tex font commands. | ||
| 5058 | %\let\tt=\asis | ||
| 5059 | % | 5078 | % |
| 5060 | \def\ { }% | 5079 | \def\ { }% |
| 5061 | \def\@{@}% | 5080 | \def\@{@}% |
| @@ -5067,65 +5086,6 @@ $$% | |||
| 5067 | \let\lbracechar\{% | 5086 | \let\lbracechar\{% |
| 5068 | \let\rbracechar\}% | 5087 | \let\rbracechar\}% |
| 5069 | % | 5088 | % |
| 5070 | % Non-English letters. | ||
| 5071 | \def\AA{AA}% | ||
| 5072 | \def\AE{AE}% | ||
| 5073 | \def\DH{DZZ}% | ||
| 5074 | \def\L{L}% | ||
| 5075 | \def\OE{OE}% | ||
| 5076 | \def\O{O}% | ||
| 5077 | \def\TH{TH}% | ||
| 5078 | \def\aa{aa}% | ||
| 5079 | \def\ae{ae}% | ||
| 5080 | \def\dh{dzz}% | ||
| 5081 | \def\exclamdown{!}% | ||
| 5082 | \def\l{l}% | ||
| 5083 | \def\oe{oe}% | ||
| 5084 | \def\ordf{a}% | ||
| 5085 | \def\ordm{o}% | ||
| 5086 | \def\o{o}% | ||
| 5087 | \def\questiondown{?}% | ||
| 5088 | \def\ss{ss}% | ||
| 5089 | \def\th{th}% | ||
| 5090 | % | ||
| 5091 | \let\do\indexnofontsdef | ||
| 5092 | % | ||
| 5093 | \do\LaTeX{LaTeX}% | ||
| 5094 | \do\TeX{TeX}% | ||
| 5095 | % | ||
| 5096 | % Assorted special characters. | ||
| 5097 | \do\atchar{@}% | ||
| 5098 | \do\arrow{->}% | ||
| 5099 | \do\bullet{bullet}% | ||
| 5100 | \do\comma{,}% | ||
| 5101 | \do\copyright{copyright}% | ||
| 5102 | \do\dots{...}% | ||
| 5103 | \do\enddots{...}% | ||
| 5104 | \do\equiv{==}% | ||
| 5105 | \do\error{error}% | ||
| 5106 | \do\euro{euro}% | ||
| 5107 | \do\expansion{==>}% | ||
| 5108 | \do\geq{>=}% | ||
| 5109 | \do\guillemetleft{<<}% | ||
| 5110 | \do\guillemetright{>>}% | ||
| 5111 | \do\guilsinglleft{<}% | ||
| 5112 | \do\guilsinglright{>}% | ||
| 5113 | \do\leq{<=}% | ||
| 5114 | \do\lbracechar{\{}% | ||
| 5115 | \do\minus{-}% | ||
| 5116 | \do\point{.}% | ||
| 5117 | \do\pounds{pounds}% | ||
| 5118 | \do\print{-|}% | ||
| 5119 | \do\quotedblbase{"}% | ||
| 5120 | \do\quotedblleft{"}% | ||
| 5121 | \do\quotedblright{"}% | ||
| 5122 | \do\quoteleft{`}% | ||
| 5123 | \do\quoteright{'}% | ||
| 5124 | \do\quotesinglbase{,}% | ||
| 5125 | \do\rbracechar{\}}% | ||
| 5126 | \do\registeredsymbol{R}% | ||
| 5127 | \do\result{=>}% | ||
| 5128 | \do\textdegree{o}% | ||
| 5129 | % | 5089 | % |
| 5130 | % We need to get rid of all macros, leaving only the arguments (if present). | 5090 | % We need to get rid of all macros, leaving only the arguments (if present). |
| 5131 | % Of course this is not nearly correct, but it is the best we can do for now. | 5091 | % Of course this is not nearly correct, but it is the best we can do for now. |
| @@ -5137,14 +5097,11 @@ $$% | |||
| 5137 | % to take a single TeX argument. The case of a macro invocation that | 5097 | % to take a single TeX argument. The case of a macro invocation that |
| 5138 | % goes to end-of-line is not handled. | 5098 | % goes to end-of-line is not handled. |
| 5139 | % | 5099 | % |
| 5100 | \def\commondummyword##1{\let##1\asis}% | ||
| 5140 | \macrolist | 5101 | \macrolist |
| 5141 | \let\value\indexnofontsvalue | 5102 | \let\value\indexnofontsvalue |
| 5142 | } | 5103 | } |
| 5143 | 5104 | ||
| 5144 | % Give the control sequence a definition that removes the {} that follows | ||
| 5145 | % its use, e.g. @AA{} -> AA | ||
| 5146 | \def\indexnofontsdef#1#2{\def#1##1{#2}}% | ||
| 5147 | |||
| 5148 | 5105 | ||
| 5149 | 5106 | ||
| 5150 | 5107 | ||
| @@ -7135,8 +7092,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% | |||
| 7135 | \newdimen\cartouter\newdimen\cartinner | 7092 | \newdimen\cartouter\newdimen\cartinner |
| 7136 | \newskip\normbskip\newskip\normpskip\newskip\normlskip | 7093 | \newskip\normbskip\newskip\normpskip\newskip\normlskip |
| 7137 | 7094 | ||
| 7138 | 7095 | \envparseargdef\cartouche{% | |
| 7139 | \envdef\cartouche{% | ||
| 7140 | \cartouchefontdefs | 7096 | \cartouchefontdefs |
| 7141 | \ifhmode\par\fi % can't be in the midst of a paragraph. | 7097 | \ifhmode\par\fi % can't be in the midst of a paragraph. |
| 7142 | \startsavinginserts | 7098 | \startsavinginserts |
| @@ -7166,16 +7122,19 @@ might help (with 'rm \jobname.?? \jobname.??s')% | |||
| 7166 | \baselineskip=0pt\parskip=0pt\lineskip=0pt | 7122 | \baselineskip=0pt\parskip=0pt\lineskip=0pt |
| 7167 | \carttop | 7123 | \carttop |
| 7168 | \hbox\bgroup | 7124 | \hbox\bgroup |
| 7169 | \hskip\lskip | 7125 | \hskip\lskip |
| 7170 | \vrule\kern3pt | 7126 | \vrule\kern3pt |
| 7171 | \vbox\bgroup | 7127 | \vbox\bgroup |
| 7172 | \kern3pt | 7128 | \hsize=\cartinner |
| 7173 | \hsize=\cartinner | 7129 | \baselineskip=\normbskip |
| 7174 | \baselineskip=\normbskip | 7130 | \lineskip=\normlskip |
| 7175 | \lineskip=\normlskip | 7131 | \parskip=\normpskip |
| 7176 | \parskip=\normpskip | 7132 | \def\arg{#1}% |
| 7177 | \vskip -\parskip | 7133 | \ifx\arg\empty\else |
| 7178 | \comment % For explanation, see the end of def\group. | 7134 | \centerV{\hfil \bf #1 \hfil}% |
| 7135 | \fi | ||
| 7136 | \kern3pt | ||
| 7137 | \vskip -\parskip | ||
| 7179 | } | 7138 | } |
| 7180 | \def\Ecartouche{% | 7139 | \def\Ecartouche{% |
| 7181 | \ifhmode\par\fi | 7140 | \ifhmode\par\fi |
| @@ -7858,10 +7817,12 @@ might help (with 'rm \jobname.?? \jobname.??s')% | |||
| 7858 | 7817 | ||
| 7859 | % Print arguments. Use slanted for @def*, typewriter for @deftype*. | 7818 | % Print arguments. Use slanted for @def*, typewriter for @deftype*. |
| 7860 | \def\defunargs#1{% | 7819 | \def\defunargs#1{% |
| 7861 | \df \ifdoingtypefn \tt \else \sl \fi | 7820 | \bgroup |
| 7862 | \ifflagclear{txicodevaristt}{}% | 7821 | \df \ifdoingtypefn \tt \else \sl \fi |
| 7863 | {\def\var##1{{\setregularquotes \ttsl ##1}}}% | 7822 | \ifflagclear{txicodevaristt}{}% |
| 7864 | #1% | 7823 | {\def\var##1{{\setregularquotes \ttsl ##1}}}% |
| 7824 | #1% | ||
| 7825 | \egroup | ||
| 7865 | } | 7826 | } |
| 7866 | 7827 | ||
| 7867 | % We want ()&[] to print specially on the defun line. | 7828 | % We want ()&[] to print specially on the defun line. |
| @@ -9900,12 +9861,10 @@ directory should work if nowhere else does.} | |||
| 9900 | % For native Unicode handling (XeTeX and LuaTeX) | 9861 | % For native Unicode handling (XeTeX and LuaTeX) |
| 9901 | \nativeunicodechardefs | 9862 | \nativeunicodechardefs |
| 9902 | \else | 9863 | \else |
| 9903 | % For treating UTF-8 as byte sequences (TeX, eTeX and pdfTeX) | 9864 | % For treating UTF-8 as byte sequences (TeX, eTeX and pdfTeX). |
| 9865 | % Since we already invoke \utfeightchardefs at the top level, | ||
| 9866 | % making non-ascii chars active is sufficient. | ||
| 9904 | \setnonasciicharscatcode\active | 9867 | \setnonasciicharscatcode\active |
| 9905 | % since we already invoked \utfeightchardefs at the top level | ||
| 9906 | % (below), do not re-invoke it, otherwise our check for duplicated | ||
| 9907 | % definitions gets triggered. Making non-ascii chars active is | ||
| 9908 | % sufficient. | ||
| 9909 | \fi | 9868 | \fi |
| 9910 | % | 9869 | % |
| 9911 | \else | 9870 | \else |
| @@ -9930,7 +9889,6 @@ directory should work if nowhere else does.} | |||
| 9930 | \fi | 9889 | \fi |
| 9931 | } | 9890 | } |
| 9932 | 9891 | ||
| 9933 | % emacs-page | ||
| 9934 | % A message to be logged when using a character that isn't available | 9892 | % A message to be logged when using a character that isn't available |
| 9935 | % the default font encoding (OT1). | 9893 | % the default font encoding (OT1). |
| 9936 | % | 9894 | % |
| @@ -9939,12 +9897,6 @@ directory should work if nowhere else does.} | |||
| 9939 | % Take account of \c (plain) vs. \, (Texinfo) difference. | 9897 | % Take account of \c (plain) vs. \, (Texinfo) difference. |
| 9940 | \def\cedilla#1{\ifx\c\ptexc\c{#1}\else\,{#1}\fi} | 9898 | \def\cedilla#1{\ifx\c\ptexc\c{#1}\else\,{#1}\fi} |
| 9941 | 9899 | ||
| 9942 | % First, make active non-ASCII characters in order for them to be | ||
| 9943 | % correctly categorized when TeX reads the replacement text of | ||
| 9944 | % macros containing the character definitions. | ||
| 9945 | \setnonasciicharscatcode\active | ||
| 9946 | % | ||
| 9947 | |||
| 9948 | \def\gdefchar#1#2{% | 9900 | \def\gdefchar#1#2{% |
| 9949 | \gdef#1{% | 9901 | \gdef#1{% |
| 9950 | \ifpassthroughchars | 9902 | \ifpassthroughchars |
| @@ -9954,8 +9906,14 @@ directory should work if nowhere else does.} | |||
| 9954 | \fi | 9906 | \fi |
| 9955 | }} | 9907 | }} |
| 9956 | 9908 | ||
| 9909 | \begingroup | ||
| 9910 | |||
| 9911 | % Make non-ASCII characters active for defining the character definition | ||
| 9912 | % macros. | ||
| 9913 | \setnonasciicharscatcode\active | ||
| 9914 | |||
| 9957 | % Latin1 (ISO-8859-1) character definitions. | 9915 | % Latin1 (ISO-8859-1) character definitions. |
| 9958 | \def\latonechardefs{% | 9916 | \gdef\latonechardefs{% |
| 9959 | \gdefchar^^a0{\tie} | 9917 | \gdefchar^^a0{\tie} |
| 9960 | \gdefchar^^a1{\exclamdown} | 9918 | \gdefchar^^a1{\exclamdown} |
| 9961 | \gdefchar^^a2{{\tcfont \char162}} % cent | 9919 | \gdefchar^^a2{{\tcfont \char162}} % cent |
| @@ -10060,7 +10018,7 @@ directory should work if nowhere else does.} | |||
| 10060 | } | 10018 | } |
| 10061 | 10019 | ||
| 10062 | % Latin9 (ISO-8859-15) encoding character definitions. | 10020 | % Latin9 (ISO-8859-15) encoding character definitions. |
| 10063 | \def\latninechardefs{% | 10021 | \gdef\latninechardefs{% |
| 10064 | % Encoding is almost identical to Latin1. | 10022 | % Encoding is almost identical to Latin1. |
| 10065 | \latonechardefs | 10023 | \latonechardefs |
| 10066 | % | 10024 | % |
| @@ -10075,7 +10033,7 @@ directory should work if nowhere else does.} | |||
| 10075 | } | 10033 | } |
| 10076 | 10034 | ||
| 10077 | % Latin2 (ISO-8859-2) character definitions. | 10035 | % Latin2 (ISO-8859-2) character definitions. |
| 10078 | \def\lattwochardefs{% | 10036 | \gdef\lattwochardefs{% |
| 10079 | \gdefchar^^a0{\tie} | 10037 | \gdefchar^^a0{\tie} |
| 10080 | \gdefchar^^a1{\ogonek{A}} | 10038 | \gdefchar^^a1{\ogonek{A}} |
| 10081 | \gdefchar^^a2{\u{}} | 10039 | \gdefchar^^a2{\u{}} |
| @@ -10179,6 +10137,8 @@ directory should work if nowhere else does.} | |||
| 10179 | \gdefchar^^ff{\dotaccent{}} | 10137 | \gdefchar^^ff{\dotaccent{}} |
| 10180 | } | 10138 | } |
| 10181 | 10139 | ||
| 10140 | \endgroup % active chars | ||
| 10141 | |||
| 10182 | % UTF-8 character definitions. | 10142 | % UTF-8 character definitions. |
| 10183 | % | 10143 | % |
| 10184 | % This code to support UTF-8 is based on LaTeX's utf8.def, with some | 10144 | % This code to support UTF-8 is based on LaTeX's utf8.def, with some |
| @@ -11231,14 +11191,14 @@ directory should work if nowhere else does.} | |||
| 11231 | \relax | 11191 | \relax |
| 11232 | } | 11192 | } |
| 11233 | 11193 | ||
| 11234 | % Define all Unicode characters we know about. This makes UTF-8 the default | 11194 | % Define all Unicode characters we know about |
| 11235 | % input encoding and allows @U to work. | ||
| 11236 | \iftxinativeunicodecapable | 11195 | \iftxinativeunicodecapable |
| 11237 | \nativeunicodechardefsatu | 11196 | \nativeunicodechardefsatu |
| 11238 | \else | 11197 | \else |
| 11239 | \utfeightchardefs | 11198 | \utfeightchardefs |
| 11240 | \fi | 11199 | \fi |
| 11241 | 11200 | ||
| 11201 | |||
| 11242 | \message{formatting,} | 11202 | \message{formatting,} |
| 11243 | 11203 | ||
| 11244 | \newdimen\defaultparindent \defaultparindent = 15pt | 11204 | \newdimen\defaultparindent \defaultparindent = 15pt |
| @@ -11566,7 +11526,7 @@ directory should work if nowhere else does.} | |||
| 11566 | \fi | 11526 | \fi |
| 11567 | } | 11527 | } |
| 11568 | 11528 | ||
| 11569 | \microtypeON | 11529 | \microtypeOFF |
| 11570 | 11530 | ||
| 11571 | \parseargdef\microtype{% | 11531 | \parseargdef\microtype{% |
| 11572 | \def\txiarg{#1}% | 11532 | \def\txiarg{#1}% |
| @@ -11583,6 +11543,9 @@ directory should work if nowhere else does.} | |||
| 11583 | 11543 | ||
| 11584 | \message{and turning on texinfo input format.} | 11544 | \message{and turning on texinfo input format.} |
| 11585 | 11545 | ||
| 11546 | % Make UTF-8 the default encoding. | ||
| 11547 | \documentencodingzzz{UTF-8} | ||
| 11548 | |||
| 11586 | \def^^L{\par} % remove \outer, so ^L can appear in an @comment | 11549 | \def^^L{\par} % remove \outer, so ^L can appear in an @comment |
| 11587 | \catcode`\^^K = 10 % treat vertical tab as whitespace | 11550 | \catcode`\^^K = 10 % treat vertical tab as whitespace |
| 11588 | 11551 | ||
| @@ -11645,23 +11608,32 @@ directory should work if nowhere else does.} | |||
| 11645 | % Used sometimes to turn off (effectively) the active characters even after | 11608 | % Used sometimes to turn off (effectively) the active characters even after |
| 11646 | % parsing them. | 11609 | % parsing them. |
| 11647 | \def\turnoffactive{% | 11610 | \def\turnoffactive{% |
| 11648 | \normalturnoffactive | 11611 | \passthroughcharstrue |
| 11612 | \let-=\normaldash | ||
| 11613 | \let"=\normaldoublequote | ||
| 11614 | \let$=\normaldollar %$ font-lock fix | ||
| 11615 | \let+=\normalplus | ||
| 11616 | \let<=\normalless | ||
| 11617 | \let>=\normalgreater | ||
| 11618 | \let^=\normalcaret | ||
| 11619 | \let_=\normalunderscore | ||
| 11620 | \let|=\normalverticalbar | ||
| 11621 | \let~=\normaltilde | ||
| 11649 | \otherbackslash | 11622 | \otherbackslash |
| 11623 | \setregularquotes | ||
| 11624 | \unsepspaces | ||
| 11650 | } | 11625 | } |
| 11651 | 11626 | ||
| 11652 | \catcode`\@=0 | 11627 | % If a .fmt file is being used, characters that might appear in a file |
| 11628 | % name cannot be active until we have parsed the command line. | ||
| 11629 | % So turn them off again, and have \loadconf turn them back on. | ||
| 11630 | \catcode`+=\other \catcode`\_=\other | ||
| 11631 | |||
| 11653 | 11632 | ||
| 11654 | % \backslashcurfont outputs one backslash character in current font, | 11633 | % \backslashcurfont outputs one backslash character in current font, |
| 11655 | % as in \char`\\. | 11634 | % as in \char`\\. |
| 11656 | \global\chardef\backslashcurfont=`\\ | 11635 | \global\chardef\backslashcurfont=`\\ |
| 11657 | 11636 | ||
| 11658 | % \realbackslash is an actual character `\' with catcode other. | ||
| 11659 | {\catcode`\\=\other @gdef@realbackslash{\}} | ||
| 11660 | |||
| 11661 | % In Texinfo, backslash is an active character; it prints the backslash | ||
| 11662 | % in fixed width font. | ||
| 11663 | \catcode`\\=\active % @ for escape char from now on. | ||
| 11664 | |||
| 11665 | % Print a typewriter backslash. For math mode, we can't simply use | 11637 | % Print a typewriter backslash. For math mode, we can't simply use |
| 11666 | % \backslashcurfont: the story here is that in math mode, the \char | 11638 | % \backslashcurfont: the story here is that in math mode, the \char |
| 11667 | % of \backslashcurfont ends up printing the roman \ from the math symbol | 11639 | % of \backslashcurfont ends up printing the roman \ from the math symbol |
| @@ -11671,109 +11643,120 @@ directory should work if nowhere else does.} | |||
| 11671 | % ignored family value; char position "5C). We can't use " for the | 11643 | % ignored family value; char position "5C). We can't use " for the |
| 11672 | % usual hex value because it has already been made active. | 11644 | % usual hex value because it has already been made active. |
| 11673 | 11645 | ||
| 11674 | @def@ttbackslash{{@tt @ifmmode @mathchar29020 @else @backslashcurfont @fi}} | 11646 | \def\ttbackslash{{\tt \ifmmode \mathchar29020 \else \backslashcurfont \fi}} |
| 11675 | @let@backslashchar = @ttbackslash % @backslashchar{} is for user documents. | 11647 | \let\backslashchar = \ttbackslash % \backslashchar{} is for user documents. |
| 11676 | |||
| 11677 | % \otherbackslash defines an active \ to be a literal `\' character with | ||
| 11678 | % catcode other. | ||
| 11679 | @gdef@otherbackslash{@let\=@realbackslash} | ||
| 11680 | |||
| 11681 | % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of | ||
| 11682 | % the literal character `\'. | ||
| 11683 | % | ||
| 11684 | {@catcode`- = @active | ||
| 11685 | @gdef@normalturnoffactive{% | ||
| 11686 | @passthroughcharstrue | ||
| 11687 | @let-=@normaldash | ||
| 11688 | @let"=@normaldoublequote | ||
| 11689 | @let$=@normaldollar %$ font-lock fix | ||
| 11690 | @let+=@normalplus | ||
| 11691 | @let<=@normalless | ||
| 11692 | @let>=@normalgreater | ||
| 11693 | @let^=@normalcaret | ||
| 11694 | @let_=@normalunderscore | ||
| 11695 | @let|=@normalverticalbar | ||
| 11696 | @let~=@normaltilde | ||
| 11697 | @let\=@ttbackslash | ||
| 11698 | @setregularquotes | ||
| 11699 | @unsepspaces | ||
| 11700 | } | ||
| 11701 | } | ||
| 11702 | 11648 | ||
| 11703 | % If a .fmt file is being used, characters that might appear in a file | 11649 | % These are made active for url-breaking, so need |
| 11704 | % name cannot be active until we have parsed the command line. | 11650 | % active definitions as the normal characters. |
| 11705 | % So turn them off again, and have @fixbackslash turn them back on. | 11651 | \def\normaldot{.} |
| 11706 | @catcode`+=@other @catcode`@_=@other | 11652 | \def\normalquest{?} |
| 11707 | 11653 | \def\normalslash{/} | |
| 11708 | % \enablebackslashhack - allow file to begin `\input texinfo' | 11654 | |
| 11709 | % | 11655 | % \newlinesloadsconf - call \loadconf as soon as possible in the |
| 11710 | % If a .fmt file is being used, we don't want the `\input texinfo' to show up. | 11656 | % file, e.g. at the first newline. |
| 11711 | % That is what \eatinput is for; after that, the `\' should revert to printing | 11657 | % |
| 11712 | % a backslash. | 11658 | {\catcode`\^=7 |
| 11713 | % If the file did not have a `\input texinfo', then it is turned off after | 11659 | \catcode`\^^M=13 |
| 11714 | % the first line; otherwise the first `\' in the file would cause an error. | 11660 | \gdef\newlineloadsconf{% |
| 11715 | % This is used on the very last line of this file, texinfo.tex. | 11661 | \catcode`\^^M=13 % |
| 11716 | % We also use @c to call @fixbackslash, in case ends of lines are hidden. | 11662 | \newlineloadsconfzz% |
| 11717 | { | 11663 | } |
| 11718 | @catcode`@^=7 | 11664 | \gdef\newlineloadsconfzz#1^^M{% |
| 11719 | @catcode`@^^M=13@gdef@enablebackslashhack{% | 11665 | \def\c{\loadconf\c}% |
| 11720 | @global@let\ = @eatinput% | 11666 | % Definition for the first newline read in the file |
| 11721 | @catcode`@^^M=13% | 11667 | \def ^^M{\loadconf}% |
| 11722 | @def@c{@fixbackslash@c}% | ||
| 11723 | % Definition for the newline at the end of this file. | ||
| 11724 | @def ^^M{@let^^M@secondlinenl}% | ||
| 11725 | % Definition for a newline in the main Texinfo file. | ||
| 11726 | @gdef @secondlinenl{@fixbackslash}% | ||
| 11727 | % In case the first line has a whole-line command on it | 11668 | % In case the first line has a whole-line command on it |
| 11728 | @let@originalparsearg@parsearg | 11669 | \let\originalparsearg\parsearg% |
| 11729 | @def@parsearg{@fixbackslash@originalparsearg} | 11670 | \def\parsearg{\loadconf\originalparsearg}% |
| 11730 | }} | 11671 | }} |
| 11731 | 11672 | ||
| 11732 | {@catcode`@^=7 @catcode`@^^M=13% | ||
| 11733 | @gdef@eatinput input texinfo#1^^M{@fixbackslash}} | ||
| 11734 | 11673 | ||
| 11735 | % Emergency active definition of newline, in case an active newline token | 11674 | % Emergency active definition of newline, in case an active newline token |
| 11736 | % appears by mistake. | 11675 | % appears by mistake. |
| 11737 | {@catcode`@^=7 @catcode13=13% | 11676 | {\catcode`\^=7 \catcode13=13% |
| 11738 | @gdef@enableemergencynewline{% | 11677 | \gdef\enableemergencynewline{% |
| 11739 | @gdef^^M{% | 11678 | \gdef^^M{% |
| 11740 | @par% | 11679 | \par% |
| 11741 | %<warning: active newline>@par% | 11680 | %<warning: active newline>\par% |
| 11742 | }}} | 11681 | }}} |
| 11743 | 11682 | ||
| 11744 | 11683 | ||
| 11745 | @gdef@fixbackslash{% | 11684 | % \loadconf gets called at the beginning of every Texinfo file. |
| 11746 | @ifx\@eatinput @let\ = @ttbackslash @fi | 11685 | % If texinfo.cnf is present on the system, read it. Useful for site-wide |
| 11747 | @catcode13=5 % regular end of line | 11686 | % @afourpaper, etc. Not opening texinfo.cnf directly in texinfo.tex |
| 11748 | @enableemergencynewline | 11687 | % makes it possible to make a format file for Texinfo. |
| 11749 | @let@c=@comment | 11688 | % |
| 11750 | @let@parsearg@originalparsearg | 11689 | \gdef\loadconf{% |
| 11690 | \relax % Terminate the filename if running as "tex '&texinfo' FILE.texi". | ||
| 11691 | % | ||
| 11692 | % Turn off the definitions that trigger \loadconf | ||
| 11693 | \everyjobreset | ||
| 11694 | \catcode13=5 % regular end of line | ||
| 11695 | \enableemergencynewline | ||
| 11696 | \let\c=\comment | ||
| 11697 | \let\parsearg\originalparsearg | ||
| 11698 | % | ||
| 11751 | % Also turn back on active characters that might appear in the input | 11699 | % Also turn back on active characters that might appear in the input |
| 11752 | % file name, in case not using a pre-dumped format. | 11700 | % file name, in case not using a pre-dumped format. |
| 11753 | @catcode`+=@active | 11701 | \catcode`+=\active |
| 11754 | @catcode`@_=@active | 11702 | \catcode`\_=\active |
| 11755 | % | ||
| 11756 | % If texinfo.cnf is present on the system, read it. | ||
| 11757 | % Useful for site-wide @afourpaper, etc. This macro, @fixbackslash, gets | ||
| 11758 | % called at the beginning of every Texinfo file. Not opening texinfo.cnf | ||
| 11759 | % directly in this file, texinfo.tex, makes it possible to make a format | ||
| 11760 | % file for Texinfo. | ||
| 11761 | % | 11703 | % |
| 11762 | @openin 1 texinfo.cnf | 11704 | \openin 1 texinfo.cnf |
| 11763 | @ifeof 1 @else @input texinfo.cnf @fi | 11705 | \ifeof 1 \else \input texinfo.cnf \fi |
| 11764 | @closein 1 | 11706 | \closein 1 |
| 11765 | } | 11707 | } |
| 11766 | 11708 | ||
| 11709 | % Redefine some control sequences to be controlled by the \ifdummies | ||
| 11710 | % and \ifindexnofonts switches. Do this at the end so that the control | ||
| 11711 | % sequences are all defined. | ||
| 11712 | \definedummies | ||
| 11713 | |||
| 11714 | |||
| 11715 | |||
| 11716 | |||
| 11717 | \catcode`\@=0 | ||
| 11718 | |||
| 11719 | % \realbackslash is an actual character `\' with catcode other. | ||
| 11720 | {\catcode`\\=\other @gdef@realbackslash{\}} | ||
| 11721 | |||
| 11722 | % In Texinfo, backslash is an active character; it prints the backslash | ||
| 11723 | % in fixed width font. | ||
| 11724 | \catcode`\\=\active % @ for escape char from now on. | ||
| 11725 | |||
| 11726 | @let\ = @ttbackslash | ||
| 11727 | |||
| 11728 | % If in a .fmt file, print the version number. | ||
| 11729 | % \eatinput stops the `\input texinfo' from showing up. | ||
| 11730 | % After that, `\' should revert to printing a backslash. | ||
| 11731 | % Turn on active characters that we couldn't do earlier because | ||
| 11732 | % they might have appeared in the input file name. | ||
| 11733 | % | ||
| 11734 | @everyjob{@message{[Texinfo version @texinfoversion]}% | ||
| 11735 | @global@let\ = @eatinput | ||
| 11736 | @catcode`+=@active @catcode`@_=@active} | ||
| 11737 | |||
| 11738 | {@catcode`@^=7 @catcode`@^^M=13% | ||
| 11739 | @gdef@eatinput input texinfo#1^^M{@loadconf}} | ||
| 11740 | |||
| 11741 | @def@everyjobreset{@ifx\@eatinput @let\ = @ttbackslash @fi} | ||
| 11742 | |||
| 11743 | % \otherbackslash defines an active \ to be a literal `\' character with | ||
| 11744 | % catcode other. | ||
| 11745 | @gdef@otherbackslash{@let\=@realbackslash} | ||
| 11746 | |||
| 11747 | % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of | ||
| 11748 | % the literal character `\'. | ||
| 11749 | % | ||
| 11750 | {@catcode`- = @active | ||
| 11751 | @gdef@normalturnoffactive{% | ||
| 11752 | @turnoffactive | ||
| 11753 | @let\=@ttbackslash | ||
| 11754 | } | ||
| 11755 | } | ||
| 11767 | 11756 | ||
| 11768 | % Say @foo, not \foo, in error messages. | 11757 | % Say @foo, not \foo, in error messages. |
| 11769 | @escapechar = `@@ | 11758 | @escapechar = `@@ |
| 11770 | 11759 | ||
| 11771 | % These (along with & and #) are made active for url-breaking, so need | ||
| 11772 | % active definitions as the normal characters. | ||
| 11773 | @def@normaldot{.} | ||
| 11774 | @def@normalquest{?} | ||
| 11775 | @def@normalslash{/} | ||
| 11776 | |||
| 11777 | % These look ok in all fonts, so just make them not special. | 11760 | % These look ok in all fonts, so just make them not special. |
| 11778 | % @hashchar{} gets its own user-level command, because of #line. | 11761 | % @hashchar{} gets its own user-level command, because of #line. |
| 11779 | @catcode`@& = @other @def@normalamp{&} | 11762 | @catcode`@& = @other @def@normalamp{&} |
| @@ -11788,15 +11771,11 @@ directory should work if nowhere else does.} | |||
| 11788 | @c Do this last of all since we use ` in the previous @catcode assignments. | 11771 | @c Do this last of all since we use ` in the previous @catcode assignments. |
| 11789 | @catcode`@'=@active | 11772 | @catcode`@'=@active |
| 11790 | @catcode`@`=@active | 11773 | @catcode`@`=@active |
| 11791 | @setregularquotes | ||
| 11792 | 11774 | ||
| 11793 | @c Local variables: | 11775 | @c Local variables: |
| 11794 | @c eval: (add-hook 'before-save-hook 'time-stamp nil t) | 11776 | @c eval: (add-hook 'before-save-hook 'time-stamp nil t) |
| 11795 | @c time-stamp-pattern: "texinfoversion{%Y-%02m-%02d.%02H}" | 11777 | @c time-stamp-pattern: "texinfoversion{%Y-%02m-%02d.%02H}" |
| 11796 | @c page-delimiter: "^\\\\message\\|emacs-page" | 11778 | @c page-delimiter: "^\\\\message" |
| 11797 | @c End: | 11779 | @c End: |
| 11798 | 11780 | ||
| 11799 | @c vim:sw=2: | 11781 | @newlineloadsconf |
| 11800 | |||
| 11801 | @enablebackslashhack | ||
| 11802 | |||