diff options
author | Karl Berry <karl@freefriends.org> | 2023-07-28 23:43:43 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-07-28 23:43:43 +0000 |
commit | 8e6e8463db4331086bb8e2819ea6bdb45636684d (patch) | |
tree | 01c5bf168da7b517c43345e207db275870c81877 | |
parent | 276a11002542ff1d96713e76f8580e8c813e87bc (diff) |
tl-update-auto
git-svn-id: svn://tug.org/texlive/trunk@67759 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Build/source/build-aux/texinfo.tex | 257 | ||||
-rw-r--r-- | Master/doc.html | 54 | ||||
-rw-r--r-- | Master/texmf-dist/tex/texinfo/texinfo.tex | 257 | ||||
-rw-r--r-- | Master/tlpkg/installer/ctan-mirrors.pl | 3 |
4 files changed, 406 insertions, 165 deletions
diff --git a/Build/source/build-aux/texinfo.tex b/Build/source/build-aux/texinfo.tex index b1d2999e5d7..6e521944b22 100644 --- a/Build/source/build-aux/texinfo.tex +++ b/Build/source/build-aux/texinfo.tex @@ -3,7 +3,7 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2023-07-02.10} +\def\texinfoversion{2023-07-27.21} % % Copyright 1985, 1986, 1988, 1990-2023 Free Software Foundation, Inc. % @@ -426,42 +426,21 @@ } % First remove any @comment, then any @c comment. Pass the result on to -% \argcheckspaces. +% \argremovespace. \def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm} -\def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm} - -% Each occurrence of `\^^M' or `<space>\^^M' is replaced by a single space. -% -% \argremovec might leave us with trailing space, e.g., +\def\argremovec#1\c#2\ArgTerm{\argremovespace#1$ $\ArgTerm} +% \argremovec might leave us with trailing space, though; e.g., % @end itemize @c foo -% This space token undergoes the same procedure and is eventually removed -% by \finishparsearg. -% -\def\argcheckspaces#1\^^M{\argcheckspacesX#1\^^M \^^M} -\def\argcheckspacesX#1 \^^M{\argcheckspacesY#1\^^M} -\def\argcheckspacesY#1\^^M#2\^^M#3\ArgTerm{% - \def\temp{#3}% - \ifx\temp\empty - % Do not use \next, perhaps the caller of \parsearg uses it; reuse \temp: - \let\temp\finishparsearg - \else - \let\temp\argcheckspaces - \fi - % Put the space token in: - \temp#1 #3\ArgTerm -} +% Note that the argument cannot contain the TeX $, as its catcode is +% changed to \other when Texinfo source is read. +\def\argremovespace#1 $#2\ArgTerm{\finishparsearg#1$\ArgTerm} % If a _delimited_ argument is enclosed in braces, they get stripped; so % to get _exactly_ the rest of the line, we had to prevent such situation. -% We prepended an \empty token at the very beginning and we expand it now, -% just before passing the control to \argtorun. -% (Similarly, we have to think about #3 of \argcheckspacesY above: it is -% either the null string, or it ends with \^^M---thus there is no danger -% that a pair of braces would be stripped. -% -% But first, we have to remove the trailing space token. -% -\def\finishparsearg#1 \ArgTerm{\expandafter\argtorun\expandafter{#1}} +% We prepended an \empty token at the very beginning and we expand it +% just before passing the control to \next. +% (But first, we have to remove the remaining $ or two.) +\def\finishparsearg#1$#2\ArgTerm{\expandafter\argtorun\expandafter{#1}} % \parseargdef - define a command taking an argument on the line @@ -5575,6 +5554,11 @@ might help (with 'rm \jobname.?? \jobname.??s')% \newdimen\entryrightmargin \entryrightmargin=0pt +% amount to indent subsequent lines in an entry when it spans more than +% one line. +\newdimen\entrycontskip +\entrycontskip=1em + % for PDF output, whether to make the text of the entry a link to the page % number. set for @contents and @shortcontents where there is only one % page number. @@ -5684,25 +5668,30 @@ might help (with 'rm \jobname.?? \jobname.??s')% \advance\dimen@ii by 1\dimen@i \ifdim\wd\boxA > \dimen@ii % If the entry doesn't fit in one line \ifdim\dimen@ > 0.8\dimen@ii % due to long index text + % Undo changes above + \advance \parfillskip by 0pt minus -1\dimen@i + \advance\dimen@ii by -1\dimen@i + % % Try to split the text roughly evenly. \dimen@ will be the length of % the first line. \dimen@ = 0.7\dimen@ \dimen@ii = \hsize \ifnum\dimen@>\dimen@ii % If the entry is too long (for example, if it needs more than - % two lines), use all the space in the first line. + % two lines), use the same line length for all lines. \dimen@ = \dimen@ii + \else + \advance \dimen@ by 1\rightskip \fi \advance\leftskip by 0pt plus 1fill % ragged right - \advance \dimen@ by 1\rightskip \parshape = 2 0pt \dimen@ 0em \dimen@ii % Ideally we'd add a finite glue at the end of the first line only, % instead of using \parshape with explicit line lengths, but TeX % doesn't seem to provide a way to do such a thing. % % Indent all lines but the first one. - \advance\leftskip by 1em - \advance\parindent by -1em + \advance\leftskip by \entrycontskip + \advance\parindent by -\entrycontskip \fi\fi \indent % start paragraph \unhbox\boxA @@ -6721,6 +6710,82 @@ might help (with 'rm \jobname.?? \jobname.??s')% \input \tocreadfilename } +% process toc file to find the maximum width of the section numbers for +% each chapter +\def\findsecnowidths{% + \begingroup + \setupdatafile + \activecatcodes + \secentryfonts + % Redefinitions + \def\numchapentry##1##2##3##4{% + \def\curchapname{secnowidth-##2}% + \curchapmax=0pt + }% + \let\appentry\numchapentry + % + \def\numsecentry##1##2##3##4{% + \def\cursecname{secnowidth-##2}% + \cursecmax=0pt + % + \setbox0=\hbox{##2}% + \ifdim\wd0>\curchapmax + \curchapmax=\wd0 + \expandafter\xdef\csname\curchapname\endcsname{\the\wd0}% + \fi + }% + \let\appsecentry\numsecentry + % + \def\numsubsecentry##1##2##3##4{% + \def\curssecname{secnowidth-##2}% + \curssecmax=0pt + % + \setbox0=\hbox{##2}% + \ifdim\wd0>\cursecmax + \cursecmax=\wd0 + \expandafter\xdef\csname\cursecname\endcsname{\the\wd0}% + \fi + }% + \let\appsubsecentry\numsubsecentry + % + \def\numsubsubsecentry##1##2##3##4{% + \setbox0=\hbox{##2}% + \ifdim\wd0>\curssecmax + \curssecmax=\wd0 + \expandafter\xdef\csname\curssecname\endcsname{\the\wd0}% + \fi + }% + \let\appsubsubsecentry\numsubsubsecentry + % + % Discard any output by outputting to dummy vbox, in case the toc file + % contains macros that we have not redefined above. + \setbox\dummybox\vbox\bgroup + \input \tocreadfilename\relax + \egroup + \endgroup +} +\newdimen\curchapmax +\newdimen\cursecmax +\newdimen\curssecmax + + +% set #1 to the maximum section width for #2 +\def\retrievesecnowidth#1#2{% + \expandafter\let\expandafter\savedsecnowidth \csname secnowidth-#2\endcsname + \ifx\savedsecnowidth\relax + #1=0pt + \else + #1=\savedsecnowidth + \fi +} +\newdimen\secnowidthchap +\secnowidthchap=0pt +\newdimen\secnowidthsec +\secnowidthsec=0pt +\newdimen\secnowidthssec +\secnowidthssec=0pt + + \newskip\contentsrightmargin \contentsrightmargin=1in \newcount\savepageno \newcount\lastnegativepageno \lastnegativepageno = -1 @@ -6766,6 +6831,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \startcontents{\putwordTOC}% \openin 1 \tocreadfilename\space \ifeof 1 \else + \findsecnowidths \readtocfile \fi \vfill \eject @@ -6793,6 +6859,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \rm \hyphenpenalty = 10000 \advance\baselineskip by 1pt % Open it up a little. + \extrasecnoskip=0.4pt \def\numsecentry##1##2##3##4{} \let\appsecentry = \numsecentry \let\unnsecentry = \numsecentry @@ -6828,8 +6895,6 @@ might help (with 'rm \jobname.?? \jobname.??s')% % This space should be enough, since a single number is .5em, and the % widest letter (M) is 1em, at least in the Computer Modern fonts. % But use \hss just in case. - % (This space doesn't include the extra space that gets added after - % the label; that gets put in by \shortchapentry above.) % % We'd like to right-justify chapter numbers, but that looks strange % with appendix letters. And right-justifying numbers and @@ -6839,10 +6904,15 @@ might help (with 'rm \jobname.?? \jobname.??s')% \hbox to 1em{#1\hss}% } -% These macros generate individual entries in the table of contents. -% The first argument is the chapter or section name. -% The last argument is the page number. -% The arguments in between are the chapter number, section number, ... +% These macros generate individual entries in the table of contents, +% and are read in from the *.toc file. +% +% The arguments are like: +% \def\numchapentry#1#2#3#4 +% #1 - the chapter or section name. +% #2 - section number +% #3 - level of section (e.g "chap", "sec") +% #4 - page number % Parts, in the main contents. Replace the part number, which doesn't % exist, with an empty box. Let's hope all the numbers have the same width. @@ -6855,7 +6925,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \vskip 0pt plus 5\baselineskip \penalty-300 \vskip 0pt plus -5\baselineskip - \dochapentry{\numeralbox\labelspace#1}{}% + \dochapentry{#1}{\numeralbox}{}% } % % Parts, in the short toc. @@ -6866,12 +6936,14 @@ might help (with 'rm \jobname.?? \jobname.??s')% } % Chapters, in the main contents. -\def\numchapentry#1#2#3#4{\dochapentry{#2\labelspace#1}{#4}} +\def\numchapentry#1#2#3#4{% + \retrievesecnowidth\secnowidthchap{#2}% + \dochapentry{#1}{#2}{#4}% +} % Chapters, in the short toc. -% See comments in \dochapentry re vbox and related settings. \def\shortchapentry#1#2#3#4{% - \tocentry{\shortchaplabel{#2}\labelspace #1}{#4}% + \tocentry{#1}{\shortchaplabel{#2}}{#4}% } % Appendices, in the main contents. @@ -6882,67 +6954,111 @@ might help (with 'rm \jobname.?? \jobname.??s')% \setbox0 = \hbox{\putwordAppendix{} M}% \hbox to \wd0{\putwordAppendix{} #1\hss}} % -\def\appentry#1#2#3#4{\dochapentry{\appendixbox{#2}\hskip.7em#1}{#4}} +\def\appentry#1#2#3#4{% + \retrievesecnowidth\secnowidthchap{#2}% + \dochapentry{\appendixbox{#2}\hskip.7em#1}{}{#4}% +} % Unnumbered chapters. -\def\unnchapentry#1#2#3#4{\dochapentry{#1}{#4}} -\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{#4}} +\def\unnchapentry#1#2#3#4{\dochapentry{#1}{}{#4}} +\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{}{#4}} % Sections. -\def\numsecentry#1#2#3#4{\dosecentry{#2\labelspace#1}{#4}} +\def\numsecentry#1#2#3#4{\dosecentry{#1}{#2}{#4}} + +\def\numsecentry#1#2#3#4{% + \retrievesecnowidth\secnowidthsec{#2}% + \dosecentry{#1}{#2}{#4}% +} \let\appsecentry=\numsecentry -\def\unnsecentry#1#2#3#4{\dosecentry{#1}{#4}} +\def\unnsecentry#1#2#3#4{% + \retrievesecnowidth\secnowidthsec{#2}% + \dosecentry{#1}{}{#4}% +} % Subsections. -\def\numsubsecentry#1#2#3#4{\dosubsecentry{#2\labelspace#1}{#4}} +\def\numsubsecentry#1#2#3#4{% + \retrievesecnowidth\secnowidthssec{#2}% + \dosubsecentry{#1}{#2}{#4}% +} \let\appsubsecentry=\numsubsecentry -\def\unnsubsecentry#1#2#3#4{\dosubsecentry{#1}{#4}} +\def\unnsubsecentry#1#2#3#4{% + \retrievesecnowidth\secnowidthssec{#2}% + \dosubsecentry{#1}{}{#4}% +} % And subsubsections. -\def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#2\labelspace#1}{#4}} +\def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#2}{#4}} \let\appsubsubsecentry=\numsubsubsecentry -\def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#4}} +\def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{}{#4}} % This parameter controls the indentation of the various levels. % Same as \defaultparindent. \newdimen\tocindent \tocindent = 15pt -% Now for the actual typesetting. In all these, #1 is the text and #2 is the -% page number. +% Now for the actual typesetting. In all these, #1 is the text, #2 is +% a section number if present, and #3 is the page number. % % If the toc has to be broken over pages, we want it to be at chapters % if at all possible; hence the \penalty. -\def\dochapentry#1#2{% +\def\dochapentry#1#2#3{% \penalty-300 \vskip1\baselineskip plus.33\baselineskip minus.25\baselineskip \begingroup % Move the page numbers slightly to the right \advance\entryrightmargin by -0.05em \chapentryfonts - \tocentry{#1}{#2}% + \extrasecnoskip=0.4em % separate chapter number more + \tocentry{#1}{#2}{#3}% \endgroup \nobreak\vskip .25\baselineskip plus.1\baselineskip } -\def\dosecentry#1#2{\begingroup +\def\dosecentry#1#2#3{\begingroup + \secnowidth=\secnowidthchap \secentryfonts \leftskip=\tocindent - \tocentry{#1}{#2}% + \tocentry{#1}{#2}{#3}% \endgroup} -\def\dosubsecentry#1#2{\begingroup +\def\dosubsecentry#1#2#3{\begingroup + \secnowidth=\secnowidthsec \subsecentryfonts \leftskip=2\tocindent - \tocentry{#1}{#2}% + \tocentry{#1}{#2}{#3}% \endgroup} -\def\dosubsubsecentry#1#2{\begingroup +\def\dosubsubsecentry#1#2#3{\begingroup + \secnowidth=\secnowidthssec \subsubsecentryfonts \leftskip=3\tocindent - \tocentry{#1}{#2}% + \tocentry{#1}{#2}{#3}% \endgroup} -% We use the same \entry macro as for the index entries. -\let\tocentry = \entry +% Used for the maximum width of a section number so we can align +% section titles. +\newdimen\secnowidth +\secnowidth=0pt +\newdimen\extrasecnoskip +\extrasecnoskip=0pt -% Space between chapter (or whatever) number and the title. -\def\labelspace{\hskip1em \relax} +% \tocentry{TITLE}{SEC NO}{PAGE} +% +\def\tocentry#1#2#3{% + \def\secno{#2}% + \ifx\empty\secno + \entry{#1}{#3}% + \else + \ifdim 0pt=\secnowidth + \setbox0=\hbox{#2\hskip\labelspace\hskip\extrasecnoskip}% + \else + \advance\secnowidth by \labelspace + \advance\secnowidth by \extrasecnoskip + \setbox0=\hbox to \secnowidth{% + #2\hskip\labelspace\hskip\extrasecnoskip\hfill}% + \fi + \entrycontskip=\wd0 + \entry{\box0 #1}{#3}% + \fi +} +\newdimen\labelspace +\labelspace=0.6em \def\chapentryfonts{\secfonts \rm} \def\secentryfonts{\textfonts} @@ -7787,6 +7903,8 @@ might help (with 'rm \jobname.?? \jobname.??s')% \tolerance=10000 \hbadness=10000 \exdentamount=\defbodyindent {% + \def\^^M{}% for line continuation + % % defun fonts. We use typewriter by default (used to be bold) because: % . we're printing identifiers, they should be in tt in principle. % . in languages with many accents, such as Czech or French, it's @@ -7819,6 +7937,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% % Print arguments. Use slanted for @def*, typewriter for @deftype*. \def\defunargs#1{% \bgroup + \def\^^M{}% for line continuation \df \ifdoingtypefn \tt \else \sl \fi \ifflagclear{txicodevaristt}{}% {\def\var##1{{\setregularquotes \ttsl ##1}}}% diff --git a/Master/doc.html b/Master/doc.html index f8ef8f77946..9aae63fb186 100644 --- a/Master/doc.html +++ b/Master/doc.html @@ -6929,6 +6929,12 @@ Decorative swelled rule using font character. <a href="texmf-dist/doc/latex/decorule/decorule.pdf">decorule.pdf</a> </small></li> +<li id="defoldfonts"><b><a href="texmf-dist/doc/latex/defoldfonts/">defoldfonts</a></b><small> +(<a href="https://ctan.org/pkg/defoldfonts">CTAN</a>): +Define old font commands. +<a href="texmf-dist/doc/latex/defoldfonts/defoldfonts.pdf">defoldfonts.pdf</a> +</small></li> + <li id="dehyph-exptl"><b><a href="texmf-dist/doc/generic/dehyph-exptl/">dehyph-exptl</a></b><small> (<a href="https://ctan.org/pkg/dehyph-exptl">CTAN</a>): Experimental hyphenation patterns for the German language. @@ -7844,7 +7850,7 @@ Construct Dynkin tree diagrams. <h2 id="letter-E">E</h2> -<ol start="990"> +<ol start="991"> <li id="e-french"><b><a href="texmf-dist/doc/generic/e-french/">e-french</a></b><small> (<a href="https://ctan.org/pkg/e-french">CTAN</a>): @@ -9164,7 +9170,7 @@ Extend the standard classes' size options. <h2 id="letter-F">F</h2> -<ol start="1178"> +<ol start="1179"> <li id="facsimile"><b><a href="texmf-dist/doc/latex/facsimile/">facsimile</a></b><small> (<a href="https://ctan.org/pkg/facsimile">CTAN</a>): @@ -10380,7 +10386,7 @@ Get first and last words of a page. <h2 id="letter-G">G</h2> -<ol start="1350"> +<ol start="1351"> <li id="g-brief"><b><a href="texmf-dist/doc/latex/g-brief/">g-brief</a></b><small> (<a href="https://ctan.org/pkg/g-brief">CTAN</a>): @@ -11622,7 +11628,7 @@ Bundle of classes for "La Gazette des Mathematiciens". <h2 id="letter-H">H</h2> -<ol start="1488"> +<ol start="1489"> <li id="h2020proposal"><b><a href="texmf-dist/doc/latex/h2020proposal/">h2020proposal</a></b><small> (<a href="https://ctan.org/pkg/h2020proposal">CTAN</a>): @@ -12410,7 +12416,7 @@ Basic support for multiple languages in Plain TeX. <h2 id="letter-I">I</h2> -<ol start="1593"> +<ol start="1594"> <li id="ibarra"><b><a href="texmf-dist/doc/fonts/ibarra/">ibarra</a></b><small> (<a href="https://ctan.org/pkg/ibarra">CTAN</a>): @@ -12985,7 +12991,7 @@ A two-element sans-serif font. <h2 id="letter-J">J</h2> -<ol start="1677"> +<ol start="1678"> <li id="jablantile"><b><a href="texmf-dist/doc/fonts/jablantile/">jablantile</a></b><small> (<a href="https://ctan.org/pkg/jablantile">CTAN</a>): @@ -13242,7 +13248,7 @@ A personal class for writing journals. <h2 id="letter-K">K</h2> -<ol start="1710"> +<ol start="1711"> <li id="kalendarium"><b><a href="texmf-dist/doc/latex/kalendarium/">kalendarium</a></b><small> (<a href="https://ctan.org/pkg/kalendarium">CTAN</a>): @@ -13853,7 +13859,7 @@ Key value parser with default handler support. <h2 id="letter-L">L</h2> -<ol start="1761"> +<ol start="1762"> <li id="l2picfaq"><b><a href="texmf-dist/doc/latex/l2picfaq/">l2picfaq</a></b><small> (<a href="https://ctan.org/pkg/l2picfaq">CTAN</a>): @@ -16064,7 +16070,7 @@ Commands to include lilypond scores within a (Lua)LaTeX document. <h2 id="letter-M">M</h2> -<ol start="2033"> +<ol start="2034"> <li id="m-tx"><b><a href="texmf-dist/doc/generic/m-tx/">m-tx</a></b><small> (<a href="https://ctan.org/pkg/m-tx">CTAN</a>): @@ -17789,7 +17795,7 @@ XeLaTeX template for writing the main body of NSFC proposals. <h2 id="letter-N">N</h2> -<ol start="2276"> +<ol start="2277"> <li id="na-box"><b><a href="texmf-dist/doc/xelatex/na-box/">na-box</a></b><small> (<a href="https://ctan.org/pkg/na-box">CTAN</a>): @@ -18517,7 +18523,7 @@ Support for the journal "North-Western European Journal of Mathematics". <h2 id="letter-O">O</h2> -<ol start="2375"> +<ol start="2376"> <li id="oberdiek"><b><a href="texmf-dist/doc/latex/oberdiek/">oberdiek</a></b><small> (<a href="https://ctan.org/pkg/oberdiek">CTAN</a>): @@ -18884,7 +18890,7 @@ Combine LaTeX commands over included graphics. <h2 id="letter-P">P</h2> -<ol start="2423"> +<ol start="2424"> <li id="padcount"><b><a href="texmf-dist/doc/latex/padcount/">padcount</a></b><small> (<a href="https://ctan.org/pkg/padcount">CTAN</a>): @@ -21455,7 +21461,7 @@ Run Python from within a document, typesetting the results. <h2 id="letter-Q">Q</h2> -<ol start="2781"> +<ol start="2782"> <li id="qcircuit"><b><a href="texmf-dist/doc/latex/qcircuit/">qcircuit</a></b><small> (<a href="https://ctan.org/pkg/qcircuit">CTAN</a>): @@ -21617,7 +21623,7 @@ Book Template for Qian Yuan Xue Fu. <h2 id="letter-R">R</h2> -<ol start="2804"> +<ol start="2805"> <li id="ragged2e"><b><a href="texmf-dist/doc/latex/ragged2e/">ragged2e</a></b><small> (<a href="https://ctan.org/pkg/ragged2e">CTAN</a>): @@ -22312,7 +22318,7 @@ Class for Ryerson Unversity Graduate School requirements. <h2 id="letter-S">S</h2> -<ol start="2895"> +<ol start="2896"> <li id="sa-tikz"><b><a href="texmf-dist/doc/latex/sa-tikz/">sa-tikz</a></b><small> (<a href="https://ctan.org/pkg/sa-tikz">CTAN</a>): @@ -23511,7 +23517,7 @@ Kerning between words and against space. <li id="spacingtricks"><b><a href="texmf-dist/doc/latex/spacingtricks/">spacingtricks</a></b><small> (<a href="https://ctan.org/pkg/spacingtricks">CTAN</a>): -Dealing with some spacing issues. +Addressing various spacing issues. <a href="texmf-dist/doc/latex/spacingtricks/spacingtricks.pdf">spacingtricks.pdf</a> </small></li> @@ -24235,7 +24241,7 @@ Format systems of equations. <h2 id="letter-T">T</h2> -<ol start="3170"> +<ol start="3171"> <li id="t-angles"><b><a href="texmf-dist/doc/latex/t-angles/">t-angles</a></b><small> (<a href="https://ctan.org/pkg/t-angles">CTAN</a>): @@ -26767,7 +26773,7 @@ Plot graphs with TikZ abbreviations. <h2 id="letter-U">U</h2> -<ol start="3485"> +<ol start="3486"> <li id="uaclasses"><b><a href="texmf-dist/doc/latex/uaclasses/">uaclasses</a></b><small> (<a href="https://ctan.org/pkg/uaclasses">CTAN</a>): @@ -27411,7 +27417,7 @@ University of Washington thesis class. <h2 id="letter-V">V</h2> -<ol start="3575"> +<ol start="3576"> <li id="vancouver"><b><a href="texmf-dist/doc/bibtex/vancouver/">vancouver</a></b><small> (<a href="https://ctan.org/pkg/vancouver">CTAN</a>): @@ -27684,7 +27690,7 @@ Variable-width multiple text columns. <h2 id="letter-W">W</h2> -<ol start="3614"> +<ol start="3615"> <li id="wadalab"><b><a href="texmf-dist/doc/fonts/wadalab/">wadalab</a></b><small> (<a href="https://ctan.org/pkg/wadalab">CTAN</a>): @@ -27935,7 +27941,7 @@ Extend LaTeX's cross-reference system. <h2 id="letter-X">X</h2> -<ol start="3645"> +<ol start="3646"> <li id="xargs"><b><a href="texmf-dist/doc/latex/xargs/">xargs</a></b><small> (<a href="https://ctan.org/pkg/xargs">CTAN</a>): @@ -28566,7 +28572,7 @@ Tree macros using XY-Pic. <h2 id="letter-Y">Y</h2> -<ol start="3719"> +<ol start="3720"> <li id="yafoot"><b><a href="texmf-dist/doc/latex/yafoot/">yafoot</a></b><small> (<a href="https://ctan.org/pkg/yafoot">CTAN</a>): @@ -28696,7 +28702,7 @@ Many-featured Young tableaux and Young diagrams. <h2 id="letter-Z">Z</h2> -<ol start="3737"> +<ol start="3738"> <li id="zbmath-review-template"><b><a href="texmf-dist/doc/xelatex/zbmath-review-template/">zbmath-review-template</a></b><small> (<a href="https://ctan.org/pkg/zbmath-review-template">CTAN</a>): @@ -28841,5 +28847,5 @@ Standard conforming typesetting of Japanese, for XeLaTeX. <p><a href="#letter-1">1</a> - <a href="#letter-2">2</a> - <a href="#letter-A">A</a> - <a href="#letter-B">B</a> - <a href="#letter-C">C</a> - <a href="#letter-D">D</a> - <a href="#letter-E">E</a> - <a href="#letter-F">F</a> - <a href="#letter-G">G</a> - <a href="#letter-H">H</a> - <a href="#letter-I">I</a> - <a href="#letter-J">J</a> - <a href="#letter-K">K</a> - <a href="#letter-L">L</a> - <a href="#letter-M">M</a> - <a href="#letter-N">N</a> - <a href="#letter-O">O</a> - <a href="#letter-P">P</a> - <a href="#letter-Q">Q</a> - <a href="#letter-R">R</a> - <a href="#letter-S">S</a> - <a href="#letter-T">T</a> - <a href="#letter-U">U</a> - <a href="#letter-V">V</a> - <a href="#letter-W">W</a> - <a href="#letter-X">X</a> - <a href="#letter-Y">Y</a> - <a href="#letter-Z">Z</a></p> <hr> -<small>Generated Fri Jul 28 01:42:59 CEST 2023 by tl-update-docindex.</small> +<small>Generated Sat Jul 29 01:43:30 CEST 2023 by tl-update-docindex.</small> </body></html> diff --git a/Master/texmf-dist/tex/texinfo/texinfo.tex b/Master/texmf-dist/tex/texinfo/texinfo.tex index 9e44ddc5910..d9fee3bba48 100644 --- a/Master/texmf-dist/tex/texinfo/texinfo.tex +++ b/Master/texmf-dist/tex/texinfo/texinfo.tex @@ -3,7 +3,7 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2023-07-02.10} +\def\texinfoversion{2023-07-27.21} % % Copyright 1985, 1986, 1988, 1990-2023 Free Software Foundation, Inc. % @@ -426,42 +426,21 @@ } % First remove any @comment, then any @c comment. Pass the result on to -% \argcheckspaces. +% \argremovespace. \def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm} -\def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm} - -% Each occurrence of `\^^M' or `<space>\^^M' is replaced by a single space. -% -% \argremovec might leave us with trailing space, e.g., +\def\argremovec#1\c#2\ArgTerm{\argremovespace#1$ $\ArgTerm} +% \argremovec might leave us with trailing space, though; e.g., % @end itemize @c foo -% This space token undergoes the same procedure and is eventually removed -% by \finishparsearg. -% -\def\argcheckspaces#1\^^M{\argcheckspacesX#1\^^M \^^M} -\def\argcheckspacesX#1 \^^M{\argcheckspacesY#1\^^M} -\def\argcheckspacesY#1\^^M#2\^^M#3\ArgTerm{% - \def\temp{#3}% - \ifx\temp\empty - % Do not use \next, perhaps the caller of \parsearg uses it; reuse \temp: - \let\temp\finishparsearg - \else - \let\temp\argcheckspaces - \fi - % Put the space token in: - \temp#1 #3\ArgTerm -} +% Note that the argument cannot contain the TeX $, as its catcode is +% changed to \other when Texinfo source is read. +\def\argremovespace#1 $#2\ArgTerm{\finishparsearg#1$\ArgTerm} % If a _delimited_ argument is enclosed in braces, they get stripped; so % to get _exactly_ the rest of the line, we had to prevent such situation. -% We prepended an \empty token at the very beginning and we expand it now, -% just before passing the control to \argtorun. -% (Similarly, we have to think about #3 of \argcheckspacesY above: it is -% either the null string, or it ends with \^^M---thus there is no danger -% that a pair of braces would be stripped. -% -% But first, we have to remove the trailing space token. -% -\def\finishparsearg#1 \ArgTerm{\expandafter\argtorun\expandafter{#1}} +% We prepended an \empty token at the very beginning and we expand it +% just before passing the control to \next. +% (But first, we have to remove the remaining $ or two.) +\def\finishparsearg#1$#2\ArgTerm{\expandafter\argtorun\expandafter{#1}} % \parseargdef - define a command taking an argument on the line @@ -5575,6 +5554,11 @@ might help (with 'rm \jobname.?? \jobname.??s')% \newdimen\entryrightmargin \entryrightmargin=0pt +% amount to indent subsequent lines in an entry when it spans more than +% one line. +\newdimen\entrycontskip +\entrycontskip=1em + % for PDF output, whether to make the text of the entry a link to the page % number. set for @contents and @shortcontents where there is only one % page number. @@ -5684,25 +5668,30 @@ might help (with 'rm \jobname.?? \jobname.??s')% \advance\dimen@ii by 1\dimen@i \ifdim\wd\boxA > \dimen@ii % If the entry doesn't fit in one line \ifdim\dimen@ > 0.8\dimen@ii % due to long index text + % Undo changes above + \advance \parfillskip by 0pt minus -1\dimen@i + \advance\dimen@ii by -1\dimen@i + % % Try to split the text roughly evenly. \dimen@ will be the length of % the first line. \dimen@ = 0.7\dimen@ \dimen@ii = \hsize \ifnum\dimen@>\dimen@ii % If the entry is too long (for example, if it needs more than - % two lines), use all the space in the first line. + % two lines), use the same line length for all lines. \dimen@ = \dimen@ii + \else + \advance \dimen@ by 1\rightskip \fi \advance\leftskip by 0pt plus 1fill % ragged right - \advance \dimen@ by 1\rightskip \parshape = 2 0pt \dimen@ 0em \dimen@ii % Ideally we'd add a finite glue at the end of the first line only, % instead of using \parshape with explicit line lengths, but TeX % doesn't seem to provide a way to do such a thing. % % Indent all lines but the first one. - \advance\leftskip by 1em - \advance\parindent by -1em + \advance\leftskip by \entrycontskip + \advance\parindent by -\entrycontskip \fi\fi \indent % start paragraph \unhbox\boxA @@ -6721,6 +6710,82 @@ might help (with 'rm \jobname.?? \jobname.??s')% \input \tocreadfilename } +% process toc file to find the maximum width of the section numbers for +% each chapter +\def\findsecnowidths{% + \begingroup + \setupdatafile + \activecatcodes + \secentryfonts + % Redefinitions + \def\numchapentry##1##2##3##4{% + \def\curchapname{secnowidth-##2}% + \curchapmax=0pt + }% + \let\appentry\numchapentry + % + \def\numsecentry##1##2##3##4{% + \def\cursecname{secnowidth-##2}% + \cursecmax=0pt + % + \setbox0=\hbox{##2}% + \ifdim\wd0>\curchapmax + \curchapmax=\wd0 + \expandafter\xdef\csname\curchapname\endcsname{\the\wd0}% + \fi + }% + \let\appsecentry\numsecentry + % + \def\numsubsecentry##1##2##3##4{% + \def\curssecname{secnowidth-##2}% + \curssecmax=0pt + % + \setbox0=\hbox{##2}% + \ifdim\wd0>\cursecmax + \cursecmax=\wd0 + \expandafter\xdef\csname\cursecname\endcsname{\the\wd0}% + \fi + }% + \let\appsubsecentry\numsubsecentry + % + \def\numsubsubsecentry##1##2##3##4{% + \setbox0=\hbox{##2}% + \ifdim\wd0>\curssecmax + \curssecmax=\wd0 + \expandafter\xdef\csname\curssecname\endcsname{\the\wd0}% + \fi + }% + \let\appsubsubsecentry\numsubsubsecentry + % + % Discard any output by outputting to dummy vbox, in case the toc file + % contains macros that we have not redefined above. + \setbox\dummybox\vbox\bgroup + \input \tocreadfilename\relax + \egroup + \endgroup +} +\newdimen\curchapmax +\newdimen\cursecmax +\newdimen\curssecmax + + +% set #1 to the maximum section width for #2 +\def\retrievesecnowidth#1#2{% + \expandafter\let\expandafter\savedsecnowidth \csname secnowidth-#2\endcsname + \ifx\savedsecnowidth\relax + #1=0pt + \else + #1=\savedsecnowidth + \fi +} +\newdimen\secnowidthchap +\secnowidthchap=0pt +\newdimen\secnowidthsec +\secnowidthsec=0pt +\newdimen\secnowidthssec +\secnowidthssec=0pt + + \newskip\contentsrightmargin \contentsrightmargin=1in \newcount\savepageno \newcount\lastnegativepageno \lastnegativepageno = -1 @@ -6766,6 +6831,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \startcontents{\putwordTOC}% \openin 1 \tocreadfilename\space \ifeof 1 \else + \findsecnowidths \readtocfile \fi \vfill \eject @@ -6793,6 +6859,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \rm \hyphenpenalty = 10000 \advance\baselineskip by 1pt % Open it up a little. + \extrasecnoskip=0.4pt \def\numsecentry##1##2##3##4{} \let\appsecentry = \numsecentry \let\unnsecentry = \numsecentry @@ -6828,8 +6895,6 @@ might help (with 'rm \jobname.?? \jobname.??s')% % This space should be enough, since a single number is .5em, and the % widest letter (M) is 1em, at least in the Computer Modern fonts. % But use \hss just in case. - % (This space doesn't include the extra space that gets added after - % the label; that gets put in by \shortchapentry above.) % % We'd like to right-justify chapter numbers, but that looks strange % with appendix letters. And right-justifying numbers and @@ -6839,10 +6904,15 @@ might help (with 'rm \jobname.?? \jobname.??s')% \hbox to 1em{#1\hss}% } -% These macros generate individual entries in the table of contents. -% The first argument is the chapter or section name. -% The last argument is the page number. -% The arguments in between are the chapter number, section number, ... +% These macros generate individual entries in the table of contents, +% and are read in from the *.toc file. +% +% The arguments are like: +% \def\numchapentry#1#2#3#4 +% #1 - the chapter or section name. +% #2 - section number +% #3 - level of section (e.g "chap", "sec") +% #4 - page number % Parts, in the main contents. Replace the part number, which doesn't % exist, with an empty box. Let's hope all the numbers have the same width. @@ -6855,7 +6925,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \vskip 0pt plus 5\baselineskip \penalty-300 \vskip 0pt plus -5\baselineskip - \dochapentry{\numeralbox\labelspace#1}{}% + \dochapentry{#1}{\numeralbox}{}% } % % Parts, in the short toc. @@ -6866,12 +6936,14 @@ might help (with 'rm \jobname.?? \jobname.??s')% } % Chapters, in the main contents. -\def\numchapentry#1#2#3#4{\dochapentry{#2\labelspace#1}{#4}} +\def\numchapentry#1#2#3#4{% + \retrievesecnowidth\secnowidthchap{#2}% + \dochapentry{#1}{#2}{#4}% +} % Chapters, in the short toc. -% See comments in \dochapentry re vbox and related settings. \def\shortchapentry#1#2#3#4{% - \tocentry{\shortchaplabel{#2}\labelspace #1}{#4}% + \tocentry{#1}{\shortchaplabel{#2}}{#4}% } % Appendices, in the main contents. @@ -6882,67 +6954,111 @@ might help (with 'rm \jobname.?? \jobname.??s')% \setbox0 = \hbox{\putwordAppendix{} M}% \hbox to \wd0{\putwordAppendix{} #1\hss}} % -\def\appentry#1#2#3#4{\dochapentry{\appendixbox{#2}\hskip.7em#1}{#4}} +\def\appentry#1#2#3#4{% + \retrievesecnowidth\secnowidthchap{#2}% + \dochapentry{\appendixbox{#2}\hskip.7em#1}{}{#4}% +} % Unnumbered chapters. -\def\unnchapentry#1#2#3#4{\dochapentry{#1}{#4}} -\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{#4}} +\def\unnchapentry#1#2#3#4{\dochapentry{#1}{}{#4}} +\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{}{#4}} % Sections. -\def\numsecentry#1#2#3#4{\dosecentry{#2\labelspace#1}{#4}} +\def\numsecentry#1#2#3#4{\dosecentry{#1}{#2}{#4}} + +\def\numsecentry#1#2#3#4{% + \retrievesecnowidth\secnowidthsec{#2}% + \dosecentry{#1}{#2}{#4}% +} \let\appsecentry=\numsecentry -\def\unnsecentry#1#2#3#4{\dosecentry{#1}{#4}} +\def\unnsecentry#1#2#3#4{% + \retrievesecnowidth\secnowidthsec{#2}% + \dosecentry{#1}{}{#4}% +} % Subsections. -\def\numsubsecentry#1#2#3#4{\dosubsecentry{#2\labelspace#1}{#4}} +\def\numsubsecentry#1#2#3#4{% + \retrievesecnowidth\secnowidthssec{#2}% + \dosubsecentry{#1}{#2}{#4}% +} \let\appsubsecentry=\numsubsecentry -\def\unnsubsecentry#1#2#3#4{\dosubsecentry{#1}{#4}} +\def\unnsubsecentry#1#2#3#4{% + \retrievesecnowidth\secnowidthssec{#2}% + \dosubsecentry{#1}{}{#4}% +} % And subsubsections. -\def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#2\labelspace#1}{#4}} +\def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#2}{#4}} \let\appsubsubsecentry=\numsubsubsecentry -\def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#4}} +\def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{}{#4}} % This parameter controls the indentation of the various levels. % Same as \defaultparindent. \newdimen\tocindent \tocindent = 15pt -% Now for the actual typesetting. In all these, #1 is the text and #2 is the -% page number. +% Now for the actual typesetting. In all these, #1 is the text, #2 is +% a section number if present, and #3 is the page number. % % If the toc has to be broken over pages, we want it to be at chapters % if at all possible; hence the \penalty. -\def\dochapentry#1#2{% +\def\dochapentry#1#2#3{% \penalty-300 \vskip1\baselineskip plus.33\baselineskip minus.25\baselineskip \begingroup % Move the page numbers slightly to the right \advance\entryrightmargin by -0.05em \chapentryfonts - \tocentry{#1}{#2}% + \extrasecnoskip=0.4em % separate chapter number more + \tocentry{#1}{#2}{#3}% \endgroup \nobreak\vskip .25\baselineskip plus.1\baselineskip } -\def\dosecentry#1#2{\begingroup +\def\dosecentry#1#2#3{\begingroup + \secnowidth=\secnowidthchap \secentryfonts \leftskip=\tocindent - \tocentry{#1}{#2}% + \tocentry{#1}{#2}{#3}% \endgroup} -\def\dosubsecentry#1#2{\begingroup +\def\dosubsecentry#1#2#3{\begingroup + \secnowidth=\secnowidthsec \subsecentryfonts \leftskip=2\tocindent - \tocentry{#1}{#2}% + \tocentry{#1}{#2}{#3}% \endgroup} -\def\dosubsubsecentry#1#2{\begingroup +\def\dosubsubsecentry#1#2#3{\begingroup + \secnowidth=\secnowidthssec \subsubsecentryfonts \leftskip=3\tocindent - \tocentry{#1}{#2}% + \tocentry{#1}{#2}{#3}% \endgroup} -% We use the same \entry macro as for the index entries. -\let\tocentry = \entry +% Used for the maximum width of a section number so we can align +% section titles. +\newdimen\secnowidth +\secnowidth=0pt +\newdimen\extrasecnoskip +\extrasecnoskip=0pt -% Space between chapter (or whatever) number and the title. -\def\labelspace{\hskip1em \relax} +% \tocentry{TITLE}{SEC NO}{PAGE} +% +\def\tocentry#1#2#3{% + \def\secno{#2}% + \ifx\empty\secno + \entry{#1}{#3}% + \else + \ifdim 0pt=\secnowidth + \setbox0=\hbox{#2\hskip\labelspace\hskip\extrasecnoskip}% + \else + \advance\secnowidth by \labelspace + \advance\secnowidth by \extrasecnoskip + \setbox0=\hbox to \secnowidth{% + #2\hskip\labelspace\hskip\extrasecnoskip\hfill}% + \fi + \entrycontskip=\wd0 + \entry{\box0 #1}{#3}% + \fi +} +\newdimen\labelspace +\labelspace=0.6em \def\chapentryfonts{\secfonts \rm} \def\secentryfonts{\textfonts} @@ -7787,6 +7903,8 @@ might help (with 'rm \jobname.?? \jobname.??s')% \tolerance=10000 \hbadness=10000 \exdentamount=\defbodyindent {% + \def\^^M{}% for line continuation + % % defun fonts. We use typewriter by default (used to be bold) because: % . we're printing identifiers, they should be in tt in principle. % . in languages with many accents, such as Czech or French, it's @@ -7819,6 +7937,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% % Print arguments. Use slanted for @def*, typewriter for @deftype*. \def\defunargs#1{% \bgroup + \def\^^M{}% for line continuation \df \ifdoingtypefn \tt \else \sl \fi \ifflagclear{txicodevaristt}{}% {\def\var##1{{\setregularquotes \ttsl ##1}}}% diff --git a/Master/tlpkg/installer/ctan-mirrors.pl b/Master/tlpkg/installer/ctan-mirrors.pl index 61e98fc5ee8..be5d4f8a8cb 100644 --- a/Master/tlpkg/installer/ctan-mirrors.pl +++ b/Master/tlpkg/installer/ctan-mirrors.pl @@ -29,9 +29,6 @@ $mirrors = { 'Hong Kong' => { 'https://mirror-hk.koddos.net/CTAN/' => 1, }, - 'India' => { - 'https://mirror.niser.ac.in/ctan/' => 1, - }, 'Indonesia' => { 'http://repo.ugm.ac.id/ctan/' => 1, 'https://mirror.unpad.ac.id/ctan/' => 1, |