From 26849a68ecf5a0476ec5bd1fbc4a194b31af0060 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 20 Feb 2022 21:18:22 +0000 Subject: memoir (20feb22) git-svn-id: svn://tug.org/texlive/trunk@62105 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/memoir/README | 21 +++++++ Master/texmf-dist/doc/latex/memoir/memman.pdf | Bin 2838243 -> 2838424 bytes Master/texmf-dist/doc/latex/memoir/memman.tex | 7 ++- Master/texmf-dist/source/latex/memoir/memoir.dtx | 70 +++++++++++++++++++---- Master/texmf-dist/tex/latex/memoir/memoir.cls | 35 +++++++++--- 5 files changed, 110 insertions(+), 23 deletions(-) diff --git a/Master/texmf-dist/doc/latex/memoir/README b/Master/texmf-dist/doc/latex/memoir/README index 42944d96b4d..27accc26947 100644 --- a/Master/texmf-dist/doc/latex/memoir/README +++ b/Master/texmf-dist/doc/latex/memoir/README @@ -27,6 +27,27 @@ o Backmatter: Command glossary ~ 40 pages Bibliography, indexes ~ 50 pages +Changed (2022/02/20) + +o memoir v3.7q + +-- Added memhfixc autoloading to memoir (via + \AtEndPackage{hyperref}...), then the equivalent code can be + removed from hyperref +-- now auto loads the etoolbox package in order to enable a future + patching approach instead of overwriting kernel macros + (nb: re-coding has not started yet) +-- changed definition of \medspace into \providecommand for better + testing with older kernels +-- added some code to a hook provided by footmisc fixing a bug with + the combination of memoir+footmisc+reledmac, especially the 2022 + update of footmisc +-- fixed typo in manual regarding \setupmaintoc, see + https://tex.stackexchange.com/q/602963/3929 for details. +-- The LaTeX team changed the order of the file/package hook names + into a more precise scheme. \AtBegin/EndFile, \AtBegin/EndPackage, + \AtBegin/EndClass changed accordingly + Changed (2021/06/16) o memoir v3.7p diff --git a/Master/texmf-dist/doc/latex/memoir/memman.pdf b/Master/texmf-dist/doc/latex/memoir/memman.pdf index 67d9654a71f..e3153585d8f 100644 Binary files a/Master/texmf-dist/doc/latex/memoir/memman.pdf and b/Master/texmf-dist/doc/latex/memoir/memman.pdf differ diff --git a/Master/texmf-dist/doc/latex/memoir/memman.tex b/Master/texmf-dist/doc/latex/memoir/memman.tex index 03a1af27e25..08cb835bc8c 100644 --- a/Master/texmf-dist/doc/latex/memoir/memman.tex +++ b/Master/texmf-dist/doc/latex/memoir/memman.tex @@ -13141,8 +13141,8 @@ other environments. \svnidlong {$Ignore: $} -{$LastChangedDate: 2018-09-14 11:13:10 +0200 (Fri, 14 Sep 2018) $} -{$LastChangedRevision: 620 $} +{$LastChangedDate: 2021-06-28 13:55:32 +0200 (Mon, 28 Jun 2021) $} +{$LastChangedRevision: 715 $} {$LastChangedBy: daleif@math.au.dk $} %%%%%%%%%%%%%%%%%%%%%%%%%% @@ -14968,11 +14968,12 @@ everything back to normal. \renewcommand{\cftchapterbreak}{\par\addpenalty{-\@highpenalty}} \setpnumwidth{2.55em} \setrmarg{3.55em} - \setcounter{tocdepth}{2}} + \setcounter{tocdepth}{2} \let\cftpartformatpnum\oldcftpartformatpnum \addtodef{\cftpartbreak}{\par}{} \let\cftbookformatpnum\oldcftbookformatpnum \addtodef{\cftbookbreak}{\par}{} + } \end{lcode} The first few lines restore some macros to their original definitions. \begin{lcode} diff --git a/Master/texmf-dist/source/latex/memoir/memoir.dtx b/Master/texmf-dist/source/latex/memoir/memoir.dtx index 074ee11e1a8..15574b52d79 100644 --- a/Master/texmf-dist/source/latex/memoir/memoir.dtx +++ b/Master/texmf-dist/source/latex/memoir/memoir.dtx @@ -20,7 +20,7 @@ % This work consists of the files listed in the README file. % % \fi -% \CheckSum{31013} +% \CheckSum{31027} % % \changes{v0.1}{2001/05/20}{First public alpha release} % \changes{v0.2}{2001/06/03}{First beta release} @@ -127,6 +127,7 @@ % to ensure backwards compatability} % \changes{v3.7o}{2021/03/23}{Maintenance and a provide for the kernel} % \changes{v3.7p}{2021/06/16}{Small adjustments of memoir vs memhfixc} +% \changes{v3.7q}{2022/02/20}{Maintenance} % % \def\dtxfile{memoir.dtx} % @@ -191,6 +192,7 @@ % \def\fileversion{v3.7n} \def\filedate{2020/10/04} % \def\fileversion{v3.7o} \def\filedate{2021/03/23} % \def\fileversion{v3.7p} \def\filedate{2021/06/16} +% \def\fileversion{v3.7q} \def\filedate{2022/02/20} % \title{The LaTeX \Lpack{memoir} class for configurable book % typesetting: Source code\thanks{This % file (\texttt{\dtxfile}) has version number \fileversion, last revised @@ -421,11 +423,11 @@ % Announce the name, option files and version for LaTeX2e files: % \begin{macrocode} %\ProvidesClass{memoir}% -% [2021/06/16 v3.7p configurable book, report, article document class] +% [2022/02/20 v3.7q configurable book, report, article document class] % \end{macrocode} % In the manual it is useful to know the current version. % \begin{macrocode} -%\newcommand\memversion{v3.7p, 2021/06/16} +%\newcommand\memversion{v3.7q, 2022/02/20} %<9pt>\ProvidesFile{mem9.clo}% %<9pt> [2008/01/30 v0.4 memoir class 9pt size option] %<10pt>\ProvidesFile{mem10.clo}% @@ -459,6 +461,13 @@ %<*class> % \end{macrocode} % +% (2022/02/20): In order to be able to use a patching approach instead +% of overwriting kernel macros, we will now require the +% \Lpack{etoolbox} package. +% \begin{macrocode} +\RequirePackage{etoolbox} +% \end{macrocode} +% % Note (2001/08/03): Old versions of the \Lpack{amsmath} package did odd % things with \cs{@tempa}, \cs{@tempb} and \cs{@tempc}. I have now replaced % any use of these with \cs{@memtempa}, etc. @@ -941,9 +950,11 @@ % We add a \cs{temp} trick suggested by David Carlisle as the old code % required \#\ doubling and the new does not. To be backwards % compatible we force required \#\ doubling. +% \changes{v3.7q}{2022/01/07}{The LaTeX team reversed the order of the +% hook name} % \begin{macrocode} - \newcommand\AtBeginFile[2]{\def\temp{\AddToHook{file/before/#1}{#2}}\temp} - \newcommand\AtEndFile[2]{\def\temp{\AddToHook{file/after/#1}{#2}}\temp} + \newcommand\AtBeginFile[2]{\def\temp{\AddToHook{file/#1/before}{#2}}\temp} + \newcommand\AtEndFile[2]{\def\temp{\AddToHook{file/#1/after}{#2}}\temp} % \end{macrocode} % \end{macro} @@ -963,9 +974,11 @@ % We add a \cs{temp} trick suggested by David Carlisle as the old code % required \#\ doubling and the new does not. To be backwards % compatible we force required \#\ doubling. +% \changes{v3.7q}{2022/01/07}{The LaTeX team reversed the order of the +% hook name} % \begin{macrocode} - \newcommand\AtBeginPackage[2]{\def\temp{\AddToHook{package/before/#1}{#2}}\temp} - \newcommand\AtEndPackage[2]{\def\temp{\AddToHook{package/after/#1}{#2}}\temp} + \newcommand\AtBeginPackage[2]{\def\temp{\AddToHook{package/#1/before}{#2}}\temp} + \newcommand\AtEndPackage[2]{\def\temp{\AddToHook{package/#1/after}{#2}}\temp} \newcommand{\RequireAtEndPackage}[2]{% \@ifpackageloaded{#1}{#2}{\AtEndPackage{#1}{#2}}} @@ -985,9 +998,11 @@ % We add a \cs{temp} trick suggested by David Carlisle as the old code % required \#\ doubling and the new does not. To be backwards % compatible we force required \#\ doubling. +% \changes{v3.7q}{2022/01/07}{The LaTeX team reversed the order of the +% hook name} % \begin{macrocode} - \newcommand\AtBeginClass[2]{\def\temp{\AddToHook{class/before/#1}{#2}}\temp} - \newcommand\AtEndClass[2]{\def\temp{\AddToHook{class/after/#1}{#2}}\temp} + \newcommand\AtBeginClass[2]{\def\temp{\AddToHook{class/#1/before}{#2}}\temp} + \newcommand\AtEndClass[2]{\def\temp{\AddToHook{class/#1/after}{#2}}\temp} \newcommand{\RequireAtEndClass}[2]{% \@ifclassloaded{#1}{#2}{\AtEndClass{#1}{#2}}} @@ -28742,8 +28757,10 @@ % \begin{macro}{\m@m@makecolfloats} % \begin{macro}{\m@m@makecoltext} % These two macros contain code common to versions of \cs{@makecol} +% \changes{v3.7q}{2022/02/20}{Added the \cs{@elt} line from the kernel} % \begin{macrocode} \newcommand*{\m@m@makecolfloats}{% + \let\@elt\relax% \xdef\@freelist{\@freelist\@midlist}% \global\let\@midlist\@empty \@combinefloats} @@ -28884,7 +28901,7 @@ % \begin{macro}{\mem@makecoldblf} % A version of \cs{@makecol} which is a placeholder to fix the doublefloat % problem. -% +% TODO: remove this code it is not used % \begin{macrocode} \gdef\mem@makecoldblf{% \m@m@makecolintro @@ -29280,6 +29297,29 @@ \m@m@makecoltext \global \maxdepth \@maxdepth} +% \end{macrocode} +% +% If the \Lpack{footmisc} package is loaded all of our additions of +% extra footnotes, side footnotes, sidebar are lost. So we add them to +% their collection macro. This is especially important when +% \Lpack{footmisc} \emph{and} \Lpack{reledmac} are loaded with +% memoir. To play nice, we use the command hooks introduced in june 2021. +% \changes{v3.7q}{2022/02/17}{Added this fix for \Lpack{footmisc}} +% \begin{macrocode} +\IfFormatAtLeastTF{2021-06-01}{ + % adding to "hook" in footmisc + \AddToHook{cmd/@makecol@appendblocks/after}{\m@mdoextrafeet\m@mopsidefoot\m@mopsidebar} +}{ + \AtBeginDocument{ + \@ifpackagelater{footmisc}{2011/06/07}{ + \@memerror{You seem to have manually updated both memoir and^^J + footmisc on an older LaTeX kernel. Memoir is not compatible with + footmisc^^J version 2022/02/14 v6.0b on LaTeX kernels from before + 2021/06/01. Please^^J update your LaTeX installation instead of + manually updating classes^^J or packages}{Update your LaTeX installation} + }{} + } +} % \end{macrocode} % % \changes{v1.618033988b}{2010/02/17}{a bf was missing in \cs{m@mopfootnotebf}} @@ -34625,8 +34665,9 @@ % \begin{macro}{\medspace} % \begin{macro}{\:} % Medium space \verb?\: (\medspace) = 4/18 em? +% \changes{v3.7q}{2022/02/17}{use \cs{providecommand} on \cs{medspace}} % \begin{macrocode} -\newcommand{\medspace}{\kern .22222em } +\providecommand{\medspace}{\kern .22222em } \DeclareRobustCommand{\:}{% \relax\ifmmode\mskip\medmuskip\else\medspace\fi} % \end{macrocode} @@ -36631,7 +36672,14 @@ % \end{macrocode} % % +% \subsection{Interaction with the \Lpack{hyperref} package} % +% Ulrike Fischer has ask that the \Lpack{memhfixc} autoload is moved +% from \Lpack{hyperref} to \Lpack{memoir}. +% \changes{v3.7q}{2022/02/20}{Added autoloading} +% \begin{macrocode} +\AtEndPackage{hyperref}{\RequirePackage{memhfixc}} +% \end{macrocode} % % \subsection{Default page style} % We use the page style \pstyle{headings} by diff --git a/Master/texmf-dist/tex/latex/memoir/memoir.cls b/Master/texmf-dist/tex/latex/memoir/memoir.cls index 7b174c9ff58..8974e5b466b 100644 --- a/Master/texmf-dist/tex/latex/memoir/memoir.cls +++ b/Master/texmf-dist/tex/latex/memoir/memoir.cls @@ -28,8 +28,9 @@ %% \NeedsTeXFormat{LaTeX2e} \ProvidesClass{memoir}% - [2021/06/16 v3.7p configurable book, report, article document class] -\newcommand\memversion{v3.7p, 2021/06/16} + [2022/02/20 v3.7q configurable book, report, article document class] +\newcommand\memversion{v3.7q, 2022/02/20} +\RequirePackage{etoolbox} \newcommand*{\@ptsize}{} \newcommand*{\@memptsize}{} \newlength{\onelineskip} @@ -138,16 +139,16 @@ \@onlypreamble\DisemulatePackage \IfFormatAtLeastTF{2020/10/01}{ - \newcommand\AtBeginFile[2]{\def\temp{\AddToHook{file/before/#1}{#2}}\temp} - \newcommand\AtEndFile[2]{\def\temp{\AddToHook{file/after/#1}{#2}}\temp} + \newcommand\AtBeginFile[2]{\def\temp{\AddToHook{file/#1/before}{#2}}\temp} + \newcommand\AtEndFile[2]{\def\temp{\AddToHook{file/#1/after}{#2}}\temp} - \newcommand\AtBeginPackage[2]{\def\temp{\AddToHook{package/before/#1}{#2}}\temp} - \newcommand\AtEndPackage[2]{\def\temp{\AddToHook{package/after/#1}{#2}}\temp} + \newcommand\AtBeginPackage[2]{\def\temp{\AddToHook{package/#1/before}{#2}}\temp} + \newcommand\AtEndPackage[2]{\def\temp{\AddToHook{package/#1/after}{#2}}\temp} \newcommand{\RequireAtEndPackage}[2]{% \@ifpackageloaded{#1}{#2}{\AtEndPackage{#1}{#2}}} - \newcommand\AtBeginClass[2]{\def\temp{\AddToHook{class/before/#1}{#2}}\temp} - \newcommand\AtEndClass[2]{\def\temp{\AddToHook{class/after/#1}{#2}}\temp} + \newcommand\AtBeginClass[2]{\def\temp{\AddToHook{class/#1/before}{#2}}\temp} + \newcommand\AtEndClass[2]{\def\temp{\AddToHook{class/#1/after}{#2}}\temp} \newcommand{\RequireAtEndClass}[2]{% \@ifclassloaded{#1}{#2}{\AtEndClass{#1}{#2}}} @@ -10097,6 +10098,7 @@ \gdef\@doclearpage{\mem@doclearpage} \newcommand*{\m@m@makecolfloats}{% + \let\@elt\relax% \xdef\@freelist{\@freelist\@midlist}% \global\let\@midlist\@empty \@combinefloats} @@ -10347,6 +10349,20 @@ \m@m@makecoltext \global \maxdepth \@maxdepth} +\IfFormatAtLeastTF{2021-06-01}{ + % adding to "hook" in footmisc + \AddToHook{cmd/@makecol@appendblocks/after}{\m@mdoextrafeet\m@mopsidefoot\m@mopsidebar} +}{ + \AtBeginDocument{ + \@ifpackagelater{footmisc}{2011/06/07}{ + \@memerror{You seem to have manually updated both memoir and^^J + footmisc on an older LaTeX kernel. Memoir is not compatible with + footmisc^^J version 2022/02/14 v6.0b on LaTeX kernels from before + 2021/06/01. Please^^J update your LaTeX installation instead of + manually updating classes^^J or packages}{Update your LaTeX installation} + }{} + } +} \gdef\mem@makecolbf{% \m@m@makecolintro \setbox\@outputbox \box\@cclv @@ -12198,7 +12214,7 @@ \@ifl@t@r\fmtversion{2020-10-01}{ % nothing to do with newer kernel }{% -\newcommand{\medspace}{\kern .22222em } +\providecommand{\medspace}{\kern .22222em } \DeclareRobustCommand{\:}{% \relax\ifmmode\mskip\medmuskip\else\medspace\fi} \DeclareRobustCommand{\!}{% @@ -13157,6 +13173,7 @@ \AtBeginPackage{float}{\let\newfloat\relax} +\AtEndPackage{hyperref}{\RequirePackage{memhfixc}} \ifartopt \pagestyle{plain} \else -- cgit v1.2.3