diff options
Diffstat (limited to 'macros/latex/required/tools')
34 files changed, 784 insertions, 42 deletions
diff --git a/macros/latex/required/tools/README.md b/macros/latex/required/tools/README.md index 18d7ab768c..f5dfbdf246 100644 --- a/macros/latex/required/tools/README.md +++ b/macros/latex/required/tools/README.md @@ -1,7 +1,7 @@ The LaTeX `tools` bundle ======================== -Release 2020-02-02 +Release 2020-10-01 Overview -------- diff --git a/macros/latex/required/tools/afterpage.pdf b/macros/latex/required/tools/afterpage.pdf Binary files differindex b4228f13b5..3aaedccf87 100644 --- a/macros/latex/required/tools/afterpage.pdf +++ b/macros/latex/required/tools/afterpage.pdf diff --git a/macros/latex/required/tools/array-2020-02-10.sty b/macros/latex/required/tools/array-2020-02-10.sty new file mode 100644 index 0000000000..9fddc0d490 --- /dev/null +++ b/macros/latex/required/tools/array-2020-02-10.sty @@ -0,0 +1,374 @@ +%% +%% This is file `array.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% array.dtx (with options: `package,ncols') +%% +%% This is a generated file. +%% +%% The source is maintained by the LaTeX Project team and bug +%% reports for it can be opened at https://latex-project.org/bugs/ +%% (but please observe conditions on bug reports sent to that address!) +%% +%% +%% Copyright (C) 1993-2020 +%% The LaTeX3 Project and any individual authors listed elsewhere +%% in this file. +%% +%% This file was generated from file(s) of the Standard LaTeX `Tools Bundle'. +%% -------------------------------------------------------------------------- +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% https://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This file may only be distributed together with a copy of the LaTeX +%% `Tools Bundle'. You may however distribute the LaTeX `Tools Bundle' +%% without such generated files. +%% +%% The list of all files belonging to the LaTeX `Tools Bundle' is +%% given in the file `manifest.txt'. +%% +%% Package `array' to use with LaTeX 2e +%% Copyright (C) 1989-1998 Frank Mittelbach, all rights reserved. +\NeedsTeXFormat{LaTeX2e}[1995/06/01] +\providecommand\DeclareRelease[3]{} +\providecommand\DeclareCurrentRelease[2]{} + +\DeclareRelease{}{2016-10-06}{array-2016-10-06.sty} +\DeclareCurrentRelease{}{2019-10-01} + +\ProvidesPackage{array} + [2020/02/10 v2.4m Tabular extension package (FMi)] +%% + +\def\@addtopreamble#1{\xdef\@preamble{\@preamble #1}} +\def\@testpach{\@chclass + \ifnum \@lastchclass=6 \@ne \@chnum \@ne \else + \ifnum \@lastchclass=7 5 \else + \ifnum \@lastchclass=8 \tw@ \else + \ifnum \@lastchclass=9 \thr@@ + \else \z@ + \ifnum \@lastchclass = 10 \else + \edef\@nextchar{\expandafter\string\@nextchar}% + \@chnum + \if \@nextchar c\z@ \else + \if \@nextchar l\@ne \else + \if \@nextchar r\tw@ \else + \z@ \@chclass + \if\@nextchar |\@ne \else + \if \@nextchar !6 \else + \if \@nextchar @7 \else + \if \@nextchar <8 \else + \if \@nextchar >9 \else + 10 + \@chnum + \if \@nextchar m\thr@@\else + \if \@nextchar p4 \else + \if \@nextchar b5 \else + \z@ \@chclass \z@ \@preamerr \z@ \fi \fi \fi \fi + \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi} +\def\@xexpast#1*#2#3#4\@@{% + \@tempcnta #2 + \toks@={#1}\@temptokena={#3}% + \let\the@toksz\relax \let\the@toks\relax + \def\@tempa{\the@toksz}% + \ifnum\@tempcnta >0 \@whilenum\@tempcnta >0\do + {\edef\@tempa{\@tempa\the@toks}\advance \@tempcnta \m@ne}% + \let \@tempb \@xexpast \else + \let \@tempb \@xexnoop \fi + \def\the@toksz{\the\toks@}\def\the@toks{\the\@temptokena}% + \edef\@tempa{\@tempa}% + \expandafter \@tempb \@tempa #4\@@} +\def\prepnext@tok{\advance \count@ \@ne + \toks\count@{}} +\def\save@decl{\toks\count@ \expandafter{\@nextchar}} +\def\insert@column{% + \the@toks \the \@tempcnta + \ignorespaces \@sharp \unskip + \the@toks \the \count@ \relax} +\newdimen\col@sep +\def\@acol{\@addtopreamble{\hskip\col@sep}} +\def\@classx{% + \ifcase \@lastchclass + \@acolampacol \or + \@addamp \@acol \or + \@acolampacol \or + \or + \@acol \@firstampfalse \or + \@addamp + \fi} +\def\@classz{\@classx + \@tempcnta \count@ + \prepnext@tok + \@addtopreamble{\ifcase \@chnum + \hfil + \hskip1sp% + \d@llarbegin + \insert@column + \d@llarend \do@row@strut \hfil \or + \hskip1sp\d@llarbegin \insert@column \d@llarend \do@row@strut \hfil \or + \hfil\hskip1sp\d@llarbegin \insert@column \d@llarend \do@row@strut \or + \setbox\ar@mcellbox\vbox + \@startpbox{\@nextchar}\insert@column \@endpbox + \ar@align@mcell + \do@row@strut \or + \vtop \@startpbox{\@nextchar}\insert@column \@endpbox\do@row@strut \or + \vbox \@startpbox{\@nextchar}\insert@column \@endpbox\do@row@strut + \fi}\prepnext@tok} + +\newbox\ar@mcellbox +\def\ar@align@mcell{% + \ifdim \ht\ar@mcellbox > \ht\@arstrutbox + \begingroup + \dimen@\ht\ar@mcellbox + \advance\dimen@-\ht\@arstrutbox + \advance\dimen@\baselineskip + \lower.5\dimen@\box\ar@mcellbox + \endgroup + \else % assume one line and align at baseline + \box\ar@mcellbox + \fi} + +\def\@arrayrule{\@addtopreamble \vline} +\def\@classvii{\ifnum \@lastchclass = \thr@@ + \@preamerr \thr@@ \fi} +\def\@classvi{\ifcase \@lastchclass + \@acol \or + \@addtopreamble{\hskip \doublerulesep}\or + \@acol \or + \@classvii + \fi} +\def\@classii{\advance \count@ \m@ne + \save@decl\prepnext@tok} +\def\@classi{\@classvi + \ifcase \@chnum \@arrayrule \or + \@classv \fi} +\def\@startpbox#1{\bgroup + \color@begingroup + \setlength\hsize{#1}\@arrayparboxrestore + \everypar{% + \vrule \@height \ht\@arstrutbox \@width \z@ + \everypar{}}% + } +\def\@endpbox{\@finalstrut\@arstrutbox \color@endgroup \egroup\hfil} +\def\@array[#1]#2{% + \@tempdima \ht \strutbox + \advance \@tempdima by\extrarowheight + \setbox \@arstrutbox \hbox{\vrule + \@height \arraystretch \@tempdima + \@depth \arraystretch \dp \strutbox + \@width \z@}% + \begingroup + \@mkpream{#2}% + \xdef\@preamble{\noexpand \ialign \@halignto + \bgroup \@arstrut \@preamble + \tabskip \z@ \cr}% + \endgroup + \@arrayleft + \if #1t\vtop \else \if#1b\vbox \else \vcenter \fi \fi + \bgroup + \let \@sharp ##\let \protect \relax + \lineskip \z@ + \baselineskip \z@ + \m@th + \let\\\@arraycr \let\tabularnewline\\\let\par\@empty \@preamble} +\def\arraybackslash{\let\\\tabularnewline} +\newdimen \extrarowheight +\extrarowheight=0pt +\def\@arstrut{\unhcopy\@arstrutbox} +\def\@arraycr{\relax\iffalse{\fi\ifnum 0=`}\fi + \@ifstar \@xarraycr \@xarraycr} +\def\@xarraycr{\@ifnextchar [% + \@argarraycr {\ifnum 0=`{}\fi\cr}} +\def\@argarraycr[#1]{\ifnum0=`{}\fi\ifdim #1>\z@ + \expandafter\@xargarraycr\else + \expandafter\@yargarraycr\fi{#1}} +\def\@xargarraycr#1{\unskip\gdef\do@row@strut + {\@tempdima #1\advance\@tempdima \dp\@arstrutbox + \vrule \@depth\@tempdima \@width\z@\global\let\do@row@strut\relax}% + % \begin{macrocode} + \ifnum\@multicnt >\z@ \do@row@strut \fi + \cr} +\let\do@row@strut\relax +\def\@yargarraycr#1{\cr\noalign{\vskip #1}} +\long\def\multicolumn#1#2#3{% + \multispan{#1}\begingroup + \def\@addamp{\if@firstamp \@firstampfalse \else + \@preamerr 5\fi}% + \@mkpream{#2}\@addtopreamble\@empty + \endgroup + \def\@sharp{#3}% + \@arstrut \@preamble + \null + \ignorespaces} +\let\d@llarbegin\begingroup +\let\d@llarend\endgroup +\def\array{\col@sep\arraycolsep + \def\d@llarbegin{$}\let\d@llarend\d@llarbegin\def\@halignto{}% + \@tabarray} +\def\tabular{\def\@halignto{}\@tabular} +\expandafter\def\csname tabular*\endcsname#1{% + \setlength\dimen@{#1}% + \edef\@halignto{to\the\dimen@}\@tabular} +\def\@tabular{% + \leavevmode + \hbox \bgroup $\col@sep\tabcolsep \let\d@llarbegin\begingroup + \let\d@llarend\endgroup + \@tabarray} +\def\endtabular{\endarray $\egroup} +\expandafter\let\csname endtabular*\endcsname=\endtabular +\let\@ampacol=\relax \let\@expast=\relax +\let\@arrayclassiv=\relax \let\@arrayclassz=\relax +\let\@tabclassiv=\relax \let\@tabclassz=\relax +\let\@arrayacol=\relax \let\@tabacol=\relax +\let\@tabularcr=\relax \let\@@endpbox=\relax +\let\@argtabularcr=\relax \let\@xtabularcr=\relax +\def\@preamerr#1{\def\@tempd{{..} at wrong position: }% + \PackageError{array}{% + \ifcase #1 Illegal pream-token (\@nextchar): `c' used\or %0 + Missing arg: token ignored\or %1 + Empty preamble: `l' used\or %2 + >\@tempd token ignored\or %3 + <\@tempd changed to !{..}\or %4 + Only one column-spec. allowed.\fi}\@ehc} %5 +\def\newcolumntype#1{% + \edef\NC@char{\string#1}% + \@ifundefined{NC@find@\NC@char}% + {\@tfor\next:=<>clrmbp@!|\do + {% + \if\expandafter\noexpand\next\NC@char + \PackageWarning{array}% + {Redefining primitive column \NC@char}\fi}% + \NC@list\expandafter{\the\NC@list\NC@do#1}}% + {\PackageWarning{array}{Column \NC@char\space is already defined}}% + \@namedef{NC@find@\NC@char}##1#1{\NC@{##1}}% + \@ifnextchar[{\newcol@{\NC@char}}{\newcol@{\NC@char}[0]}} +\def\newcol@#1[#2]#3{\expandafter\@reargdef + \csname NC@rewrite@#1\endcsname[#2]{\NC@find#3}} +\def\NC@#1{% + \@temptokena\expandafter{\the\@temptokena#1}\futurelet\next\NC@ifend} +\def\NC@ifend{% + \ifx\next\relax + \else\@tempswatrue\expandafter\NC@rewrite\fi} +\def\NC@do#1{% + \expandafter\let\expandafter\NC@rewrite + \csname NC@rewrite@\string#1\endcsname + \expandafter\let\expandafter\NC@find + \csname NC@find@\string#1\endcsname + \expandafter\@temptokena\expandafter{\expandafter}% + \expandafter\NC@find\the\@temptokena#1\relax} +\def\showcols{{\def\NC@do##1{\let\NC@do\NC@show}\the\NC@list}} +\def\NC@show#1{% + \typeout{Column #1\expandafter\expandafter\expandafter\NC@strip + \expandafter\meaning\csname NC@rewrite@#1\endcsname\@@}} +\def\NC@strip#1:#2->#3 #4\@@{#2 -> #4} +\newtoks\NC@list +\newcolumntype{*}[2]{} +\long\@namedef{NC@rewrite@*}#1#2{% + \count@#1\relax + \loop + \ifnum\count@>\z@ + \advance\count@\m@ne + \@temptokena\expandafter{\the\@temptokena#2}% + \repeat + \NC@find} +\let\@xexpast\relax +\let\@xexnoop\relax +\def\save@decl{\toks \count@ = \expandafter\expandafter\expandafter + {\expandafter\@nextchar\the\toks\count@}} +\def\@mkpream#1{\gdef\@preamble{}\@lastchclass 4 \@firstamptrue + \let\@sharp\relax + \def\@startpbox##1{\unexpanded\expandafter{\expandafter + \@startpbox\expandafter{##1}}}\let\@endpbox\relax + \let\do@row@strut\relax + \let\ar@align@mcell\relax + \@temptokena{#1}\@tempswatrue + \@whilesw\if@tempswa\fi{\@tempswafalse\the\NC@list}% + \count@\m@ne + \let\the@toks\relax + \prepnext@tok + \expandafter \@tfor \expandafter \@nextchar + \expandafter :\expandafter =\the\@temptokena \do + {\@testpach + \ifcase \@chclass \@classz \or \@classi \or \@classii + \or \save@decl \or \or \@classv \or \@classvi + \or \@classvii \or \@classviii + \or \@classx + \or \@classx \fi + \@lastchclass\@chclass}% + \ifcase\@lastchclass + \@acol \or + \or + \@acol \or + \@preamerr \thr@@ \or + \@preamerr \tw@ \@addtopreamble\@sharp \or + \or + \else \@preamerr \@ne \fi + \def\the@toks{\the\toks}} +\let\@classix\relax +\def\@classviii{\ifnum \@lastchclass >\z@\ifnum\@lastchclass=\tw@\else + \@preamerr 4\@chclass 6 \@classvi \fi\fi} +\def\@classv{\save@decl + \expandafter\NC@ecs\@nextchar\extracolsep{}\extracolsep\@@@ + \@addtopreamble{\d@llarbegin\the@toks\the\count@\relax\d@llarend}% + \prepnext@tok} +\def\NC@ecs#1\extracolsep#2#3\extracolsep#4\@@@{\def\@tempa{#2}% + \ifx\@tempa\@empty\else\toks\count@={#1\tabskip#2\relax#3}\fi} +\def\@tabarray{\@ifnextchar[{\@@array}{\@@array[c]}} +\let\@@array\@array +\def\endarray{\crcr \egroup \egroup \@arrayright \gdef\@preamble{}} +\let\@arrayleft\@empty +\let\@arrayright\@empty +\newlength{\extratabsurround} +\setlength{\extratabsurround}{2pt} +\newlength{\backup@length} +\newcommand{\firsthline}{% + \multicolumn1c{% + \global\backup@length\ht\@arstrutbox + \global\advance\backup@length\dp\@arstrutbox + \global\advance\backup@length\arrayrulewidth + \raise\extratabsurround\copy\@arstrutbox + }\\[-\backup@length]\hline +} +\newcommand{\lasthline}{\hline\multicolumn1c{% + \global\backup@length2\ht\@arstrutbox + \global\advance\backup@length2\dp\@arstrutbox + \global\advance\backup@length\arrayrulewidth + }\\[-\backup@length]% + \multicolumn1c{% + \lower\extratabsurround\copy\@arstrutbox + }% +} +\CheckCommand*\@xhline{\ifx\reserved@a\hline + \vskip\doublerulesep + \vskip-\arrayrulewidth + \fi + \ifnum0=`{\fi}} +\renewcommand*\@xhline{\ifx\reserved@a\hline + \vskip\doublerulesep + \fi + \ifnum0=`{\fi}} + +\newsavebox\ar@cellbox +\newcolumntype{w}[2]{% + >{\begin{lrbox}\ar@cellbox}% + c% + <{\end{lrbox}% + \makebox[#2][#1]{\unhbox\ar@cellbox}}} + +\newcolumntype{W}[2] + {>{\begin{lrbox}\ar@cellbox}% + c% + <{\end{lrbox}% + \let\hss\hfil + \makebox[#2][#1]{\unhbox\ar@cellbox}}} +\endinput +%% +%% End of file `array.sty'. diff --git a/macros/latex/required/tools/array.dtx b/macros/latex/required/tools/array.dtx index acfa560937..ff963d7f51 100644 --- a/macros/latex/required/tools/array.dtx +++ b/macros/latex/required/tools/array.dtx @@ -29,10 +29,11 @@ %<+package>\providecommand\DeclareCurrentRelease[2]{} %<+package> %<+package>\DeclareRelease{}{2016-10-06}{array-2016-10-06.sty} -%<+package>\DeclareCurrentRelease{}{2019-10-01} +%<+package>\DeclareRelease{v2.4}{2020-02-10}{array-2020-02-10.sty} +%<+package>\DeclareCurrentRelease{}{2020-10-01} %<+package> %<+package>\ProvidesPackage{array} -%<+package> [2019/08/31 v2.4l Tabular extension package (FMi)] +%<+package> [2020/10/01 v2.5c Tabular extension package (FMi)] % % \fi % @@ -551,14 +552,16 @@ % \item rules can be placed between columns or rows thereby enlarging % the table. % \end{enumerate} -% \texttt{array.sty} implements the second possibility while the -% default implementation in the \LaTeX{} kernel implements the first -% concept. Both concepts have their merits but one has to be aware of -% the individual implications. +% For vertical rules \texttt{array.sty} implements the second +% possibility while the default implementation in the \LaTeX{} kernel +% implements the first concept. +% Both concepts have their merits but +% one has to be aware of the individual implications. % \begin{itemize} % \item -% With standard \LaTeX{} adding rules to a table will not affect the -% width or height of the table (unless double rules are used), e.g., +% With standard \LaTeX{} adding vertical rules to a table will +% not affect the +% width of the table (unless double rules are used), e.g., % changing a preamble from \verb=lll= to \verb=l|l|l= does not % affect the document other than adding rules to the table. In % contrast, with \texttt{array.sty} a table that just fit the @@ -601,6 +604,12 @@ % \end{center} % \end{itemize} % +% Horizontal rules produced with \cs{hline} add to the table height in +% both implementations but they differ in handling double \cs{hline}s. +% In contrast a \cs{cline} does not change the table +% height.\footnote{All a bit inconsistent, but nothing that can be +% changed after being 30+ years in existence.} +% % \subsection{Comparisons with older versions of \texttt{array.sty}} % % There are some differences in the way version 2.1 treats incorrect @@ -730,7 +739,11 @@ \NeedsTeXFormat{LaTeX2e}[1995/12/01] \documentclass{ltxdoc} -\AtBeginDocument{\DeleteShortVerb{\|}} % undo the default is not used +% undo the default is not used: + +\IfFormatAtLeastTF {2020/10/01} + {\AtBeginDocument[ltxdoc]{\DeleteShortVerb{\|}} } + {\AtBeginDocument{\DeleteShortVerb{\|}} } \usepackage{array} @@ -746,6 +759,7 @@ %\OnlyDescription % comment out for implementation details %\OldMakeindex % use if your MakeIndex is pre-v2.9 + \begin{document} \DocInput{array.dtx} \end{document} @@ -2206,8 +2220,13 @@ \let\do@row@strut\relax % \end{macrocode} % +% \cs{@yargarraycr} is the same as in the \LaTeX{} kernel +% (depending on the date of the kernel with one of the two +% definitions below). We therefore do not define it again. +% \changes{v2.5b}{2020/04/22}{Don't define \cs{@yargarraycr} unnecessarily} % \begin{macrocode} -\def\@yargarraycr#1{\cr\noalign{\vskip #1}} +%\def\@yargarraycr#1{\cr\noalign{\@vspace@calcify{#1}}} % 2020-10-01 +%\def\@yargarraycr#1{\cr\noalign{\vskip #1}} % \end{macrocode} % \end{macro} % \end{macro} @@ -2916,10 +2935,13 @@ % % We start by producing a single tabular row without any visible % content that will produce the external reference point in case -% "[t]" is used. +% "[t]" is used. We need to suppress the \cs{tabcolsep} in the +% \cs{multicolumn} in case there wasn't any in the real column. +% +% \changes{v2.5c}{2020/07/20}{Suppress all column space (gh/322)} % \begin{macrocode} \newcommand{\firsthline}{% - \multicolumn1c{% + \multicolumn1{@{}c@{}}{% % \end{macrocode} % Within this row we calculate "\backup@length" to be the height % plus depth of a standard line. In addition we have to add the @@ -2936,6 +2958,10 @@ % \begin{macrocode} \raise\extratabsurround\copy\@arstrutbox % \end{macrocode} +% And we should also cancel the guard otherwise we end up with two. +% \begin{macrocode} + \kern-1sp% +% \end{macrocode} % Having done all this we end the line and back up by the value of % "\backup@length" and then finally place our "\hline". This should % place the line exactly at the right place but keep the reference @@ -2957,9 +2983,12 @@ % depth of this last line increased by "\extratabsurround" without % changing the placement "\hline". % -% We start by placing the rule followed by an invisible row. +% We start by placing the rule followed by an invisible row. We +% need to suppress the \cs{tabcolsep} in the multicol in case there +% wasn't any in the real column. +% \changes{v2.5c}{2020/07/20}{Suppress all column space (gh/322)} % \begin{macrocode} -\newcommand{\lasthline}{\hline\multicolumn1c{% +\newcommand{\lasthline}{\hline\multicolumn1{@{}c@{}}{% % \end{macrocode} % We now calculate "\backup@length" to be the height and depth of % two lines plus the width of the rule. @@ -2977,8 +3006,9 @@ % reference for the whole tabular). Since this row is invisible we % can enlarge its depth by the desired amount. % \begin{macrocode} - \multicolumn1c{% + \multicolumn1{@{}c@{}}{% \lower\extratabsurround\copy\@arstrutbox + \kern-1sp% }% } % \end{macrocode} @@ -3034,14 +3064,18 @@ % alignment which is either "l", "c", or "r" and the second is the % nominal width of the column. % \changes{v2.4f}{2017/11/07}{Column type added} +% \changes{v2.5a}{2020/04/06}{Use \cs{d@llarbegin} and \cs{d@llarend} so +% that cell is typeset in math mode inside \texttt{array} (gh/297)} % \begin{macrocode} \newcolumntype{w}[2]{% % \end{macrocode} % Before the cell content we start an "lrbox"-environment to % collect the cell material into the previously allocated box -% "\ar@cellbox". +% "\ar@cellbox". We add \cs{d@llarbegin} (and later \cs{d@llarend}) +% so that the content is typeset in math mode if we are in an +% \texttt{array} environment. % \begin{macrocode} - >{\begin{lrbox}\ar@cellbox}% + >{\begin{lrbox}\ar@cellbox\d@llarbegin}% % \end{macrocode} % Then comes a specifier for the cell content. We use "c", but % that doesn't matter as in the end we will always put a box of a @@ -3056,10 +3090,13 @@ % of the cell content is now in box "\ar@cellbox". As a final step we % put that box into a "\makebox" using the optional arguments of % that command to achieve the correct width and the desired -% alignment within that width. +% alignment within that width. We unbox the collected material so +% that any stretchable glue inside can interact with the alignment. +% \changes{v2.4m}{2020/02/10}{Unbox collected material so that +% stretchable glue inside can act (gh/270)} % \begin{macrocode} - <{\end{lrbox}% - \makebox[#2][#1]{\usebox\ar@cellbox}}} + <{\d@llarend \end{lrbox}% + \makebox[#2][#1]{\unhbox\ar@cellbox}}} % \end{macrocode} % \end{macro} @@ -3069,11 +3106,13 @@ % The \texttt{W} is similar but in this case we want a warning if % the cell content is too wide. % \changes{v2.4f}{2017/11/07}{Column type added} +% \changes{v2.5a}{2020/04/06}{Use \cs{d@llarbegin} and \cs{d@llarend} so +% that cell is typeset in mathmode inside \texttt{array} (gh/297)} % \begin{macrocode} \newcolumntype{W}[2] - {>{\begin{lrbox}\ar@cellbox}% + {>{\begin{lrbox}\ar@cellbox\d@llarbegin}% c% - <{\end{lrbox}% + <{\d@llarend\end{lrbox}% \let\hss\hfil \makebox[#2][#1]{\unhbox\ar@cellbox}}} % \end{macrocode} diff --git a/macros/latex/required/tools/array.pdf b/macros/latex/required/tools/array.pdf Binary files differindex e308c14d2b..317e208e98 100644 --- a/macros/latex/required/tools/array.pdf +++ b/macros/latex/required/tools/array.pdf diff --git a/macros/latex/required/tools/bm.pdf b/macros/latex/required/tools/bm.pdf Binary files differindex 4e988b3dd4..fc9bd90e62 100644 --- a/macros/latex/required/tools/bm.pdf +++ b/macros/latex/required/tools/bm.pdf diff --git a/macros/latex/required/tools/calc.pdf b/macros/latex/required/tools/calc.pdf Binary files differindex 0f5d289efc..503fc8e501 100644 --- a/macros/latex/required/tools/calc.pdf +++ b/macros/latex/required/tools/calc.pdf diff --git a/macros/latex/required/tools/changes.txt b/macros/latex/required/tools/changes.txt index bc35e02d1a..9faebdb680 100644 --- a/macros/latex/required/tools/changes.txt +++ b/macros/latex/required/tools/changes.txt @@ -5,6 +5,53 @@ completeness or accuracy and it contains some references to files that are not part of the distribution. ======================================================================= +2020-08-11 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * varioref.dtx: Updated suppor for Japanese (gh/352 and gh/369) + +2020-07-20 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * array.dtx (subsection{Support for \firsthline ...): + Ensure that the tabular width isn't changed (gh/322) + + * array.dtx (subsection{Handling of rules}): + Clarified the handling of rules, no code change (gh/319). + + * varioref.dtx (subsection{Options}): + Option japanese added (gh/352) + +2020-06-06 Johannes Braams <Johannes.Braams@latex-project.org> + + * verbatim.dtx: Save the value if \@filef@und before the call to + \@verbatim to make sure that \verbatiminput reads the right + file. (gh/222). + +2020-05-10 Johannes Braams <Johannes.Braams@latex-project.org> + + * xr.dtx: Remove leading and trailing spaces from the argument to + \externaldocument, making sure that spaces *in* filenames are + supprted (gh/217). + +2020-04-22 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * array.dtx (section{The line separator \\): + Don't define \@yargarraycr unnecessarily (gh/152) + +2020-04-06 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * array.dtx (subsection{Implementing column types w and W}): + Use \d@llarbegin and \d@llarendde so that cell is typeset by + default in math mode inside array; the use of >{$} ... <{$} + to make such a column text mode remains possible + (gh/297) --- this is a breaking change! + + +2020-02-10 Frank Mittelbach <Frank.Mittelbach@latex-project.org> + + * array.dtx (subsection{Implementing column types w and W}): + Unbox collected material so that stretchable glue + inside can act (gh/270) + ######################### # 2020-02-02 Release ######################### diff --git a/macros/latex/required/tools/dcolumn.pdf b/macros/latex/required/tools/dcolumn.pdf Binary files differindex bdef8b616f..a8fb3ec0e5 100644 --- a/macros/latex/required/tools/dcolumn.pdf +++ b/macros/latex/required/tools/dcolumn.pdf diff --git a/macros/latex/required/tools/delarray.pdf b/macros/latex/required/tools/delarray.pdf Binary files differindex cb0d378fc0..4149c3350c 100644 --- a/macros/latex/required/tools/delarray.pdf +++ b/macros/latex/required/tools/delarray.pdf diff --git a/macros/latex/required/tools/enumerate.pdf b/macros/latex/required/tools/enumerate.pdf Binary files differindex 595b850bb7..fb3444bfb0 100644 --- a/macros/latex/required/tools/enumerate.pdf +++ b/macros/latex/required/tools/enumerate.pdf diff --git a/macros/latex/required/tools/fileerr.pdf b/macros/latex/required/tools/fileerr.pdf Binary files differindex 46f7e76603..afbd599ced 100644 --- a/macros/latex/required/tools/fileerr.pdf +++ b/macros/latex/required/tools/fileerr.pdf diff --git a/macros/latex/required/tools/fontsmpl.pdf b/macros/latex/required/tools/fontsmpl.pdf Binary files differindex e930726bb1..47b8b6add7 100644 --- a/macros/latex/required/tools/fontsmpl.pdf +++ b/macros/latex/required/tools/fontsmpl.pdf diff --git a/macros/latex/required/tools/ftnright.pdf b/macros/latex/required/tools/ftnright.pdf Binary files differindex ca4fbdd831..e0fff5f0fa 100644 --- a/macros/latex/required/tools/ftnright.pdf +++ b/macros/latex/required/tools/ftnright.pdf diff --git a/macros/latex/required/tools/hhline.pdf b/macros/latex/required/tools/hhline.pdf Binary files differindex 5c2a81ef88..eb2ec4aa3d 100644 --- a/macros/latex/required/tools/hhline.pdf +++ b/macros/latex/required/tools/hhline.pdf diff --git a/macros/latex/required/tools/indentfirst.pdf b/macros/latex/required/tools/indentfirst.pdf Binary files differindex 75987d3cb3..c243c729a1 100644 --- a/macros/latex/required/tools/indentfirst.pdf +++ b/macros/latex/required/tools/indentfirst.pdf diff --git a/macros/latex/required/tools/layout.pdf b/macros/latex/required/tools/layout.pdf Binary files differindex 64d086cb1e..f8acf83316 100644 --- a/macros/latex/required/tools/layout.pdf +++ b/macros/latex/required/tools/layout.pdf diff --git a/macros/latex/required/tools/longtable.pdf b/macros/latex/required/tools/longtable.pdf Binary files differindex 67b21c5b23..654a01e741 100644 --- a/macros/latex/required/tools/longtable.pdf +++ b/macros/latex/required/tools/longtable.pdf diff --git a/macros/latex/required/tools/multicol.pdf b/macros/latex/required/tools/multicol.pdf Binary files differindex 7ac6dec0ef..1be39ed835 100644 --- a/macros/latex/required/tools/multicol.pdf +++ b/macros/latex/required/tools/multicol.pdf diff --git a/macros/latex/required/tools/rawfonts.pdf b/macros/latex/required/tools/rawfonts.pdf Binary files differindex d431dcd213..a08d02e194 100644 --- a/macros/latex/required/tools/rawfonts.pdf +++ b/macros/latex/required/tools/rawfonts.pdf diff --git a/macros/latex/required/tools/shellesc.pdf b/macros/latex/required/tools/shellesc.pdf Binary files differindex a2c9b5ece8..17cf918f46 100644 --- a/macros/latex/required/tools/shellesc.pdf +++ b/macros/latex/required/tools/shellesc.pdf diff --git a/macros/latex/required/tools/showkeys.pdf b/macros/latex/required/tools/showkeys.pdf Binary files differindex 12c5faab68..f906508ba7 100644 --- a/macros/latex/required/tools/showkeys.pdf +++ b/macros/latex/required/tools/showkeys.pdf diff --git a/macros/latex/required/tools/somedefs.pdf b/macros/latex/required/tools/somedefs.pdf Binary files differindex 594989d675..bc5e6f0363 100644 --- a/macros/latex/required/tools/somedefs.pdf +++ b/macros/latex/required/tools/somedefs.pdf diff --git a/macros/latex/required/tools/tabularx.pdf b/macros/latex/required/tools/tabularx.pdf Binary files differindex c1a4e54b0b..ac37ffe15f 100644 --- a/macros/latex/required/tools/tabularx.pdf +++ b/macros/latex/required/tools/tabularx.pdf diff --git a/macros/latex/required/tools/theorem.pdf b/macros/latex/required/tools/theorem.pdf Binary files differindex dea392de68..a67c4c1fb3 100644 --- a/macros/latex/required/tools/theorem.pdf +++ b/macros/latex/required/tools/theorem.pdf diff --git a/macros/latex/required/tools/tools-overview.pdf b/macros/latex/required/tools/tools-overview.pdf Binary files differindex 7bf771f6c3..4db178ed30 100644 --- a/macros/latex/required/tools/tools-overview.pdf +++ b/macros/latex/required/tools/tools-overview.pdf diff --git a/macros/latex/required/tools/trace.pdf b/macros/latex/required/tools/trace.pdf Binary files differindex a989f84d2b..ad2af272be 100644 --- a/macros/latex/required/tools/trace.pdf +++ b/macros/latex/required/tools/trace.pdf diff --git a/macros/latex/required/tools/varioref.dtx b/macros/latex/required/tools/varioref.dtx index 077103eb97..2bba60465e 100644 --- a/macros/latex/required/tools/varioref.dtx +++ b/macros/latex/required/tools/varioref.dtx @@ -40,7 +40,7 @@ %<package>\DeclareCurrentRelease{}{2019-10-01} %<package> %<package>\ProvidesPackage{varioref} -%<package> [2020/01/23 v1.6c package for extended references (FMi)] +%<package> [2020/08/11 v1.6e package for extended references (FMi)] % \fi % %% @@ -70,7 +70,7 @@ % \PackageWarning{inputenc}{Unicode character \expandafter % \UTFviii@splitcsname\string##1\relax % \MessageBreak -% not set up for use with LaTeX}^^A +% not set up for use with LaTeX -- ignored}^^A % \raisebox{.8pt}{\fboxsep1pt\kern.1pt\fbox{$\cdot$}\kern.1pt}^^A % }} % \makeatother @@ -390,6 +390,8 @@ %\end{verbatim} % textual references can be suppressed. % +% +% % \section{Multi-lingual usage} % % The package works well together with the babel system if it is @@ -475,6 +477,19 @@ % describes the range of figures, tables, or whatever the labels refer % to, the default for English is ``|\ref{#1} to~\ref{#2}|''. % +% +% \NewIn{2020} +% \DescribeMacro\vrefformat +% \DescribeMacro\Vrefformat +% \DescribeMacro\vrefrangeformat +% \DescribeMacro\fullrefformat +% In some languages (currently only for Japanese) the generated text +% has to typeset in different word order to most other (Western) languages. +% To accomodate for this \cs{vrefformat}, etc.\ has been +% added to allow to alter this on a per language basis. +% There should be normally no need to alter the setup. For details see +% the code section. +% % \subsection{\ldots\ if Babel is used} % % \begin{itshape} If babel is being used then the above commands need to be @@ -556,6 +571,7 @@ % |\fullref| is also provided. This command can be used whenever you % know for sure that label and reference can't fall onto nearby pages. % +% % \StopEventually{\PrintIndex\PrintChanges} % % @@ -708,6 +724,10 @@ \def\reftextfaraway#1{op bladsy~\pageref{#1}}% \def\reftextpagerange#1#2{op bladsye~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} tot~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % @@ -723,6 +743,10 @@ \def\reftextfaraway#1{on page~\pageref{#1}}% \def\reftextpagerange#1#2{on pages~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} to~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Arabic option text was contributed by Ihab Samir Mattar @@ -743,6 +767,10 @@ \def\reftextfaraway#1{بالصفحة رقم~\pageref{#1}}% \def\reftextpagerange#1#2{بالصفحات~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} حتى~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % \end{allowtofu} @@ -759,6 +787,7 @@ \def\reftextfaraway#1{auf Seite~\pageref{#1}}% \def\reftextpagerange#1#2{auf Seiten~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} bis~\ref{#2}}% + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % \changes{v1.2d}{2000/01/11}{Added naustrian defaults (identical to german)} @@ -774,6 +803,10 @@ \def\reftextfaraway#1{auf Seite~\pageref{#1}}% \def\reftextpagerange#1#2{auf Seiten~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} bis~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Text for basque defaults was contributed by @@ -791,6 +824,10 @@ \def\reftextfaraway#1{~\pageref{#1}. orrialdean}% \def\reftextpagerange#1#2{~\pageref{#1}--\pageref{#2} orrialdeetan}% \def\reftextlabelrange#1#2{\ref{#1}.etik \ref{#2}.eraino}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Text for the Bahasa Malaysia defaults was contributed by @@ -815,6 +852,10 @@ \def\reftextfaraway#1{pada muka surat~\pageref{#1}}% \def\reftextpagerange#1#2{pada muka surat~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1}--\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Text for brazil defaults was contributed by @@ -837,6 +878,10 @@ \def\reftextfaraway#1{na p\'agina~\pageref{#1}}% \def\reftextpagerange#1#2{nas p\'aginas~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} a~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Text for Breton defaults was contributed by @@ -858,6 +903,10 @@ on pages~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\vref@stringwarning\reflabelpagerange \ref{#1} to~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Text for Bulgarian defaults was contributed by @@ -892,6 +941,10 @@ \cyrs\cyrt\cyrr\cyra\cyrn\cyri\cyrc\cyri ~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} \cyrd\cyro~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Text for catalan defaults was contributed by Robert Fuster\\ @@ -910,6 +963,10 @@ \def\reftextpagerange#1#2{a les p\`agines~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} a~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Text for croatian defaults was contributed by \v{S}ime Ungar @@ -926,6 +983,10 @@ \def\reftextfaraway#1{na stranici~\pageref{#1}}% \def\reftextpagerange#1#2{na stranicama~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} do~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Defaults for the Czech option provided by Milan Vancura @@ -943,6 +1004,10 @@ \def\reftextfaraway#1{na stran\v{e}~\pageref{#1}}% \def\reftextpagerange#1#2{na stran\'ach~\pageref{#1}\--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} a\v{z}~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Defaults for Danish provided by Torsten Martinsen @@ -965,6 +1030,10 @@ \def\reftextfaraway#1{p\aa{} side~\pageref{#1}}% \def\reftextpagerange#1#2{p\aa{} side~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} til~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Default string for dutch have been contributed by Frank Poppe @@ -1004,6 +1073,10 @@ % \begin{macrocode} \def\reftextpagerange#1#2{op pagina's~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1}--\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % \changes{v1.2a}{1998/08/22}{Added english defaults for @@ -1021,6 +1094,10 @@ \def\reftextfaraway#1{on page~\pageref{#1}}% \def\reftextpagerange#1#2{on pages~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} to~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % @@ -1041,6 +1118,10 @@ \def\reftextfaraway#1{en pa\^go~\pageref{#1}}% \def\reftextpagerange#1#2{en pa\^goj~\pageref{#1} \^gis \pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} \^gis~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % The finnish strings were suggested by Matti Rintala @@ -1064,6 +1145,10 @@ % Can't combine numbers with the necessary suffix well. % \begin{macrocode} \def\reftextlabelrange#1#2{\ref{#1}--\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % French defaults are provided by Daniel Flippo @@ -1083,6 +1168,10 @@ \def\reftextfaraway#1{page~\pageref{#1}}% \def\reftextpagerange#1#2{pages~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} \`a~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Galician defaults are provided by Matthias Moebius\\ @@ -1104,6 +1193,10 @@ \def\reftextpagerange#1#2{% nas p\'axinas~\pageref{#1}-\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} a~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % There are no good variants for German (I think and still think but @@ -1138,6 +1231,10 @@ \def\reftextfaraway#1{auf Seite~\pageref{#1}}% \def\reftextpagerange#1#2{auf den Seiten~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} bis~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % \changes{v1.2d}{2000/01/11}{Added ngerman defaults (identical to german)} @@ -1155,6 +1252,10 @@ \def\reftextfaraway#1{auf Seite~\pageref{#1}}% \def\reftextpagerange#1#2{auf den Seiten~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} bis~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Defaults for greek suggested by Apostolos Syropoulos\\ @@ -1174,6 +1275,10 @@ \def\reftextpagerange#1#2{stis sel'ides\nobreakspace \pageref{#1}---\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} ws\nobreakspace\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Icelandic defaults suggested by Thorhallur Sverrisson @@ -1194,6 +1299,10 @@ \def\reftextfaraway#1{\'{a} s\'{i}{\dh}u~\pageref{#1}}% \def\reftextpagerange#1#2{\'{a} s\'{i}{\dh}um~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} til~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Defaults for Italian suggested by Giovanni Pensa @@ -1218,8 +1327,44 @@ \def\reftextfaraway#1{a pagina~\pageref{#1}}% \def\reftextpagerange#1#2{nelle pagine~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{da~\ref{#1} a~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} +% Defaults for Japanese. It needs a special \cs{vrefformat}, +% \cs{Vrefformat}, \cs{fullrefformat} and \cs{vrefrangeformat} +% for gramatical reasons. As our standard documentation +% workflow uses pdf\TeX{} the Japanese letters can't be displayed +% easily, so you will see missing glyphs below. To see the real +% letters you have to look at the source or package file. +% \changes{v1.6d}{2020/07/20}{Option japanese added (gh/352)} +% \changes{v1.6e}{2020/07/25}{Option japanese changed (gh/352)} +% \begin{allowtofu} +% \begin{macrocode} +\DeclareOption{japanese} + {\vref@addto\extrasjapanese{% + \def\reftextfaceafter {\reftextvario{見開き}{次}ページ}% + \def\reftextfacebefore{\reftextvario{見開き}{前}ページ}% + \def\reftextafter {\reftextvario{直後の}{次}ページ}% + \def\reftextbefore {\reftextvario{直前の}{前}ページ}% + \def\reftextcurrent {\reftextvario{この}{現}ページ}% + \def\reftextfaraway#1{\pageref{#1}ページ}% + \def\reftextpagerange#1#2{\pageref{#1}から\pageref{#2}ページ}% + \def\reftextlabelrange#1#2{\ref{#1}から\ref{#2}}% +% \end{macrocode} +% Note that the parentheses beow are not normal ones but full width +% ones U+FF08 and U+FF09! +% \begin{macrocode} + \def\vrefformat#1#2{\ref{#2}(\vpageref[#1]{#2})}% + \def\Vrefformat#1#2{\Ref{#2}(\vpageref[#1]{#2})}% + \def\fullrefformat#1{\ref{#1}(\reftextfaraway{#1})}% + \def\vrefrangeformat#1#2#3{\reftextlabelrange{#2}{#3}% + (\vpagerefrange[{#1}]{#2}{#3})}% + }} +% \end{macrocode} +% \end{allowtofu} % Defaults for Hungarian by Jeff Goldberg % (\verb=jeffrey@goldmark.org=). % There is a problem with the use of the definite article @@ -1264,6 +1409,10 @@ on pages~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\vref@stringwarning\reflabelpagerange \ref{#1} to~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }% % \end{macrocode} % The |\AtBeginDocument| needs to be executed when the option is @@ -1304,6 +1453,10 @@ \def\reftextfaraway#1{p\aa{} side~\pageref{#1}}% \def\reftextpagerange#1#2{p\aa{} side~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} til~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} \DeclareOption{nynorsk} {\vref@addto\extrasnynorsk{% @@ -1315,6 +1468,10 @@ \def\reftextfaraway#1{p\aa{} side~\pageref{#1}}% \def\reftextpagerange#1#2{p\aa{} side~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} til~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % The polish translations have been provided by @@ -1342,6 +1499,10 @@ \def\reftextfaraway#1{na stronie~\pageref{#1}}% \def\reftextpagerange#1#2{na stronach~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{od~\ref{#1} do~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % The portuguese default text has been provided by @@ -1362,6 +1523,10 @@ \def\reftextfaraway#1{na p\'agina~\pageref{#1}}% \def\reftextpagerange#1#2{nas p\'aginas~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} a~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Updates to the default text for Romanian have been suggested by Florin Oprina @@ -1381,6 +1546,10 @@ \def\reftextfaraway#1{pe pagina~\pageref{#1}}% \def\reftextpagerange#1#2{pe paginile~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} la~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % The text for russian was taken from the book in Russian by @@ -1414,6 +1583,10 @@ \def\reftextpagerange#1#2{\cyrn\cyra\ \cyrs\cyrt\cyrr\cyra\cyrn \cyri\cyrc\cyra\cyrh~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\cyrs~\ref{#1}\ \cyrp\cyro~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % The text for slovak defaults was contributed by Miroslav Sedivy\\ @@ -1434,6 +1607,10 @@ \def\reftextfaraway#1{na strane~\pageref{#1}}% \def\reftextpagerange#1#2{na stran\'ach~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} a\v z~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % The text for slovene defaults was contributed by Roman Maurer\\ @@ -1450,6 +1627,10 @@ \def\reftextfaraway#1{na strani~\pageref{#1}}% \def\reftextpagerange#1#2{na straneh~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{od~\ref{#1} do~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % Text for spanish defaults was contributed by Julio Sanchez @@ -1470,6 +1651,10 @@ \def\reftextpagerange#1#2{en las p\'aginas~\pageref{#1}% -\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} a~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % The text for swedish was contributed by Mats Dahlgren @@ -1492,6 +1677,10 @@ \def\reftextpagerange#1#2{p\aa\ sidorna~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} till~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} \DeclareOption{turkish} {\vref@excuse{turkish}% @@ -1505,6 +1694,7 @@ \def\reftextfaraway#1{on page~\pageref{#1}}% \def\reftextpagerange#1#2{on pages~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\ref{#1} to~\ref{#2}}% + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % The text for Ukrainian defaults was contributed by Mykola Lyakhovych\\ @@ -1532,6 +1722,10 @@ \def\reftextpagerange#1#2{\cyrn\cyra\ \cyrs\cyrt\cyro\cyrr\cyrii \cyrn\cyrk\cyra\cyrh~\pageref{#1}--\pageref{#2}}% \def\reftextlabelrange#1#2{\cyrz~\ref{#1}\ \cyrd\cyro~\ref{#2}}% + \let\vrefformat\vrefdefaultformat + \let\Vrefformat\Vrefdefaultformat + \let\fullrefformat\fullrefdefaultformat + \let\vrefrangeformat\vrefrangedefaultformat }} % \end{macrocode} % We support francais as an alternative to french since people @@ -1585,7 +1779,6 @@ % \pkg{babel} package). % \begin{macrocode} \ExecuteOptions{english,final,space} -\ProcessOptions* % \end{macrocode} % % @@ -2062,11 +2255,26 @@ % |\vpageref|, it that is needed one has to call both commands % explicitly % \changes{v1.6a}{2019/08/25}{Command added to support hyperref better} +% \changes{v1.6e}{2020/07/25}{Changed for Japanese (gh/352)} +% \begin{macrocode} +\newcommand\vref@star[1][]{\vrefformat{#1}} +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\vrefformat,\vrefdefaultformat} +% Japanese needs a different word order in \cs{vref@star} so this +% is separated out o that it can be changed on language level. +% \changes{v1.6e}{2020/07/25}{Macro added (gh/352)} % \begin{macrocode} -\newcommand\vref@star[2][]{% +\def\vrefdefaultformat#1#2{% \ref{#2} \vpageref[#1]{#2}} % \end{macrocode} +% Most languages need the above definition. +% \begin{macrocode} +\let\vrefformat\vrefdefaultformat +% \end{macrocode} % \end{macro} % \begin{macro}{\vr@f} @@ -2172,8 +2380,24 @@ % \begin{macro}{\fullref} % And here is the primitive command that always produces a |\ref| % and a |\pageref|. +% \changes{v1.6e}{2020/07/25}{Changed for Japanese (gh/352)} +% \begin{macrocode} +\newcommand\fullref{\fullrefformat} +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\fullrefformat,\fullrefdefaultformat} +% Japanese needs a different word order in \cs{fullref} so this +% is separated out o that it can be changed on language level. +% \changes{v1.6e}{2020/07/25}{Macro added (gh/352)} % \begin{macrocode} -\def\fullref#1{\ref{#1} \reftextfaraway{#1}} +\def\fullrefdefaultformat#1{% + \ref{#1} \reftextfaraway{#1}} +% \end{macrocode} +% Most languages need the above definition. +% \begin{macrocode} +\let\fullrefformat\fullrefdefaultformat % \end{macrocode} % \end{macro} % @@ -2286,13 +2510,28 @@ % \changes{v1.2a}{1998/08/01}{Macro added} % \changes{v1.4s}{2006/08/07} % {Prevent loss of brackets} +% \changes{v1.6d}{2020/07/20}{Changed for Japanese (gh/352)} +% Argument two and three are implicitly picked up. % \begin{macrocode} -\newcommand\vrefrange[3][\reftextcurrent] - {\reftextlabelrange{#2}{#3} \vpagerefrange[{#1}]{#2}{#3}} +\newcommand\vrefrange[1][\reftextcurrent]{\vrefrangeformat{#1}} % \end{macrocode} +% % \end{macro} % % +% \begin{macro}{\vrefrangeformat,\vrefrangedefaultformat} +% Japanese needs a different word order in \cs{vrefrange} so this +% is separated out o that it can be changed on language level. +% \changes{v1.6d}{2020/07/20}{Macro added (gh/352)} +% \begin{macrocode} +\def\vrefrangedefaultformat#1#2#3{% + \reftextlabelrange{#2}{#3} \vpagerefrange[{#1}]{#2}{#3}} +% \end{macrocode} +% Most languages need the above definition. +% \begin{macrocode} +\let\vrefrangeformat\vrefrangedefaultformat +% \end{macrocode} +% \end{macro} % % \begin{macro}{\Vref} % \changes{v1.4a}{2002/02/24}{Macro added} @@ -2308,11 +2547,26 @@ % % \begin{macro}{\Vref@star} % \changes{v1.6a}{2019/08/25}{Command added to support hyperref better} +% \changes{v1.6e}{2020/07/25}{Changed for Japanese (gh/352)} % \begin{macrocode} -\newcommand\Vref@star[2][]{% +\newcommand\Vref@star[1][]{\Vrefformat{#1}} +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\Vrefformat,\Vrefdefaultformat} +% Japanese needs a different word order in \cs{Vref} so this +% is separated out o that it can be changed on language level. +% \changes{v1.6e}{2020/07/25}{Macro added (gh/352)} +% \begin{macrocode} +\def\Vrefdefaultformat#1#2{% \Ref{#2} \vpageref[#1]{#2}} % \end{macrocode} +% Most languages need the above definition. +% \begin{macrocode} +\let\Vrefformat\Vrefdefaultformat +% \end{macrocode} % \end{macro} % % \begin{macro}{\Vr@f} @@ -2443,6 +2697,12 @@ % \end{macro} % \end{macro} % +% \changes{v1.6e}{2020/07/25}{Move to handle +% the language-specific reference formats. (gh/352)} +% \begin{macrocode} +\ProcessOptions* +% \end{macrocode} +% % \begin{macrocode} %</package> % \end{macrocode} diff --git a/macros/latex/required/tools/varioref.pdf b/macros/latex/required/tools/varioref.pdf Binary files differindex 2386f287ec..0fd8522619 100644 --- a/macros/latex/required/tools/varioref.pdf +++ b/macros/latex/required/tools/varioref.pdf diff --git a/macros/latex/required/tools/verbatim.dtx b/macros/latex/required/tools/verbatim.dtx index 121e2d4b39..e62886e003 100644 --- a/macros/latex/required/tools/verbatim.dtx +++ b/macros/latex/required/tools/verbatim.dtx @@ -69,6 +69,8 @@ %\fi % % +% \changes{v1.5u}{2020-07-07}{Typo repair and added a missing comment +% character} % \changes{v1.5q}{2003/08/22}{Reintroduced \cs{@noligs}, by popular % request.} % \changes{v1.5i}{1996/06/04}{Move setting of verbatim font and @@ -462,9 +464,12 @@ % the spacing. % Then we open the file and set the category codes of all special % characters: +% \changes{v1.5t}{2020-07-05}{Added quotes around the filename in +% order to allow a filename with spaces; also added a space and +% comment-character to allow for thespace dlimited argument.} % \begin{verbatim} % \@bsphack -% \immediate\openout \verbatim@out #1 +% \immediate\openout \verbatim@out "#1" % % \let\do\@makeother\dospecials % \catcode`\^^M\active %\end{verbatim} @@ -503,7 +508,7 @@ %<*package> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{verbatim} - [2019/11/10 v1.5r LaTeX2e package for verbatim enhancements] + [2020-07-07 v1.5u LaTeX2e package for verbatim enhancements] \@ifundefined{verbatim@@@}{}{\endinput} % \end{macrocode} % @@ -1567,19 +1572,31 @@ % existence of file.} % |\verbatim@input| first checks whether the file exists, using % the standard macro |\IfFileExists| which leaves the name of the -% file found in |\@filef@und|. -% Then everything is set up as in the |\verbatim| macro. +% file found in |\@filef@und|. +% Then everything is set up as in the |\verbatim| macro. But, as +% |\@verbatim| contains a call to |\every@verbatim| which +% \emph{might} contain an |\input| statement, which would overwrite +% the contents of |\@filef@und|, we need to save it by expanding it +% first. The use of |\@swaptwoargs| makes it so that the +% \emph{expansion} of |\@filef@und| gets to be the second argument +% of |\verbatim@readfile|. +% \changes{v1.5t}{2020-07-06}{Expand \cs{@filef@und} before the call +% of \cs{@verbatim} (gh/222)}m % \begin{macrocode} \def\verbatim@input#1#2{% - \IfFileExists {#2}{\@verbatim #1\relax + \IfFileExists {#2}{% + \expandafter\@swaptwoargs\expandafter + {\expandafter{\@filef@und}}% + {\@verbatim #1\relax % \end{macrocode} % Then it reads in the file, finishes off the \texttt{trivlist} % environment started by |\@verbatim| and closes the group. % This restores everything to its normal settings. % \begin{macrocode} - \verbatim@readfile{\@filef@und}\endtrivlist\endgroup\@doendpe}% + \verbatim@readfile}% + \endtrivlist\endgroup\@doendpe}% % \end{macrocode} -% If the file is not found a more or less helpful message is +% If the file is not found a more or less helpful message is % printed. The final |\endgroup| is needed to close the group % started in |\verbatiminput| above. % \begin{macrocode} diff --git a/macros/latex/required/tools/verbatim.pdf b/macros/latex/required/tools/verbatim.pdf Binary files differindex 73e90c27ce..953d3e7513 100644 --- a/macros/latex/required/tools/verbatim.pdf +++ b/macros/latex/required/tools/verbatim.pdf diff --git a/macros/latex/required/tools/xr.dtx b/macros/latex/required/tools/xr.dtx index a6b2ffd819..a963886cde 100644 --- a/macros/latex/required/tools/xr.dtx +++ b/macros/latex/required/tools/xr.dtx @@ -25,7 +25,7 @@ % %<package>\NeedsTeXFormat{LaTeX2e} %<package>\ProvidesPackage{xr} -%<package> [2019/07/22 v5.05 eXternal References (DPC)] +%<package> [2020-05-10 v5.06 eXternal References (DPC)] % %<*driver> \documentclass{ltxdoc} @@ -103,12 +103,15 @@ \let\externalcitedocument\externaldocument % \end{macrocode} % -% Save the optional prefix. Start processing the first |aux| file. +% Save the optional prefix. Start processing the first |aux| file. +% \changes{v5.06}{2020-05-10}{Remove leading and trailing sapces from +% the filename (gh/2223)} % \begin{macrocode} \def\XR@[#1]#2{{% \makeatletter \def\XR@prefix{#1}% - \XR@next#2.aux\relax\\}} + \set@curr@file{#2}% + \expandafter\XR@next\@curr@file.aux\relax\\}} % \end{macrocode} % % Process the next |aux| file in the list and remove it from the head of @@ -135,8 +138,10 @@ % If the |aux| file exists, loop through line by line, looking for % |\newlabel| and |\@input|. Otherwise process the next file in the % list. +% \changes{v5.06}{2020-05-10}{Add braces around the filename to +% support filenames with spaces (gh/223)} % \begin{macrocode} -\def\XR@loop#1{\openin\@inputcheck#1\relax +\def\XR@loop#1{\openin\@inputcheck{#1}\relax \ifeof\@inputcheck \PackageWarning{xr}{^^JNo file #1^^JLABELS NOT IMPORTED.^^J}% \expandafter\XR@aux diff --git a/macros/latex/required/tools/xr.pdf b/macros/latex/required/tools/xr.pdf Binary files differindex 0253f595e8..9625d29a0f 100644 --- a/macros/latex/required/tools/xr.pdf +++ b/macros/latex/required/tools/xr.pdf diff --git a/macros/latex/required/tools/xspace.pdf b/macros/latex/required/tools/xspace.pdf Binary files differindex c38797ee4e..a597f80603 100644 --- a/macros/latex/required/tools/xspace.pdf +++ b/macros/latex/required/tools/xspace.pdf |