[latex3-commits] [latex3/latex2e] ltmarks-multicol: add tagging socket for OR, replacing previous interface; also fix typo; this will probably generate a number of test diffs because the patching was taken out (ef933985a)

github at latex-project.org github at latex-project.org
Tue Nov 12 11:45:40 CET 2024


Repository : https://github.com/latex3/latex2e
On branch  : ltmarks-multicol
Link       : https://github.com/latex3/latex2e/commit/ef933985a266608fe0a8674ea69c8723ba0f514f

>---------------------------------------------------------------

commit ef933985a266608fe0a8674ea69c8723ba0f514f
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date:   Tue Nov 12 11:45:40 2024 +0100

    add tagging socket for OR, replacing previous interface;
    also fix typo;
    this will probably generate a number of test diffs because the patching was taken out


>---------------------------------------------------------------

ef933985a266608fe0a8674ea69c8723ba0f514f
 base/changes.txt                          |  5 +++
 base/ltmarks.dtx                          |  2 +-
 base/lttagging.dtx                        | 19 +++++++++-
 required/latex-lab/latex-lab-new-or-1.dtx | 28 +++++++-------
 required/tools/changes.txt                |  4 ++
 required/tools/multicol.dtx               | 61 +++++++++++++++++++++++++++----
 6 files changed, 96 insertions(+), 23 deletions(-)

diff --git a/base/changes.txt b/base/changes.txt
index 63d42e0a4..407fd373e 100644
--- a/base/changes.txt
+++ b/base/changes.txt
@@ -6,6 +6,11 @@ to completeness or accuracy and it contains some references to files that are
 not part of the distribution.
 ================================================================================
 
+2024-11-12  Frank Mittelbach  <Frank.Mittelbach at latex-project.org>
+
+	* lttagging.dtx (subsection{Tagging support for output routines}):
+	Added socket for multicol.
+
 2024-11-10  Frank Mittelbach  <Frank.Mittelbach at latex-project.org>
 
 	* ltmarks.dtx (subsection{Placing and retrieving marks}):
diff --git a/base/ltmarks.dtx b/base/ltmarks.dtx
index 9a3ac17a4..f77df396b 100644
--- a/base/ltmarks.dtx
+++ b/base/ltmarks.dtx
@@ -337,7 +337,7 @@
 %   routine, without the need to explicitly save that information
 %   beforehand. The \texttt{page} region is the region that is most
 %   often queried, which is why commands like \cs{FirstMark} use that
-%   region is the default.
+%   region by default.
 %
 %   In single column documents the \texttt{column} is the same as the
 %   \texttt{page} region, but in two-column documents (if not produced
diff --git a/base/lttagging.dtx b/base/lttagging.dtx
index 6b68cd0e0..c28e94e4e 100644
--- a/base/lttagging.dtx
+++ b/base/lttagging.dtx
@@ -33,7 +33,7 @@
 %<*driver>
 % \fi
 \ProvidesFile{lttagging.dtx}
-             [2024/10/21 v1.0k LaTeX Kernel (tagging support)]
+             [2024/11/12 v1.0l LaTeX Kernel (tagging support)]
 % \iffalse
 \documentclass{l3doc}
 \GetFileInfo{lttagging.dtx}
@@ -195,7 +195,8 @@
 %
 %    Dummy definitions in the kernel.
 %    These definitions will get updated in \pkg{tagpdf}.
-%    The default in the kernel is just to get rid of the first argument, the second is preserved if present:
+%    The default in the kernel is just to get rid of the first argument,
+%    the second is preserved if present:
 % \changes{v1.0k}{2024/10/21}{Changed behavior of two argument tagging sockets when disabled.}
 % \changes{v1.0k}{2024/10/21}{Added expandable variants}
 %    \begin{macrocode}
@@ -536,6 +537,20 @@
 %    \end{macrocode}
 % \end{socketdecl}
 %
+%
+% \subsection{Tagging support for output routines}
+%
+% \begin{socketdecl}{tagsupport/page at sofar}
+%
+%  This socket is used in the \pkg{multicol} output routines.
+%  Needs synchronizing with \pkg{tagpdf} (and perhaps get a different name?)
+%    \begin{macrocode}
+\NewSocket{tagsupport/page at sofar}{0}
+%    \end{macrocode}
+% \end{socketdecl}
+%
+%
+%
 % \section{For lttab.dtx parked here for now}
 %
 %
diff --git a/required/latex-lab/latex-lab-new-or-1.dtx b/required/latex-lab/latex-lab-new-or-1.dtx
index 9994b15cb..4d4994262 100644
--- a/required/latex-lab/latex-lab-new-or-1.dtx
+++ b/required/latex-lab/latex-lab-new-or-1.dtx
@@ -9,8 +9,8 @@
 %
 %    https://www.latex-project.org/lppl.txt
 %
-\def\ltlabneworIdate{2023-07-20}
-\def\ltlabneworIversion{0.85a}
+\def\ltlabneworIdate{2024-11-12}
+\def\ltlabneworIversion{0.85b}
 %<*driver>
 \documentclass{l3doc}
 
@@ -70,7 +70,7 @@
 \providecommand\@kernel at before@foot{}
 \providecommand\@kernel at after@head{}
 \providecommand\@kernel at after@foot{}
-\providecommand\@mult at ptagging@hook{}% multicol
+\providecommand\@mult at ptagging@hook{}%  should be replaced with a socket, eventually
 %    \end{macrocode}
 %
 %    \begin{macrocode}
@@ -143,20 +143,22 @@
 %    \item
 %    \end{itemize}
 %
+% This is now directly provided in \pkg{multicol} so the patch below is no longer necessary.  
+%
 %    \begin{macrocode}
-\AddToHook{package/multicol/after}
-    {% multicol needs later loading
+%\AddToHook{package/multicol/after}
+%    {% multicol needs later loading
 %    \end{macrocode}
 %
 %    \begin{macrocode}
-  \patchcmd\page at sofar
-      {\global\dimen\tw@\dp\z@}%
-      {%
-        \global\dimen\tw@\dp\z@
-        \@mult at ptagging@hook
-      }%
-      {\typeout{Patching \string\page at sofar\space for tagging}}{\PATCHerror}%
-}
+%  \patchcmd\page at sofar
+%      {\global\dimen\tw@\dp\z@}%
+%      {%
+%        \global\dimen\tw@\dp\z@
+%        \@mult at ptagging@hook
+%      }%
+%      {\typeout{Patching \string\page at sofar\space for tagging}}{\PATCHerror}%
+%}
 %    \end{macrocode}
 %
 % \subsection{Interrupt hooks}
diff --git a/required/tools/changes.txt b/required/tools/changes.txt
index 7765b0950..d5a605a66 100644
--- a/required/tools/changes.txt
+++ b/required/tools/changes.txt
@@ -5,6 +5,10 @@ completeness or accuracy and it contains some references to files that
 are not part of the distribution.
 =======================================================================
 
+2024-11-12  Frank Mittelbach  <Frank.Mittelbach at latex-project.org>
+	* multicol.dtx (subsection{Tagging support}):
+	Added another socket to support tagging.
+
 2024-11-10  Frank Mittelbach  <Frank.Mittelbach at latex-project.org>
 	* multicol.dtx (subsection{Supporting the new mark mechanism}):
 	Drop the legacy support for marks and use the new mark
diff --git a/required/tools/multicol.dtx b/required/tools/multicol.dtx
index ad218c350..92751fc1a 100644
--- a/required/tools/multicol.dtx
+++ b/required/tools/multicol.dtx
@@ -2136,6 +2136,14 @@
 % \changes{v1.9f}{2023/03/30}{Make column min depth customizable (gh/698)}
 %    \begin{macrocode}
    \setbox\z@\hbox{\multicolmindepthstring}\global\dimen\tw@\dp\z@
+%    \end{macrocode}
+%    
+%    \changes{v2.0a}{2024/11/12}{Addedd tagging socket}
+%    \begin{macrocode}
+   \UseTaggingSocket{page at sofar}%
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
    \moveright\multicol at leftmargin
     \hbox to\full at width{%
 %    \end{macrocode}
@@ -3551,13 +3559,6 @@
 %    name since it is more for experts.
 %  For now we test if the socket is already defined
 %    \begin{macrocode}
-\ExplSyntaxOn
-\str_if_exist:cF { l__socket_tagsupport/float/end_plug_str }
-  {
-    \NewSocket{tagsupport/float/end}{0}
-    \NewSocket{tagsupport/float/hmode/end}{0}
-  }
-\ExplSyntaxOff  
 \def\set at floatcmds{%
  \let\@dblfloat\@dbflt
  \def\end at dblfloat{\@endfloatbox
@@ -4615,6 +4616,52 @@
 %<@@=>
 %    \end{macrocode}
 %
+%
+%
+%
+%
+%
+%
+% \subsection{Tagging support}
+%
+%    Here we collect adjustments necessary for tagging support, e.g.,
+%    before  the 2024-11-01 release it was necessary to allocate two
+%    float sockets. By now they are part of the kernel.
+%    \begin{macrocode}
+%\str_if_exist:cF { l__socket_tagsupport/float/end_plug_str }
+%  {
+%    \NewSocket{tagsupport/float/end}{0}
+%    \NewSocket{tagsupport/float/hmode/end}{0}
+%  }
+%    \end{macrocode}
+%
+%     This one has also been moved to the development %kernel
+%    \begin{macrocode}
+%\str_if_exist:cF { l__socket_tagsupport/page at sofar }
+%  {
+%    \NewSocket{tagsupport/page at sofar}{0}
+%  }
+%    \end{macrocode}
+%
+%    The plug definition for now just implements the old interface
+%    currently used by tagpdf. This needs to change and \cs{@mult at ptagging@hook}
+%    replaced by directly using the socket/plug.  
+%    \changes{v2.0a}{2024/11/12}{Addedd tagging socket}
+%    \begin{macrocode}
+\NewSocketPlug {tagsupport/page at sofar}{default}
+  {
+    \@mult at ptagging@hook
+  }
+\providecommand\@mult at ptagging@hook{}
+%    \end{macrocode}
+%    
+%    \begin{macrocode}
+\AssignSocketPlug{tagsupport/page at sofar}{default}  
+%    \end{macrocode}
+%
+%
+%
+%
 %    \begin{macrocode}
 \ExplSyntaxOff
 %    \end{macrocode}





More information about the latex3-commits mailing list.