[latex3-commits] [git/LaTeX3-latex3-latex2e] lthooks2: Updated changes.txt changed version numbers fixed missing spaces in typesetting source2e (bug in l3doc) (1a6acaf4)
Frank Mittelbach
frank.mittelbach at latex-project.org
Fri Aug 21 14:26:41 CEST 2020
Repository : https://github.com/latex3/latex2e
On branch : lthooks2
Link : https://github.com/latex3/latex2e/commit/1a6acaf43b688d0d1f95a636e8a7e412eec51590
>---------------------------------------------------------------
commit 1a6acaf43b688d0d1f95a636e8a7e412eec51590
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date: Fri Aug 21 14:26:41 2020 +0200
Updated changes.txt
changed version numbers
fixed missing spaces in typesetting source2e (bug in l3doc)
>---------------------------------------------------------------
1a6acaf43b688d0d1f95a636e8a7e412eec51590
base/changes.txt | 53 +++++++++++++++++++++++++++++++++++++++++++++
base/doc/source2e.tex | 12 ++++++++---
base/format.ins | 1 -
base/latex209.dtx | 2 +-
base/ltclass.dtx | 3 ++-
base/ltdefns.dtx | 3 ++-
base/ltdirchk.dtx | 2 +-
base/ltexpl.dtx | 3 ++-
base/ltfilehook.dtx | 4 ++--
base/ltfiles.dtx | 3 ++-
base/ltfinal.dtx | 3 ++-
base/ltfssaxes.dtx | 3 ++-
base/ltfssini.dtx | 17 +++++++++++----
base/lthooks.dtx | 19 +++++++++++++---
base/ltmiscen.dtx | 3 ++-
base/ltoutput.dtx | 7 +++++-
base/ltshipout.dtx | 4 ++--
base/ltxdoc.dtx | 3 ++-
base/source2edoc.cls | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++
19 files changed, 179 insertions(+), 26 deletions(-)
diff --git a/base/changes.txt b/base/changes.txt
index 69027d9e..cc2b4f4b 100644
--- a/base/changes.txt
+++ b/base/changes.txt
@@ -6,6 +6,59 @@ completeness or accuracy and it contains some references to files that
are not part of the distribution.
================================================================================
+2020-08-21 Frank Mittelbach <Frank.Mittelbach at latex-project.org>
+
+ * lthooks.dtx:
+ New code for hook management.
+ Distribute code to other modules as needed.
+
+ * ltfilehook.dtx:
+ New code for file loading.
+ Added hooks to file loading commands.
+ Support file substitution.
+ Distribute code to other modules as needed.
+
+ * ltshipout.dtx:
+ New code for shipout handling and hook management.
+ Added hooks to \shipout.
+ Distribute code to other modules as needed.
+
+ * ltfssaxes.dtx:
+ * ltdefns.dtx:
+ * ltclass.dtx:
+ * ltoutput.dtx:
+ Integration of new hook management code.
+
+ * ltexpl.dtx:
+ Integration of new hook management code.
+ Dropped unused command.
+
+ * ltfiles.dtx:
+ Added hooks in file commands.
+ Integration of new hook management code.
+
+ * ltmiscen.dtx:
+ Added hooks to environments.
+ Integration of new hook management code.
+
+ * ltfssini.dtx:
+ Added hooks in NFSS commands.
+ Integration of new hook management code.
+
+ * ltfinal.dtx:
+ Integration of new hook management code.
+ Move rollback code to right places.
+
+ * ltxdoc.dtx:
+ Use new file loading.
+
+ * source2edoc.cls:
+ Temp class to typeset source2e. Needs fixing or will vanish again.
+
+ * source2e.tex:
+ Add the new modules to the documentation.
+
+
2020-08-20 David Carlisle <David.Carlisle at latex-project.org>
* ltplain.dtx: define legacy command \alloc@ in terms of
diff --git a/base/doc/source2e.tex b/base/doc/source2e.tex
index 65e0cf0d..e74c424d 100644
--- a/base/doc/source2e.tex
+++ b/base/doc/source2e.tex
@@ -242,10 +242,14 @@ page_precedence "rnaA"
\DocInclude{ltvers} % Current version date
- \DocInclude{ltluatex} % Luatex support
+ \DocInclude{ltluatex} % luatex support
+
+ \DocInclude{ltexpl} % L3 programming layer integration
\DocInclude{ltdefns} % Initial definitions.
+ \DocInclude{lthooks} % Hook management (L3 module)
+
\DocInclude{ltalloc} % Allocation of counters and others.
\DocInclude{ltcntrl} % Program control macros.
@@ -314,12 +318,14 @@ page_precedence "rnaA"
\DocInclude{ltpage} % \pagestyle \raggedbottom \sloppy
+ \DocInclude{ltclass} % Package & Class interface
+
+ \DocInclude{ltfilehook} % Hook management for files (L3 module)
+
\DocInclude{ltshipout}% \shipout redefinition (L3 module)
\DocInclude{ltoutput} % Output routine
- \DocInclude{ltclass} % Package & Class interface
-
\DocInclude{lthyphen} % Hyphenation (hyphen.ltx).
\DocInclude{ltfinal} % Last minute initialisations and dump
diff --git a/base/format.ins b/base/format.ins
index 8550680d..bad21deb 100644
--- a/base/format.ins
+++ b/base/format.ins
@@ -203,7 +203,6 @@ the system are in the document `cfgguide.tex'.
\from{ltfilehook.dtx}{2ekernel} % L3 layer module
\from{ltshipout.dtx}{2ekernel} % L3 layer module
\from{ltoutput.dtx}{2ekernel}
-% \from{ltclass.dtx}{2ekernel,tracerollback}
\from{ltfinal.dtx}{2ekernel}}
\file{tracefnt.sty}{%
\from{ltfsstrc.dtx}{package,trace}}
diff --git a/base/latex209.dtx b/base/latex209.dtx
index a7f54c9b..d08a8001 100644
--- a/base/latex209.dtx
+++ b/base/latex209.dtx
@@ -200,7 +200,7 @@
% \end{macrocode}
% Describe the file.
% \begin{macrocode}
-\ProvidesFile{latex209.def}[2018/08/11 v0.54 Standard LaTeX file]
+\ProvidesFile{latex209.def}[2020/08/21 v0.55 Standard LaTeX file]
% \end{macrocode}
% \changes{v0.24}{1994/05/14}{Removed date.}
% \changes{v0.40}{1995/03/21}
diff --git a/base/ltclass.dtx b/base/ltclass.dtx
index b3144579..c878a190 100644
--- a/base/ltclass.dtx
+++ b/base/ltclass.dtx
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltclass.dtx}
- [2020/08/15 v1.3o LaTeX Kernel (Class & Package Interface)]
+ [2020/08/21 v1.3o LaTeX Kernel (Class & Package Interface)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltclass.dtx}
@@ -64,6 +64,7 @@
% \changes{v1.0l}{1994/11/17}{\cs{@tempa} to \cs{reserved at a}}
% \changes{v1.0z}{1998/03/21}{Added to documentation of filecontents}
% \changes{v1.1c}{1998/08/17}{(RmS) Minor documentation fixes.}
+% \changes{v1.3o}{2020/08/21}{Integration of new hook management interface}
%
%
% \section{Introduction}
diff --git a/base/ltdefns.dtx b/base/ltdefns.dtx
index 6c02bc11..27b5d897 100644
--- a/base/ltdefns.dtx
+++ b/base/ltdefns.dtx
@@ -32,7 +32,7 @@
%<*driver>
% \fi
\ProvidesFile{ltdefns.dtx}
- [2020/08/15 v1.5j LaTeX Kernel (definition commands)]
+ [2020/08/21 v1.5k LaTeX Kernel (definition commands)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltdefns.dtx}
@@ -90,6 +90,7 @@
% \changes{v1.0p}{1995/07/13}{Updates to documentation}
% \changes{v1.4b}{2015/02/21}
% {Removed autoload support}
+% \changes{v1.5k}{2020/08/21}{Integration of new hook management interface}
%
% \section{Definitions}
%
diff --git a/base/ltdirchk.dtx b/base/ltdirchk.dtx
index 525af37a..3abd49ac 100644
--- a/base/ltdirchk.dtx
+++ b/base/ltdirchk.dtx
@@ -37,7 +37,7 @@
%<*driver>
% \fi
\ProvidesFile{ltdirchk.dtx}
- [2019/11/01 v1.3a LaTeX Kernel (System Dependent Parts)]
+ [2020/08/21 v1.3a LaTeX Kernel (System Dependent Parts)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltdirchk.dtx}
diff --git a/base/ltexpl.dtx b/base/ltexpl.dtx
index 06a195d7..0f30011c 100644
--- a/base/ltexpl.dtx
+++ b/base/ltexpl.dtx
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltexpl.dtx}
- [2020-07-08 v1.2d LaTeX Kernel (expl3-dependent code)]
+ [2020/08/21 v1.2e LaTeX Kernel (expl3-dependent code)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltexpl.dtx}
@@ -50,6 +50,7 @@
% \fi
%
%
+% \changes{v1.2d}{2020/08/21}{Dropped unused command}
%
% \section{\pkg{expl3}-dependent code}
%
diff --git a/base/ltfilehook.dtx b/base/ltfilehook.dtx
index 77d05fc4..b1971132 100644
--- a/base/ltfilehook.dtx
+++ b/base/ltfilehook.dtx
@@ -31,8 +31,8 @@
%%% From File: ltshipout.dtx
%
% \begin{macrocode}
-\providecommand\ltfilehookversion{v0.9b}
-\providecommand\ltfilehookdate{2020/08/17}
+\providecommand\ltfilehookversion{v1.0a}
+\providecommand\ltfilehookdate{2020/08/21}
% \end{macrocode}
%
%<*driver>
diff --git a/base/ltfiles.dtx b/base/ltfiles.dtx
index 132f2cd2..9a80a5b9 100644
--- a/base/ltfiles.dtx
+++ b/base/ltfiles.dtx
@@ -32,7 +32,7 @@
%<*driver>
% \fi
\ProvidesFile{ltfiles.dtx}
- [2020/08/15 v1.2i LaTeX Kernel (File Handling)]
+ [2020/08/21 v1.2i LaTeX Kernel (File Handling)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltfiles.dtx}
@@ -64,6 +64,7 @@
% \changes{v1.0u}{1995/07/13}{Updates to docu}
% \changes{v1.1m}{2015/02/21}
% {Removed autoload support}
+% \changes{v1.2i}{2020/08/21}{Integration of new hook management interface}
%
% \section{File Handling}
%
diff --git a/base/ltfinal.dtx b/base/ltfinal.dtx
index cee651a2..2555e21a 100644
--- a/base/ltfinal.dtx
+++ b/base/ltfinal.dtx
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltfinal.dtx}
- [2020-08-15 v2.2i LaTeX Kernel (Final Settings)]
+ [2020-08-21 v2.2i LaTeX Kernel (Final Settings)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltfinal.dtx}
@@ -88,6 +88,7 @@
% argument.}
% \changes{v2.0r}{2016/10/15}{Require e\TeX{}}
% \changes{v2.0s}{2016/10/15}{Tidy up status of char 127}
+% \changes{v2.2i}{2020/08/21}{Integration of new hook management interface}
%
% \subsection{Debugging}
%
diff --git a/base/ltfssaxes.dtx b/base/ltfssaxes.dtx
index 4f065a7e..d8e4286b 100644
--- a/base/ltfssaxes.dtx
+++ b/base/ltfssaxes.dtx
@@ -35,7 +35,7 @@
%
%
\ProvidesFile{ltfssaxes.dtx}
- [2020/05/19 v1.0f LaTeX Kernel (NFSS Axes handing)]
+ [2020/08/21 v1.0g LaTeX Kernel (NFSS Axes handing)]
% \iffalse
\documentclass{ltxdoc}
\begin{document}
@@ -1298,6 +1298,7 @@
%
% This initializes the 2020/02/02 extensions to NFSS after any changes
% in the preamble.
+% \changes{v1.0g}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
%</2ekernel>
%<*2ekernel|latexrelease>
diff --git a/base/ltfssini.dtx b/base/ltfssini.dtx
index d5e56fe8..c570cc9a 100644
--- a/base/ltfssini.dtx
+++ b/base/ltfssini.dtx
@@ -36,7 +36,7 @@
%
%
\ProvidesFile{ltfssini.dtx}
- [2020/05/19 v3.2a LaTeX Kernel (NFSS Initialisation)]
+ [2020/08/21 v3.2b LaTeX Kernel (NFSS Initialisation)]
% \iffalse
\documentclass{ltxdoc}
\begin{document}
@@ -771,6 +771,7 @@
% Formats that set up parallel fonts, e.g., for Japanese, can use
% this hook to add additional code here.
% \changes{v3.1m}{2020/04/06}{Hook added (gh/306)}
+% \changes{v3.2b}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
\UseHook{expand at font@defaults}%
}
@@ -827,6 +828,7 @@
% Formats that set up parallel fonts, e.g., for Japanese, can use
% this hook to add resets here.
% \changes{v3.1m}{2020/04/06}{Hook added (gh/306)}
+% \changes{v3.2b}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
\UseHook{bfseries/defaults}%
\fi
@@ -869,6 +871,7 @@
% Formats that set up parallel fonts, e.g., for Japanese, can use
% this hook to add resets here.
% \changes{v3.1m}{2020/04/06}{Hook added (gh/306)}
+% \changes{v3.2b}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
\UseHook{mdseries/defaults}%
\fi
@@ -1003,6 +1006,7 @@
% \end{macrocode}
% Then comes the hook code (by default a no-op) and finally the call
% to \cs{selectfont}.
+% \changes{v3.2b}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
\UseHook{rmfamily}%
\selectfont}
@@ -1013,6 +1017,7 @@
% The definitions for \cs{sffamily} and \cs{ttfamily} are similar,
% the differences are only in what font families get checked.
% \changes{v3.1f}{2020/01/11}{Streamlined implementation with hook}
+% \changes{v3.2b}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
\DeclareRobustCommand\sffamily{%
\not at math@alphabet\sffamily\mathsf
@@ -1022,6 +1027,7 @@
% \end{macrocode}
%
% \changes{v3.1f}{2020/01/11}{Streamlined implementation with hook}
+% \changes{v3.2b}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
\DeclareRobustCommand\ttfamily{%
\not at math@alphabet\ttfamily\mathtt
@@ -1034,16 +1040,18 @@
% \end{macro}
%
%
-% \begin{macro}{\NewHook}
+% \begin{macro}{rmfamily,sffamily,ttfamily,normalfont,expand at font@defaults,
+% bfseries/defaults,mdseries/defaults}
% Declare the hooks used above.
+% \changes{v3.2b}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
\NewHook{rmfamily}
\NewHook{sffamily}
\NewHook{ttfamily}
\NewHook{normalfont}
\NewHook{expand at font@defaults}
-\NewHook{bfseries}
-\NewHook{mdseries}
+\NewHook{bfseries/defaults}
+\NewHook{mdseries/defaults}
% \end{macrocode}
% \end{macro}
%
@@ -1749,6 +1757,7 @@
\edef\f at shape{\shapedefault}%
% \end{macrocode}
%
+% \changes{v3.2b}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
\UseHook{normalfont}%
% \end{macrocode}
diff --git a/base/lthooks.dtx b/base/lthooks.dtx
index ad78aff8..b1d4fe7e 100644
--- a/base/lthooks.dtx
+++ b/base/lthooks.dtx
@@ -31,8 +31,8 @@
%%% From File: lthooks.dtx
%
% \begin{macrocode}
-\def\lthooksversion{v0.9f}
-\def\lthooksdate{2020/08/15}
+\def\lthooksversion{v1.0a}
+\def\lthooksdate{2020/08/21}
% \end{macrocode}
%
%<*driver>
@@ -1384,7 +1384,7 @@
% \texttt{ltshipout-code.pdf}.
%
%
-% \subsubsection{Hooks provided file loading operations}
+% \subsubsection{Hooks provided by file loading operations}
%
% There are several hooks added to \LaTeX{}'s
% process of loading file via its high-level interfaces such as
@@ -1393,6 +1393,19 @@
% \texttt{ltfilehook-code.pdf}.
%
%
+% \subsubsection{Hooks provided by NFSS}
+%
+% \fmi{to be written}
+%\begin{verbatim}
+% \NewHook{rmfamily}
+% \NewHook{sffamily}
+% \NewHook{ttfamily}
+% \NewHook{normalfont}
+% \NewHook{expand at font@defaults}
+% \NewHook{bfseries/defaults}
+% \NewHook{mdseries/defaults}
+%\end{verbatim}
+%
%
% \StopEventually{\setlength\IndexMin{200pt} \PrintIndex }
%
diff --git a/base/ltmiscen.dtx b/base/ltmiscen.dtx
index c3960711..324baa89 100644
--- a/base/ltmiscen.dtx
+++ b/base/ltmiscen.dtx
@@ -32,7 +32,7 @@
%<*driver>
% \fi
\ProvidesFile{ltmiscen.dtx}
- [2020/08/15 v1.1v LaTeX Kernel (Misc. Environments)]
+ [2020/08/21 v1.1v LaTeX Kernel (Misc. Environments)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltmiscen.dtx}
@@ -73,6 +73,7 @@
% \cs{@noligs}.}
% \changes{v1.1g}{1998/08/17}{(RmS) Minor documentation fixes.}
% \changes{v1.1p}{2019/08/27}{Make various commands robust}
+% \changes{v1.1v}{2020/08/21}{Integration of new hook management interface}
%
% \section{Miscellaneous Environments}
% This section implements the basic environment mechanism, and also
diff --git a/base/ltoutput.dtx b/base/ltoutput.dtx
index 709c3917..35d049b9 100644
--- a/base/ltoutput.dtx
+++ b/base/ltoutput.dtx
@@ -37,7 +37,7 @@
%<*driver>
% \fi
\ProvidesFile{ltoutput.dtx}
- [2019/08/27 v1.4e LaTeX Kernel (Output Routine)]
+ [2020/08/21 v1.4f LaTeX Kernel (Output Routine)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltoutput.dtx}
@@ -791,6 +791,11 @@
%
% The stuff in the box should not add any typeset material to the
% page when it is unboxed.
+%
+% This interface is no longer used. Instead a new one is inside
+% \texttt{ltshipout.dtx}. We only keep the box in case some old
+% code refers to it directly (or we do some rollback).
+% \changes{v1.4f}{2020/08/21}{Integration of new hook management interface}
% \begin{macrocode}
\newbox\@begindvibox
%\DeclareRobustCommand \AtBeginDvi [1]{%
diff --git a/base/ltshipout.dtx b/base/ltshipout.dtx
index 112fa471..15a69e9e 100644
--- a/base/ltshipout.dtx
+++ b/base/ltshipout.dtx
@@ -31,8 +31,8 @@
%%% From File: ltshipout.dtx
%
% \begin{macrocode}
-\providecommand\ltshipoutversion{v0.9e}
-\providecommand\ltshipoutdate{2020/08/19}
+\providecommand\ltshipoutversion{v1.0a}
+\providecommand\ltshipoutdate{2020/08/21}
% \end{macrocode}
%
%<*driver>
diff --git a/base/ltxdoc.dtx b/base/ltxdoc.dtx
index 24f70847..696af32a 100644
--- a/base/ltxdoc.dtx
+++ b/base/ltxdoc.dtx
@@ -30,7 +30,7 @@
%
%<class>\NeedsTeXFormat{LaTeX2e}
%<class>\ProvidesClass{ltxdoc}
-%<class> [2020/05/17 v2.0z Standard LaTeX documentation class]
+%<class> [2020/08/21 v2.1a Standard LaTeX documentation class]
%
%<*driver>
\documentclass{ltxdoc}
@@ -54,6 +54,7 @@
%
% \changes{v2.0i}{1994/04/29}{Update the documentation.}
% \changes{v2.0s}{1998/08/17}{(RmS) Documentation fixes.}
+% \changes{v2.1a}{2020/08/21}{Integration of new hook management interface}
%
% \section{Documentation of the \LaTeX\ sources}
%
diff --git a/base/source2edoc.cls b/base/source2edoc.cls
index ac688137..5b670003 100644
--- a/base/source2edoc.cls
+++ b/base/source2edoc.cls
@@ -13,6 +13,66 @@
%\ShowHook{begindocument}
+
+% l3doc's def are buggy (already fixed there but not distributed yet)
+\ExplSyntaxOn
+\RenewDocumentCommand \DocInclude { m }
+ {
+ \relax\clearpage
+ \docincludeaux
+ \IfFileExists{#1.fdd}
+ { \cs_set:Npn \currentfile{#1.fdd} }
+ { \cs_set:Npn \currentfile{#1.dtx} }
+ \int_compare:nNnTF \@auxout = \@partaux
+ { \@latexerr{\string\include\space cannot~be~nested}\@eha }
+ { \@docinclude {#1} } % <--- braces needed!
+ }
+\cs_gset:Npn \@docinclude #1
+ {
+ \clearpage
+ \immediate\write\@mainaux{\string\@input{#1.aux}}
+ \@tempswatrue
+ \if at partsw
+ \@tempswafalse
+ \cs_set:Npx \@tempb {#1}
+ \clist_map_inline:Nn \@partlist
+ {
+ \if_meaning:w \@tempa \@tempb
+ \@tempswatrue
+ \fi:
+ }
+ \fi
+ \if at tempswa
+ \cs_set_eq:NN \@auxout \@partaux
+ \immediate\openout\@partaux #1.aux
+ \immediate\write\@partaux{\relax}
+ \cs_set_eq:NN \@ltxdoc at PrintIndex \PrintIndex
+ \cs_set_eq:NN \PrintIndex \relax
+ \cs_set_eq:NN \@ltxdoc at PrintChanges \PrintChanges
+ \cs_set_eq:NN \PrintChanges \relax
+ \cs_set_eq:NN \@ltxdoc at theglossary \theglossary
+ \cs_set_eq:NN \@ltxdoc at endtheglossary \endtheglossary
+ \part{\currentfile}
+ {
+ \cs_set_eq:NN \ttfamily\relax
+ \cs_gset:Npx \filekey
+ { \filekey,~ \thepart = { \ttfamily \currentfile } } % <-- mising spaces considered harmful
+ }
+ \DocInput{\currentfile}
+ \cs_set_eq:NN \PrintIndex \@ltxdoc at PrintIndex
+ \cs_set_eq:NN \PrintChanges \@ltxdoc at PrintChanges
+ \cs_set_eq:NN \theglossary \@ltxdoc at theglossary
+ \cs_set_eq:NN \endtheglossary \@ltxdoc at endtheglossary
+ \clearpage
+ \@writeckpt{#1}
+ \immediate \closeout \@partaux
+ \else
+ \@nameuse{cp@#1}
+ \fi
+ \cs_set_eq:NN \@auxout \@mainaux
+ }
+\ExplSyntaxOff
+
\def\partname{File}
More information about the latex3-commits
mailing list.