diff options
| author | Paul Eggert | 2023-07-09 13:05:01 -0700 |
|---|---|---|
| committer | Paul Eggert | 2023-07-09 13:45:13 -0700 |
| commit | c3cfada3c075991d7a38fafbdcf5daba06794d7a (patch) | |
| tree | 651fdeb7a99e6d26936bf119abc37c1f45f260b3 /doc/misc | |
| parent | 9c282faf26eb517532508d466270b7b97d436c70 (diff) | |
| download | emacs-c3cfada3c075991d7a38fafbdcf5daba06794d7a.tar.gz emacs-c3cfada3c075991d7a38fafbdcf5daba06794d7a.zip | |
Update from Gnulib by running admin/merge-gnulib
Diffstat (limited to 'doc/misc')
| -rw-r--r-- | doc/misc/texinfo.tex | 214 |
1 files changed, 109 insertions, 105 deletions
diff --git a/doc/misc/texinfo.tex b/doc/misc/texinfo.tex index a32c84197ae..b1d2999e5d7 100644 --- a/doc/misc/texinfo.tex +++ b/doc/misc/texinfo.tex | |||
| @@ -3,7 +3,7 @@ | |||
| 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{2023-03-27.21} | 6 | \def\texinfoversion{2023-07-02.10} |
| 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 | % |
| @@ -275,8 +275,7 @@ | |||
| 275 | % \topmark doesn't work for the very first chapter (after the title | 275 | % \topmark doesn't work for the very first chapter (after the title |
| 276 | % page or the contents), so we use \firstmark there -- this gets us | 276 | % page or the contents), so we use \firstmark there -- this gets us |
| 277 | % the mark with the chapter defs, unless the user sneaks in, e.g., | 277 | % the mark with the chapter defs, unless the user sneaks in, e.g., |
| 278 | % @setcolor (or @url, or @link, etc.) between @contents and the very | 278 | % @setcolor (or @url etc.) between @contents and the very first @chapter. |
| 279 | % first @chapter. | ||
| 280 | \def\gettopheadingmarks{% | 279 | \def\gettopheadingmarks{% |
| 281 | \ifcase0\the\savedtopmark\fi | 280 | \ifcase0\the\savedtopmark\fi |
| 282 | \ifx\thischapter\empty \ifcase0\firstmark\fi \fi | 281 | \ifx\thischapter\empty \ifcase0\firstmark\fi \fi |
| @@ -4950,6 +4949,7 @@ $$% | |||
| 4950 | \commondummyword\inforef {}% | 4949 | \commondummyword\inforef {}% |
| 4951 | \commondummyword\kbd {}% | 4950 | \commondummyword\kbd {}% |
| 4952 | \commondummyword\key {}% | 4951 | \commondummyword\key {}% |
| 4952 | \commondummyword\link {}% | ||
| 4953 | \commondummyword\math {}% | 4953 | \commondummyword\math {}% |
| 4954 | \commondummyword\option {}% | 4954 | \commondummyword\option {}% |
| 4955 | \commondummyword\pxref {}% | 4955 | \commondummyword\pxref {}% |
| @@ -5783,7 +5783,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% | |||
| 5783 | % below is chosen so that the gutter has the same value (well, +-<1pt) | 5783 | % below is chosen so that the gutter has the same value (well, +-<1pt) |
| 5784 | % as it did when we hard-coded it. | 5784 | % as it did when we hard-coded it. |
| 5785 | % | 5785 | % |
| 5786 | % We put the result in a separate register, \doublecolumhsize, so we | 5786 | % We put the result in a separate register, \doublecolumnhsize, so we |
| 5787 | % can restore it in \pagesofar, after \hsize itself has (potentially) | 5787 | % can restore it in \pagesofar, after \hsize itself has (potentially) |
| 5788 | % been clobbered. | 5788 | % been clobbered. |
| 5789 | % | 5789 | % |
| @@ -8180,7 +8180,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% | |||
| 8180 | % Read recursive and nonrecursive macro bodies. (They're different since | 8180 | % Read recursive and nonrecursive macro bodies. (They're different since |
| 8181 | % rec and nonrec macros end differently.) | 8181 | % rec and nonrec macros end differently.) |
| 8182 | % | 8182 | % |
| 8183 | % We are in \macrobodyctxt, and the \xdef causes backslashshes in the macro | 8183 | % We are in \macrobodyctxt, and the \xdef causes backslashes in the macro |
| 8184 | % body to be transformed. | 8184 | % body to be transformed. |
| 8185 | % Set \macrobody to the body of the macro, and call \macrodef. | 8185 | % Set \macrobody to the body of the macro, and call \macrodef. |
| 8186 | % | 8186 | % |
| @@ -8808,109 +8808,11 @@ might help (with 'rm \jobname.?? \jobname.??s')% | |||
| 8808 | \def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup | 8808 | \def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup |
| 8809 | \unsepspaces | 8809 | \unsepspaces |
| 8810 | % | 8810 | % |
| 8811 | % Get args without leading/trailing spaces. | 8811 | \getprintedrefname{#1}{#3}{#5}% |
| 8812 | \def\printedrefname{\ignorespaces #3}% | ||
| 8813 | \setbox\printedrefnamebox = \hbox{\printedrefname\unskip}% | ||
| 8814 | % | ||
| 8815 | \def\infofilename{\ignorespaces #4}% | 8812 | \def\infofilename{\ignorespaces #4}% |
| 8816 | \setbox\infofilenamebox = \hbox{\infofilename\unskip}% | 8813 | \setbox\infofilenamebox = \hbox{\infofilename\unskip}% |
| 8817 | % | 8814 | % |
| 8818 | \def\printedmanual{\ignorespaces #5}% | 8815 | \startxreflink{#1}{#4}% |
| 8819 | \setbox\printedmanualbox = \hbox{\printedmanual\unskip}% | ||
| 8820 | % | ||
| 8821 | % If the printed reference name (arg #3) was not explicitly given in | ||
| 8822 | % the @xref, figure out what we want to use. | ||
| 8823 | \ifdim \wd\printedrefnamebox = 0pt | ||
| 8824 | % No printed node name was explicitly given. | ||
| 8825 | \expandafter\ifx\csname SETxref-automatic-section-title\endcsname \relax | ||
| 8826 | % Not auto section-title: use node name inside the square brackets. | ||
| 8827 | \def\printedrefname{\ignorespaces #1}% | ||
| 8828 | \else | ||
| 8829 | % Auto section-title: use chapter/section title inside | ||
| 8830 | % the square brackets if we have it. | ||
| 8831 | \ifdim \wd\printedmanualbox > 0pt | ||
| 8832 | % It is in another manual, so we don't have it; use node name. | ||
| 8833 | \def\printedrefname{\ignorespaces #1}% | ||
| 8834 | \else | ||
| 8835 | \ifhavexrefs | ||
| 8836 | % We (should) know the real title if we have the xref values. | ||
| 8837 | \def\printedrefname{\refx{#1-title}}% | ||
| 8838 | \else | ||
| 8839 | % Otherwise just copy the Info node name. | ||
| 8840 | \def\printedrefname{\ignorespaces #1}% | ||
| 8841 | \fi% | ||
| 8842 | \fi | ||
| 8843 | \fi | ||
| 8844 | \fi | ||
| 8845 | % | ||
| 8846 | % Make link in pdf output. | ||
| 8847 | \ifpdf | ||
| 8848 | % For pdfTeX and LuaTeX | ||
| 8849 | {\indexnofonts | ||
| 8850 | \makevalueexpandable | ||
| 8851 | \turnoffactive | ||
| 8852 | % This expands tokens, so do it after making catcode changes, so _ | ||
| 8853 | % etc. don't get their TeX definitions. This ignores all spaces in | ||
| 8854 | % #4, including (wrongly) those in the middle of the filename. | ||
| 8855 | \getfilename{#4}% | ||
| 8856 | % | ||
| 8857 | % This (wrongly) does not take account of leading or trailing | ||
| 8858 | % spaces in #1, which should be ignored. | ||
| 8859 | \setpdfdestname{#1}% | ||
| 8860 | % | ||
| 8861 | \ifx\pdfdestname\empty | ||
| 8862 | \def\pdfdestname{Top}% no empty targets | ||
| 8863 | \fi | ||
| 8864 | % | ||
| 8865 | \leavevmode | ||
| 8866 | \startlink attr{/Border [0 0 0]}% | ||
| 8867 | \ifnum\filenamelength>0 | ||
| 8868 | goto file{\the\filename.pdf} name{\pdfdestname}% | ||
| 8869 | \else | ||
| 8870 | goto name{\pdfmkpgn{\pdfdestname}}% | ||
| 8871 | \fi | ||
| 8872 | }% | ||
| 8873 | \setcolor{\linkcolor}% | ||
| 8874 | \else | ||
| 8875 | \ifx\XeTeXrevision\thisisundefined | ||
| 8876 | \else | ||
| 8877 | % For XeTeX | ||
| 8878 | {\indexnofonts | ||
| 8879 | \makevalueexpandable | ||
| 8880 | \turnoffactive | ||
| 8881 | % This expands tokens, so do it after making catcode changes, so _ | ||
| 8882 | % etc. don't get their TeX definitions. This ignores all spaces in | ||
| 8883 | % #4, including (wrongly) those in the middle of the filename. | ||
| 8884 | \getfilename{#4}% | ||
| 8885 | % | ||
| 8886 | % This (wrongly) does not take account of leading or trailing | ||
| 8887 | % spaces in #1, which should be ignored. | ||
| 8888 | \setpdfdestname{#1}% | ||
| 8889 | % | ||
| 8890 | \ifx\pdfdestname\empty | ||
| 8891 | \def\pdfdestname{Top}% no empty targets | ||
| 8892 | \fi | ||
| 8893 | % | ||
| 8894 | \leavevmode | ||
| 8895 | \ifnum\filenamelength>0 | ||
| 8896 | % With default settings, | ||
| 8897 | % XeTeX (xdvipdfmx) replaces link destination names with integers. | ||
| 8898 | % In this case, the replaced destination names of | ||
| 8899 | % remote PDFs are no longer known. In order to avoid a replacement, | ||
| 8900 | % you can use xdvipdfmx's command line option `-C 0x0010'. | ||
| 8901 | % If you use XeTeX 0.99996+ (TeX Live 2016+), | ||
| 8902 | % this command line option is no longer necessary | ||
| 8903 | % because we can use the `dvipdfmx:config' special. | ||
| 8904 | \special{pdf:bann << /Border [0 0 0] /Type /Annot /Subtype /Link /A | ||
| 8905 | << /S /GoToR /F (\the\filename.pdf) /D (\pdfdestname) >> >>}% | ||
| 8906 | \else | ||
| 8907 | \special{pdf:bann << /Border [0 0 0] /Type /Annot /Subtype /Link /A | ||
| 8908 | << /S /GoTo /D (\pdfdestname) >> >>}% | ||
| 8909 | \fi | ||
| 8910 | }% | ||
| 8911 | \setcolor{\linkcolor}% | ||
| 8912 | \fi | ||
| 8913 | \fi | ||
| 8914 | {% | 8816 | {% |
| 8915 | % Have to otherify everything special to allow the \csname to | 8817 | % Have to otherify everything special to allow the \csname to |
| 8916 | % include an _ in the xref name, etc. | 8818 | % include an _ in the xref name, etc. |
| @@ -8991,6 +8893,93 @@ might help (with 'rm \jobname.?? \jobname.??s')% | |||
| 8991 | \endlink | 8893 | \endlink |
| 8992 | \endgroup} | 8894 | \endgroup} |
| 8993 | 8895 | ||
| 8896 | % \getprintedrefname{NODE}{LABEL}{MANUAL} | ||
| 8897 | % - set \printedrefname and \printedmanual | ||
| 8898 | % | ||
| 8899 | \def\getprintedrefname#1#2#3{% | ||
| 8900 | % Get args without leading/trailing spaces. | ||
| 8901 | \def\printedrefname{\ignorespaces #2}% | ||
| 8902 | \setbox\printedrefnamebox = \hbox{\printedrefname\unskip}% | ||
| 8903 | % | ||
| 8904 | \def\printedmanual{\ignorespaces #3}% | ||
| 8905 | \setbox\printedmanualbox = \hbox{\printedmanual\unskip}% | ||
| 8906 | % | ||
| 8907 | % If the printed reference name (arg #2) was not explicitly given in | ||
| 8908 | % the @xref, figure out what we want to use. | ||
| 8909 | \ifdim \wd\printedrefnamebox = 0pt | ||
| 8910 | % No printed node name was explicitly given. | ||
| 8911 | \expandafter\ifx\csname SETxref-automatic-section-title\endcsname \relax | ||
| 8912 | % Not auto section-title: use node name inside the square brackets. | ||
| 8913 | \def\printedrefname{\ignorespaces #1}% | ||
| 8914 | \else | ||
| 8915 | % Auto section-title: use chapter/section title inside | ||
| 8916 | % the square brackets if we have it. | ||
| 8917 | \ifdim \wd\printedmanualbox > 0pt | ||
| 8918 | % It is in another manual, so we don't have it; use node name. | ||
| 8919 | \def\printedrefname{\ignorespaces #1}% | ||
| 8920 | \else | ||
| 8921 | \ifhavexrefs | ||
| 8922 | % We (should) know the real title if we have the xref values. | ||
| 8923 | \def\printedrefname{\refx{#1-title}}% | ||
| 8924 | \else | ||
| 8925 | % Otherwise just copy the Info node name. | ||
| 8926 | \def\printedrefname{\ignorespaces #1}% | ||
| 8927 | \fi% | ||
| 8928 | \fi | ||
| 8929 | \fi | ||
| 8930 | \fi | ||
| 8931 | } | ||
| 8932 | |||
| 8933 | % \startxreflink{NODE}{FILE} - start link in pdf output. | ||
| 8934 | \def\startxreflink#1#2{% | ||
| 8935 | \ifpdforxetex | ||
| 8936 | % For pdfTeX and LuaTeX | ||
| 8937 | {\indexnofonts | ||
| 8938 | \makevalueexpandable | ||
| 8939 | \turnoffactive | ||
| 8940 | % This expands tokens, so do it after making catcode changes, so _ | ||
| 8941 | % etc. don't get their TeX definitions. This ignores all spaces in | ||
| 8942 | % #2, including (wrongly) those in the middle of the filename. | ||
| 8943 | \getfilename{#2}% | ||
| 8944 | % | ||
| 8945 | % This (wrongly) does not take account of leading or trailing | ||
| 8946 | % spaces in #1, which should be ignored. | ||
| 8947 | \setpdfdestname{#1}% | ||
| 8948 | % | ||
| 8949 | \ifx\pdfdestname\empty | ||
| 8950 | \def\pdfdestname{Top}% no empty targets | ||
| 8951 | \fi | ||
| 8952 | % | ||
| 8953 | \leavevmode | ||
| 8954 | \ifpdf | ||
| 8955 | \startlink attr{/Border [0 0 0]}% | ||
| 8956 | \ifnum\filenamelength>0 | ||
| 8957 | goto file{\the\filename.pdf} name{\pdfdestname}% | ||
| 8958 | \else | ||
| 8959 | goto name{\pdfmkpgn{\pdfdestname}}% | ||
| 8960 | \fi | ||
| 8961 | \else % XeTeX | ||
| 8962 | \ifnum\filenamelength>0 | ||
| 8963 | % With default settings, | ||
| 8964 | % XeTeX (xdvipdfmx) replaces link destination names with integers. | ||
| 8965 | % In this case, the replaced destination names of | ||
| 8966 | % remote PDFs are no longer known. In order to avoid a replacement, | ||
| 8967 | % you can use xdvipdfmx's command line option `-C 0x0010'. | ||
| 8968 | % If you use XeTeX 0.99996+ (TeX Live 2016+), | ||
| 8969 | % this command line option is no longer necessary | ||
| 8970 | % because we can use the `dvipdfmx:config' special. | ||
| 8971 | \special{pdf:bann << /Border [0 0 0] /Type /Annot /Subtype /Link /A | ||
| 8972 | << /S /GoToR /F (\the\filename.pdf) /D (\pdfdestname) >> >>}% | ||
| 8973 | \else | ||
| 8974 | \special{pdf:bann << /Border [0 0 0] /Type /Annot /Subtype /Link /A | ||
| 8975 | << /S /GoTo /D (\pdfdestname) >> >>}% | ||
| 8976 | \fi | ||
| 8977 | \fi | ||
| 8978 | }% | ||
| 8979 | \setcolor{\linkcolor}% | ||
| 8980 | \fi | ||
| 8981 | } | ||
| 8982 | |||
| 8994 | % can be overridden in translation files | 8983 | % can be overridden in translation files |
| 8995 | \def\putpageref#1{% | 8984 | \def\putpageref#1{% |
| 8996 | \space\putwordpage\tie\refx{#1-pg}} | 8985 | \space\putwordpage\tie\refx{#1-pg}} |
| @@ -9028,6 +9017,21 @@ might help (with 'rm \jobname.?? \jobname.??s')% | |||
| 9028 | % | 9017 | % |
| 9029 | \def\xrefprintnodename#1{[#1]} | 9018 | \def\xrefprintnodename#1{[#1]} |
| 9030 | 9019 | ||
| 9020 | % @link{NODENAME, LABEL, MANUAL} - create a "plain" link, with no | ||
| 9021 | % page number. Not useful if printed on paper. | ||
| 9022 | % | ||
| 9023 | \def\link#1{\linkX[#1,,,]} | ||
| 9024 | \def\linkX[#1,#2,#3,#4]{% | ||
| 9025 | \begingroup | ||
| 9026 | \unsepspaces | ||
| 9027 | \getprintedrefname{#1}{#2}{#3}% | ||
| 9028 | \startxreflink{#1}{#3}% | ||
| 9029 | \printedrefname | ||
| 9030 | \endlink | ||
| 9031 | \endgroup | ||
| 9032 | } | ||
| 9033 | |||
| 9034 | |||
| 9031 | % Things referred to by \setref. | 9035 | % Things referred to by \setref. |
| 9032 | % | 9036 | % |
| 9033 | \def\Ynothing{} | 9037 | \def\Ynothing{} |