summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/texmf-dist/doc/latex/memoir/README37
-rw-r--r--Master/texmf-dist/doc/latex/memoir/memman.pdfbin2779439 -> 2780496 bytes
-rw-r--r--Master/texmf-dist/doc/latex/memoir/memman.tex18
-rw-r--r--Master/texmf-dist/source/latex/memoir/memoir.dtx46
-rw-r--r--Master/texmf-dist/tex/latex/memoir/memoir.cls16
5 files changed, 83 insertions, 34 deletions
diff --git a/Master/texmf-dist/doc/latex/memoir/README b/Master/texmf-dist/doc/latex/memoir/README
index ce656d845c7..199f5d9e9c9 100644
--- a/Master/texmf-dist/doc/latex/memoir/README
+++ b/Master/texmf-dist/doc/latex/memoir/README
@@ -28,27 +28,40 @@ o Backmatter:
Bibliography, indexes ~ 50 pages
+Changed (2020/10/04)
+
+o memoir v3.7n
+
+-- The new implementations for the \AtEndPackage and friends only
+ require single #s not # doubling as in the old implementation. That
+ is not backwards compatible. # doubling now forced in the new
+ implementation as well.
+
+
Changed (2020/09/10)
o memoir v3.7m
-In preparation for the LaTeX format/kernel update (2020/10/01) several
-class hook features have been changed to use these new features, see
-the manuals for lthooks, ltfilehook, ltshipout for details on these
-new hooks.
+In preparation for the LaTeX format/kernel update (2020/10/01) several class
+file hook features will change to use these new kernel features, see the manuals
+for lthooks, ltfilehook, ltshipout for details on these new hooks.
Thus from the 2020/10/01 LaTeX forward onwards we have the changes
below. Until 2020/10/01 the new format can be tested via
e.g. pdflatex-dev
--- trimmarks are now added via the shipout/background hook, and is
- labeled memoir/trimmarks
+As of writing, you can test the new format via e.g. pdflatex-dev if you have an
+up to date LaTeX installation.
+
+Details about the changes:
+
+-- trimmarks are now added via the shipout/background hook, the added hook is
+ labeled "memoir/trimmarks"
See the ltshipout manual for more details.
-- \AtBeginFile{filename}{code} and \AtEndFile{filename}{code} are now
- implemented via the file/before/filename and
- file/after/filename hooks.
+ implemented via the file/before/filename and file/after/filename hooks.
**Breaking change:** In the old implementation of
\AtBegin/EndFile{file}: if file is a `.tex` file, then one could use
@@ -62,11 +75,11 @@ e.g. pdflatex-dev
package/before/name and package/after/name hooks.
-- \AtBeginClass{name}{code}, \AtEndClass{name}{code} and
- \RequireAtEndClass{name}{code} are implemented via
- class/before/name and class/after/name
+ \RequireAtEndClass{name}{code} are implemented via class/before/name and
+ class/after/name
--- the redefinition of \trimmarks inside the definition of \quarkmarks
- have been removed
+-- the redefinition of \trimmarks inside the definition of \quarkmarks have been
+ removed
-- Whenever the caption package is loaded, memoir will reset it self
so the caption package can take over. We issue some information to
diff --git a/Master/texmf-dist/doc/latex/memoir/memman.pdf b/Master/texmf-dist/doc/latex/memoir/memman.pdf
index 1dfc60a1df6..ceaa77861d9 100644
--- a/Master/texmf-dist/doc/latex/memoir/memman.pdf
+++ b/Master/texmf-dist/doc/latex/memoir/memman.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/memoir/memman.tex b/Master/texmf-dist/doc/latex/memoir/memman.tex
index 8c24a503226..9ac76c5a16d 100644
--- a/Master/texmf-dist/doc/latex/memoir/memman.tex
+++ b/Master/texmf-dist/doc/latex/memoir/memman.tex
@@ -28144,8 +28144,8 @@ pdflatex memman
\svnidlong
{$Ignore: $}
-{$LastChangedDate: 2020-08-06 14:38:28 +0200 (Thu, 06 Aug 2020) $}
-{$LastChangedRevision: 693 $}
+{$LastChangedDate: 2020-10-04 21:52:58 +0200 (Sun, 04 Oct 2020) $}
+{$LastChangedRevision: 696 $}
{$LastChangedBy: daleif@math.au.dk $}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -30190,7 +30190,19 @@ in your preamble.
about the hooking feature.
\end{Changed}
-
+\begin{caveat}
+ In the \marg{code} part of the hooks, any use of \# needs to be
+ doubled. Thus if you want to redefine the macro \cs{foo} which takes
+ an argument at the end of package \textsf{bar}, you need to use
+\begin{verbatim}
+\AtEndPackage{bar}{
+ \renewcommand\foo[1]{something something ##1}
+}
+\end{verbatim}
+In the format coming after 2020/10/01 we actually only needed a single
+\#, but then our code is not backwards compatible, so the \#\ is now
+forced even in the new emplementation.
+\end{caveat}
The kernel provides two commands, \cmd{\AtBeginDocument}
and \cmd{\AtEndDocument} which can only be used in the preamble,
diff --git a/Master/texmf-dist/source/latex/memoir/memoir.dtx b/Master/texmf-dist/source/latex/memoir/memoir.dtx
index 37851064825..123d6371c1a 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{31201}
+% \CheckSum{31219}
%
% \changes{v0.1}{2001/05/20}{First public alpha release}
% \changes{v0.2}{2001/06/03}{First beta release}
@@ -123,6 +123,8 @@
% \changes{v3.7k}{2020/03/25}{Maintenance}
% \changes{v3.7l}{2020/06/02}{Small preparation for october kernel update}
% \changes{v3.7m}{2020/09/10}{More preparations for october kernel update}
+% \changes{v3.7n}{2020/10/04}{Foced # doubling in AtBegin/EndX macros
+% to ensure backwards compatability}
%
% \def\dtxfile{memoir.dtx}
%
@@ -184,6 +186,7 @@
% \def\fileversion{v3.7k} \def\filedate{2020/03/25}
% \def\fileversion{v3.7l} \def\filedate{2020/06/02}
% \def\fileversion{v3.7m} \def\filedate{2020/09/10}
+% \def\fileversion{v3.7n} \def\filedate{2020/10/04}
% \title{The LaTeX \Lpack{memoir} class for configurable book
% typesetting: Source code\thanks{This
% file (\texttt{\dtxfile}) has version number \fileversion, last revised
@@ -414,11 +417,11 @@
% Announce the name, option files and version for LaTeX2e files:
% \begin{macrocode}
%<class>\ProvidesClass{memoir}%
-%<class> [2020/09/10 v3.7m configurable book, report, article document class]
+%<class> [2020/10/04 v3.7n configurable book, report, article document class]
% \end{macrocode}
% In the manual it is useful to know the current version.
% \begin{macrocode}
-%<class>\newcommand\memversion{v3.7m, 2020/09/10}
+%<class>\newcommand\memversion{v3.7n, 2020/10/04}
%<9pt>\ProvidesFile{mem9.clo}%
%<9pt> [2008/01/30 v0.4 memoir class 9pt size option]
%<10pt>\ProvidesFile{mem10.clo}%
@@ -927,9 +930,16 @@
% \verb!\AtEndFile{file}! worked for \texttt{file.tex} even if one
% did not speficy the extension. Now you will need to use
% \verb!\AtEndFile{file.tex}! explicitly.
-% \begin{macrocode}
- \newcommand\AtBeginFile[2]{\AddToHook{file/before/#1}{#2}}
- \newcommand\AtEndFile[2]{\AddToHook{file/after/#1}{#2}}
+% \changes{v3.7n}{2020/10/04}{The old AtXFile code required \#\
+% doubling. The new does not, and this is not backwards compatible. By
+% suggestion from David Carlisle we change the code a little such that
+% \#\ is needed}
+% 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.
+% \begin{macrocode}
+ \newcommand\AtBeginFile[2]{\def\temp{\AddToHook{file/before/#1}{#2}}\temp}
+ \newcommand\AtEndFile[2]{\def\temp{\AddToHook{file/after/#1}{#2}}\temp}
% \end{macrocode}
% \end{macro}
@@ -942,9 +952,16 @@
% is the equivalent for after input. \cs{RequireAtEndPackage} inserts
% \meta{code} either at the end of \meta{pack}, or immediately if
% \meta{pack} has already been input.
-% \begin{macrocode}
- \newcommand\AtBeginPackage[2]{\AddToHook{package/before/#1}{#2}}
- \newcommand\AtEndPackage[2]{\AddToHook{package/after/#1}{#2}}
+% \changes{v3.7n}{2020/10/04}{The old AtXPackage code required \#\
+% doubling. The new does not, and this is not backwards compatible. By
+% suggestion from David Carlisle we change the code a little such that
+% \#\ is needed}
+% 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.
+% \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{\RequireAtEndPackage}[2]{%
\@ifpackageloaded{#1}{#2}{\AtEndPackage{#1}{#2}}}
@@ -957,9 +974,16 @@
% \begin{macro}{\RequireAtEndClass}
% \cs{AtBeginClass}\marg{class}\marg{code} and friends are the class
% equivalents of \cs{AtBeginPackage} and friends.
+% \changes{v3.7n}{2020/10/04}{The old AtXPackage code required \#\
+% doubling. The new does not, and this is not backwards compatible. By
+% suggestion from David Carlisle we change the code a little such that
+% \#\ is needed}
+% 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.
% \begin{macrocode}
- \newcommand\AtBeginClass[2]{\AddToHook{class/before/#1}{#2}}
- \newcommand\AtEndClass[2]{\AddToHook{class/after/#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{\RequireAtEndClass}[2]{%
\@ifclassloaded{#1}{#2}{\AtEndClass{#1}{#2}}}
diff --git a/Master/texmf-dist/tex/latex/memoir/memoir.cls b/Master/texmf-dist/tex/latex/memoir/memoir.cls
index 208f026fc1a..f70a856b48f 100644
--- a/Master/texmf-dist/tex/latex/memoir/memoir.cls
+++ b/Master/texmf-dist/tex/latex/memoir/memoir.cls
@@ -28,8 +28,8 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{memoir}%
- [2020/09/10 v3.7m configurable book, report, article document class]
-\newcommand\memversion{v3.7m, 2020/09/10}
+ [2020/10/04 v3.7n configurable book, report, article document class]
+\newcommand\memversion{v3.7n, 2020/10/04}
\newcommand*{\@ptsize}{}
\newcommand*{\@memptsize}{}
\newlength{\onelineskip}
@@ -138,16 +138,16 @@
\@onlypreamble\DisemulatePackage
\IfFormatAtLeastTF{2020/10/01}{
- \newcommand\AtBeginFile[2]{\AddToHook{file/before/#1}{#2}}
- \newcommand\AtEndFile[2]{\AddToHook{file/after/#1}{#2}}
+ \newcommand\AtBeginFile[2]{\def\temp{\AddToHook{file/before/#1}{#2}}\temp}
+ \newcommand\AtEndFile[2]{\def\temp{\AddToHook{file/after/#1}{#2}}\temp}
- \newcommand\AtBeginPackage[2]{\AddToHook{package/before/#1}{#2}}
- \newcommand\AtEndPackage[2]{\AddToHook{package/after/#1}{#2}}
+ \newcommand\AtBeginPackage[2]{\def\temp{\AddToHook{package/before/#1}{#2}}\temp}
+ \newcommand\AtEndPackage[2]{\def\temp{\AddToHook{package/after/#1}{#2}}\temp}
\newcommand{\RequireAtEndPackage}[2]{%
\@ifpackageloaded{#1}{#2}{\AtEndPackage{#1}{#2}}}
- \newcommand\AtBeginClass[2]{\AddToHook{class/before/#1}{#2}}
- \newcommand\AtEndClass[2]{\AddToHook{class/after/#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{\RequireAtEndClass}[2]{%
\@ifclassloaded{#1}{#2}{\AtEndClass{#1}{#2}}}