summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex-dev
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-11-16 21:26:52 +0000
committerKarl Berry <karl@freefriends.org>2021-11-16 21:26:52 +0000
commitc88c1ecb068070a6e69006788a141eea3fba4b0e (patch)
treecb42252875f8c09354da3cd06e274238a8b85c45 /Master/texmf-dist/source/latex-dev
parent0cc16768f4401ff12fa4ec4c983125ab6ba9e70a (diff)
latex-dev (16nov21)
git-svn-id: svn://tug.org/texlive/trunk@61076 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex-dev')
-rw-r--r--Master/texmf-dist/source/latex-dev/base/ltpara.dtx46
-rw-r--r--Master/texmf-dist/source/latex-dev/base/ltvers.dtx4
-rw-r--r--Master/texmf-dist/source/latex-dev/firstaid/latex2e-first-aid-for-external-files.dtx92
-rw-r--r--Master/texmf-dist/source/latex-dev/tools/multicol.dtx46
4 files changed, 47 insertions, 141 deletions
diff --git a/Master/texmf-dist/source/latex-dev/base/ltpara.dtx b/Master/texmf-dist/source/latex-dev/base/ltpara.dtx
index 9802bfd63a2..a2da67198a6 100644
--- a/Master/texmf-dist/source/latex-dev/base/ltpara.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/ltpara.dtx
@@ -15,7 +15,7 @@
%
% \begin{macrocode}
\def\ltparaversion{v1.0k}
-\def\ltparadate{2021/10/19}
+\def\ltparadate{2021/11/11}
% \end{macrocode}
%<*driver>
\documentclass{l3doc}
@@ -23,6 +23,7 @@
%\usepackage{ltpara}
% Fixing footnotes in functions and variables: this should be in l3doc!
+
\newcommand\fixfootnote[2]{\footnotemark
\AddToHookNext{env/#1/after}{\footnotetext{#2}}}
\AddToHook{env/function/begin}{\def\footnote{\fixfootnote{function}}}
@@ -429,16 +430,6 @@
% \cs{endgraf} was changed to provide this additional functionality
% (along with \cs{par} remaining subject to its current meaning).
%
-% TEMP NOTE: Maybe endgraf should not be changed by LaTeX as it is
-% essentially not at all a part of LaTeX.
-% If it is too dangerous to leave it as
-% a synonym for the primitive, then we could just disable it.
-% [FMi:]
-% not in my opinion. It is used in many places and the redefinition is safe and does the right thing.
-% disabling it just means it breaks a lot of stuff for no reason.
-% [FMi:]
-% Note that the 2e kernel has been completely purged of endgrafs.
-%
% The \pkg{expl3} name for this functionality is \cs{para_end:}.
% \end{function}
%
@@ -613,8 +604,8 @@
%
% \subsubsection{Mark the first paragraph of each \env{itemize}}
%
-% The code for this is rather simple. We apply hook code that is
-% executed only once inside a hook that is executed at the begin of
+% The code for this is rather simple. We supply some code that is
+% executed only once inside a hook at the start of
% each \env{itemize}. We explicitly change the color back and
% forth so that we don't introduce grouping around the paragraph.
%\begin{verbatim}
@@ -953,7 +944,6 @@
% default meaning (in the past this was the initex primitive) while
% \cs{par} is the current meaning which maybe does something else.
%
-% TEMP NOTE: See earlier note re endgraf.
%
% We are now going to change this default meaning to instead run
% \cs{para_end:}, which ultimately executes the initex
@@ -970,6 +960,7 @@
\cs_new_protected:Npn \para_end: {
% \end{macrocode}
%
+% CCC Maybe needs more explanation.
% TEMP NOTE: What should happen if in outer hmode with an empty hlist?
%
% The only case we care about is when we are in horizontal mode
@@ -1028,18 +1019,21 @@
% it should get removed before the hook code gets added so we have
% to arrange for this removal.
%
-% TEMP NOTE: maybe a ‘nobreak’ should also be added?
-%
-% [FMi:]
-% sounds wrong to me, why?
-% [CCC:] See email: because the hook may add some material,
-% such as glue that might produce an unintended linebreak.
-% [FMi:]
+% As in other simular cases, it maybe best to add here
+% a \cs{nobreak} in case the hook itself adds glue and thus
+% creates a non-explicit and unwanted potential breakpoont.
+% On the other hand (as has been argued) the code in the hook
+% should perhaps have the responsibility for adding such a
+% guard penalty in this casse.
+% This needs further analysis and decisions (as in emails).
%
+% In either case, good documentation of these hooks is essential,
+% covering what the hook may or should provide and all
+% such related considerations convernimg the content.
%
% There is not much point in checking if there was really a glue
% item at the end of the horizontal list, instead we simply try to
-% remove one using \cs{tex_unskip:D}, if there wasn't one this will
+% remove one using \cs{tex_unskip:D}: if there wasn't one this will
% do nothing.
% \begin{macrocode}
\tex_unskip:D
@@ -1065,7 +1059,8 @@
% primitive.
%
% There is however one other \TeX{} optimization that hurts: in a
-% sequence like this \verb=$$ ... $$ \par= \TeX{} will be in
+% sequence like this \verb=$$ ... $$ \par= (with \cs{par} being the primitive)
+% \TeX{} will be in
% horizontal mode after the display, ready to receive further
% paragraph text, but since the \cs{par} follows immediately there
% is a ``null'' paragraph at the end and \TeX{} simply throws that
@@ -1075,9 +1070,6 @@
% removing any space and appending \cs{parfillskip}, instead it
% simply goes silently to vmode.
%
-% TEMP NOTE: Is this actually how it works?
-% For any current definition of par?
-%
% Now if we would have added something (to
% prevent glue removal) that would look to \TeX{} like material
% after the display and so we would end up with an empty paragraph
@@ -1196,8 +1188,6 @@
% occasionally) and \cs{endgraf}, which is another name for the
% ``default'' action of \cs{par}.
%
-% TEMP NOTE: re endgraf again.
-%
% \begin{macrocode}
\cs_set_eq:NN \par \para_end:
\cs_set_eq:NN \@@par \para_end:
diff --git a/Master/texmf-dist/source/latex-dev/base/ltvers.dtx b/Master/texmf-dist/source/latex-dev/base/ltvers.dtx
index 7c17069aea0..c1024b938c1 100644
--- a/Master/texmf-dist/source/latex-dev/base/ltvers.dtx
+++ b/Master/texmf-dist/source/latex-dev/base/ltvers.dtx
@@ -112,10 +112,10 @@
%</2ekernel>
%<latexrelease>\edef\latexreleaseversion
%<*2ekernel|latexrelease>
- {2021-11-15}
+ {2022-06-01}
%</2ekernel|latexrelease>
%<*2ekernel>
-\def\patch@level{-3}
+\def\patch@level{0}
% \end{macrocode}
%
% \begin{macro}{\development@branch@name}
diff --git a/Master/texmf-dist/source/latex-dev/firstaid/latex2e-first-aid-for-external-files.dtx b/Master/texmf-dist/source/latex-dev/firstaid/latex2e-first-aid-for-external-files.dtx
index 702dca02298..fb8d3401373 100644
--- a/Master/texmf-dist/source/latex-dev/firstaid/latex2e-first-aid-for-external-files.dtx
+++ b/Master/texmf-dist/source/latex-dev/firstaid/latex2e-first-aid-for-external-files.dtx
@@ -111,8 +111,8 @@
% \end{macrocode}
%
% \begin{macrocode}
-\def\LaTeXFirstAidDate{2021/06/28}
-\def\LaTeXFirstAidVersion{v1.0o}
+\def\LaTeXFirstAidDate{2021/11/11}
+\def\LaTeXFirstAidVersion{v1.0q}
% \end{macrocode}
%
% \begin{macrocode}
@@ -455,69 +455,10 @@
%
%
%
-%
-%
-% \subsection{The \pkg{CJK} package first aid}
-%
% \begin{macrocode}
%<*kernel>
% \end{macrocode}
%
-% The package redefines \cs{selectfont} to add some code but
-% otherwise uses the old definition. So we make a copy of the
-% newer kernel definition and restore it after the package got
-% loaded. The extra code that the package needs can go into the
-% newly provided hook instead.
-%
-% \begin{macrocode}
-\DeclareCommandCopy\CJK@selectfont\selectfont
-% \end{macrocode}
-%
-% \begin{macrocode}
-\AddToHook{file/CJK.sty/after}[firstaid]{%
- \FirstAidNeededT{CJK}{sty}%
- {2015/04/18 4.8.4}%
- {%
- \DeclareCommandCopy\selectfont\CJK@selectfont
-% \end{macrocode}
-%
-% \begin{macrocode}
- \AddToHook{selectfont}[CJK]{%
- \expandafter\ifx\csname CJK@\curr@fontshape\endcsname \relax
- \else
- \CJK@bold@false
- \csname CJK@\curr@fontshape\endcsname
- \fi
- }%
- }%
-}
-% \end{macrocode}
-%
-%
-%
-% \subsection{\cs{footref} first aid}
-%
-% A few classes unconditionally define \cs{footref}. Until that has
-% changed we provide some first aid to let them do this.
-%
-% --- This seems to be resolved now ---
-%
-% \begin{macrocode}
-%\AddToHook{file/scrkbase.sty/after}[firstaid]{%
-% \FirstAidNeededT{scrkbase}{sty}%
-% {2020/09/21 v3.32 KOMA-Script package (KOMA-Script-dependent basics and keyval usage)}%
-% {\let\footref\@undefined}
-% }
-% \end{macrocode}
-%
-% \begin{macrocode}
-%\AddToHook{class/memoir/before}[firstaid]{%
-% % for version {2020/10/04 v3.7n configurable book, report, article document class}%
-% \let\footref\@undefined
-%}
-% \end{macrocode}
-%
-%
%
%
%
@@ -679,35 +620,6 @@
\ExplSyntaxOff
% \end{macrocode}
%
-% The next fixes Github issue 605 (by inserting a \cs{scan\_stop:}
-% before doing the check for hmode).
-% \begin{macrocode}
-\ExplSyntaxOn
-\cs_set_protected:Npn \para_end: {
- \scan_stop:
- \mode_if_horizontal:TF {
- \mode_if_inner:F {
- \tex_unskip:D
- \hook_use:n{para/end}
- \@kernel@after@para@end
- \mode_if_horizontal:TF {
- \if_int_compare:w 0 < \tex_lastnodetype:D
- \tex_kern:D \c_zero_dim
- \fi:
- \tex_par:D
- \hook_use:n{para/after}
- \@kernel@after@para@after
- }
- { \msg_error:nnnn { hooks }{ para-mode }{end}{horizontal} }
- }
- }
- \tex_par:D
-}
-\cs_set_eq:NN \par \para_end:
-\cs_set_eq:NN \@@par \para_end:
-\cs_set_eq:NN \endgraf \para_end:
-\ExplSyntaxOff
-% \end{macrocode}
%
% \begin{macrocode}
%</kernel>
diff --git a/Master/texmf-dist/source/latex-dev/tools/multicol.dtx b/Master/texmf-dist/source/latex-dev/tools/multicol.dtx
index 2b74d85af92..8d868357da2 100644
--- a/Master/texmf-dist/source/latex-dev/tools/multicol.dtx
+++ b/Master/texmf-dist/source/latex-dev/tools/multicol.dtx
@@ -98,7 +98,7 @@
%<driver> \ProvidesFile{multicol.drv}
% \fi
% \ProvidesFile{multicol.dtx}
- [2021/10/08 v1.9a multicolumn formatting (FMi)]
+ [2021/10/28 v1.9b multicolumn formatting (FMi)]
%
%
%%
@@ -115,6 +115,8 @@
% \changes{v1.0f}{1989/07/11}{Changed \cs{z@} to 0pt in redefinition of
% description.}
% \changes{v1.1a}{1989/09/20}{\cs{multicolssep} changed to \cs{multicolsep}.}
+% \changes{v1.9b}{2021/10/22}{Swap names \cs{mult@gfirstbox}
+% and \cs{mult@firstbox} (gh/701)}
%
% \def\description{\list{}{\labelwidth 0pt \leftmargin\descriptionmargin
% \itemindent-\leftmargin \let\makelabel\descriptionlabel}}
@@ -567,8 +569,9 @@
% From version 1.9 onwards \cs{columnbreak} accepts an optional
% argument (just like \cs{pagebreak}) in which you can specify the
% desirability to break the column at that point: supported values are
-% \texttt{1} to \texttt{4}. This version also adds \cs{newcolumn}
-% which forces a column break but runs the column short (comparible to
+% \texttt{0} (slightly desirable) to \texttt{4} (forced).
+% This version also adds \cs{newcolumn}
+% which forces a column break but runs the column short (comparable to
% \cs{newpage}).
%
% \subsection{Floats inside a \mc{} environment}
@@ -734,7 +737,7 @@
% When it finishes it must return the individual columns in boxes
% suitable for further processing with |\page@sofar|. This means
% that the left column should be stored in box register
-% |\mult@gfirstbox|, the next
+% |\mult@firstbox|, the next
% in register |\mult@firstbox|${}+2$, \ldots,
% only the last one as an exception in
% register |\mult@grightbox|. Furthermore it has to set up
@@ -2322,7 +2325,7 @@
% 4,\ldots\ (plus offset).
% \changes{v1.5a}{1992/11/04}{New box mechanism}
% \begin{macrocode}
- \process@cols\mult@gfirstbox{%
+ \process@cols\mult@firstbox{%
\setbox\count@
\vsplit\@cclv to\dimen@
% \end{macrocode}
@@ -3080,7 +3083,7 @@
% untouched so that we can start over again if this trial was
% unsuccessful.
% \begin{macrocode}
- {\process@cols\mult@firstbox{%
+ {\process@cols\mult@gfirstbox{%
\global\setbox\count@
\vsplit\mult@grightbox to\dimen@
% \end{macrocode}
@@ -3134,19 +3137,19 @@
\global\setbox\mult@grightbox
\vbox{\unvbox\mult@grightbox}%
% \end{macrocode}
-% We also save a copy |\mult@firstbox| at its ``natural'' size
+% We also save a copy |\mult@gfirstbox| at its ``natural'' size
% for later use.
% \begin{macrocode}
\setbox\mult@nat@firstbox
- \vbox{\unvcopy\mult@firstbox}%
+ \vbox{\unvcopy\mult@gfirstbox}%
% \end{macrocode}
% After |\process@cols| has done its job we have the following
% situation:
% \begin{center}
% \begin{tabular}{r@{$\:\:\longleftarrow\:\:$}l}
% box |\mult@rightbox| & all material \\
-% box |\mult@gfirstbox| & first column \\
-% box |\mult@gfirstbox|${}+2$ & second column \\
+% box |\mult@firstbox| & first column \\
+% box |\mult@firstbox|${}+2$ & second column \\
% \multicolumn{1}{c}{$\vdots$} &
% \multicolumn{1}{c}{$\vdots$} \\
% box |\mult@grightbox| & last column
@@ -3167,10 +3170,10 @@
% to later columns but it is actually producing incorrect results
% (overprinting of text) in boundary cases, so since version v1.5q
% |\raggedcolumns| means allows for all columns to run slightly short.
-% \changes{v1.5q}{1998/01/19}{Do not reset \cs{mult@firstbox} (pr2739)}
+% \changes{v1.5q}{1998/01/19}{Do not reset \cs{mult@gfirstbox} (pr2739)}
% \begin{macrocode}
% \ifshr@nking
-% \global\setbox\mult@firstbox
+% \global\setbox\mult@gfirstbox
% \copy\mult@nat@firstbox
% \fi
% \end{macrocode}
@@ -3488,10 +3491,11 @@
% allocating after 255. This is all done quite low-level by looking
% directly at the values of the allocation counters.
% \changes{v1.8y}{2019/12/09}{Allow for 20 columns (gh/237)}
+% \changes{v1.9b}{2021/10/22}{Drop one unnecessary box allocation (gh/701)}
% \begin{macrocode}
\ifnum\numexpr
- \count20-\count14-1<41
- % this is = 2 * 20 + 1
+ \count20-\count14-1<40
+ % this is = 2 * 20
\count14=\@cclv
\fi
% \end{macrocode}
@@ -3499,8 +3503,8 @@
% \begin{macrocode}
\newbox\mult@rightbox
\newbox\mult@grightbox
-\newbox\mult@gfirstbox
\newbox\mult@firstbox
+\newbox\mult@gfirstbox
\newbox\@tempa\newbox\@tempa
\newbox\@tempa\newbox\@tempa
\newbox\@tempa\newbox\@tempa
@@ -3519,7 +3523,6 @@
\newbox\@tempa\newbox\@tempa
\newbox\@tempa\newbox\@tempa
\newbox\@tempa\newbox\@tempa
-\newbox\@tempa
\let\@tempa\relax
% \end{macrocode}
% \end{macro}
@@ -4097,6 +4100,7 @@
% \begin{macro}{\columnbreak}
% \changes{v1.5u}{1999/05/25}{Macro added}
% \changes{v1.9a}{2021/10/08}{Added optional argument for conditional break}
+% \changes{v1.9b}{2021/10/28}{Corrected error message text (gh/703)}
% |\columnbreak| is modeled after |\pagebreak| except that we
% generate a penalty -10005.
% \begin{macrocode}
@@ -4109,7 +4113,7 @@
% \begin{macrocode}
\ifnum\col@number<\tw@
\PackageError{multicol}%
- {\noexpand\newcolumn outside multicols}%
+ {\noexpand\columnbreak outside multicols}%
{This command can only be used within
a multicols or multicols* environment.}%
\else
@@ -4184,7 +4188,7 @@
% \end{macrocode}
% We loop through the columns with |\process@cols|
% \begin{macrocode}
- \process@cols\mult@gfirstbox{%
+ \process@cols\mult@firstbox{%
% \end{macrocode}
% If the depth of the current box is larger than the maximum found
% so far in |\dimen2| we update that register for later use.
@@ -4207,7 +4211,7 @@
\@width\columnseprule}\hss}%
% \end{macrocode}
% As you will have noticed, we started with box register
-% |\mult@gfirstbox| (i.e.\
+% |\mult@firstbox| (i.e.\
% the left column). So this time |\count@| looped through 2,
% 4,\ldots\ (plus the appropriate offset).
% Finally we add box |\mult@rightbox| and we are done.
@@ -4249,7 +4253,7 @@
% First step is to put all rules in the right place (without adding
% the comes which are instead represented by a space of |\hsize|.
% \begin{macrocode}
- \process@cols\mult@gfirstbox{%
+ \process@cols\mult@firstbox{%
\hskip\hsize
\hss{\columnseprulecolor\vrule
\@width\columnseprule}\hss
@@ -4267,7 +4271,7 @@
% column using the same approach until we are done with all but the
% final column.
% \begin{macrocode}
- \process@cols\mult@gfirstbox{%
+ \process@cols\mult@firstbox{%
\ifdim\dp\count@>\dimen\tw@
\global\dimen\tw@\dp\count@ \fi
\hskip-\hsize