diff options
author | Karl Berry <karl@freefriends.org> | 2023-08-08 19:53:20 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-08-08 19:53:20 +0000 |
commit | 70fb6221c767f7acb3b27a683421c46ac158397c (patch) | |
tree | 2a1d26a4810474ad7bb4e8afd09dc38ed2f358a0 /Master/texmf-dist/doc/latex/memoir | |
parent | e8eed42137ac2b60833d77a2a5b13e357f424cbb (diff) |
memoir (8aug23)
git-svn-id: svn://tug.org/texlive/trunk@67850 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/memoir')
-rw-r--r-- | Master/texmf-dist/doc/latex/memoir/README | 106 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/memoir/memman.pdf | bin | 2837566 -> 2845232 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/memoir/memman.tex | 508 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/memoir/memsty.sty | 5 |
4 files changed, 423 insertions, 196 deletions
diff --git a/Master/texmf-dist/doc/latex/memoir/README b/Master/texmf-dist/doc/latex/memoir/README index b2581abbb8a..0edb2a17415 100644 --- a/Master/texmf-dist/doc/latex/memoir/README +++ b/Master/texmf-dist/doc/latex/memoir/README @@ -16,16 +16,96 @@ more popular packages. Lars Madsen <daleif@math.au.dk> is maintaining memoir. - NOTE: The full User Manual (memman.pdf) is a large document of about -550 pages in total. You do not need to print all of it, especially if you -already have an earlier edition. Roughly speaking, the main portions are: -o Frontmatter: Preface, Toc, Introduction, Terminology ~ 40 pages -o Mainmatter: - Class commands and environments, etc. ~ 380 pages -o Appendices: (La)Tex programming, Errors and warnings ~ 40 pages -o Backmatter: - Command glossary ~ 40 pages - Bibliography, indexes ~ 50 pages +WORD OF ADVISE: It is not recommended to manually update memoir into +an old LaTeX installation. Not all changes are compatible with older +un-updated LaTeX systems and we often make no attempt to be backwards +compatible. Instead we assume that users use updated memoir with an +updated LaTeX installation. + +Changes (2023/08/08) + +o memoir v3.8 + +-- now requires a LaTeX format from 2021/06/01 or newer. + + The class will halt compilation (in all interaction modes) if the + format is too old. + +-- \titleref is now an alias for \nameref (autoloaded). + The class have been adjusted to provide info for sectionals and + normal captions. + + The titleref package will remain marked as being emulated + as it shouldn't be used with the class (and haven't been updated in + 20+ years). + +-- nameref paches in the class are no longer needed + +-- label handling for subcaptions and friends have been reimplemented. + +-- no longer re-defines \label as per request of the LaTeX Team. + +-- booktabs is now loaded as a required package instead of being + embedded + +-- Fixed typo in the caption of figure 2.13. Thanks to Vladimir + G. Ivanović for the report. + +-- removed etex loading (was only loaded for kernels from before + 2015). The noetex class option removed as well. + +-- reimplemented \pagenumbering(*) as a single macro + +-- additions to \@xfloat is now done via a cmd/after hook if the + format version supports it. + +-- Definition of \theHpoem changed to \providecommand + +-- The \theH<counter> macros defined in memoir was modified to use + \the\value{counter} instead of just \arabic{counter} as some + packages change \arabic. + +-- \toclevel@part was actually never fixed in v3.7.19, now it is + +-- added \@currentcounter in various places that manually + set \@currentlabel (primarily footnote constructions). Reported by + Gustavo Barros. + +-- replaced hardcoded \footnotesize in \verbfootnote by \foottextfont + +-- made a small change to footnote formatting. Now one can use + \raggedright in \footnotetext to get raggedright footnotes. Use + with care as \raggedright does change various paragraph settings + +-- replaced etoolbox loading by xpatch (which loads etoolbox) as it + can patch more. + +-- Added a Hook named memoir/subcaption/aftercounter which is executed + after \refstepcounter in \subcaption, \subbottom, \subtop + etc. Requested by Gustavo Barros. + +-- Redefinition of \@setsize removed, was copied from setspace.sty + which states that it was only needed for some 209 packages. + + +The following macros have been disabled (to either give a warning or +an error). + +-- \namerefon and \namerefoff => warning (now always on) + +-- \currenttitle => error (given that many things are now "titled", + relying on this to get the current "title" is too risky, use proper + \label+\titleref instead) + +-- \theTitleReference => warning (was used in the old implementation + of \titleref and \currenttitle) + + +o memhfixc v1.21 + +-- All nameref patches have been removed +-- provided \subfigureautorefname + Changes (2022/11/17) @@ -45,12 +125,6 @@ o memhfixc v1.20 longer used in memhfixc -WORD OF ADVISE: It is not recommended to manually update memoir into -an old LaTeX installation. Not all changes are compatible with older -un-updated LaTeX systems and we often make no attempt to be backwards -compatible. Instead we assume that users use updated memoir with an -updated LaTeX installation. - Changes (2022/07/29) diff --git a/Master/texmf-dist/doc/latex/memoir/memman.pdf b/Master/texmf-dist/doc/latex/memoir/memman.pdf Binary files differindex 4b27d2a696c..fff50043ece 100644 --- a/Master/texmf-dist/doc/latex/memoir/memman.pdf +++ b/Master/texmf-dist/doc/latex/memoir/memman.pdf diff --git a/Master/texmf-dist/doc/latex/memoir/memman.tex b/Master/texmf-dist/doc/latex/memoir/memman.tex index 7c04b891ffa..c95b8a0daee 100644 --- a/Master/texmf-dist/doc/latex/memoir/memman.tex +++ b/Master/texmf-dist/doc/latex/memoir/memman.tex @@ -385,6 +385,143 @@ Manual last changed \svnyear/\svnmonth/\svnday %#% extend +%#% extstart include maintainer-remarks.tex + +\svnidlong +{$Ignore: $} +{$LastChangedDate: 2023-08-08 16:33:42 +0200 (Tue, 08 Aug 2023) $} +{$LastChangedRevision: 772 $} +{$LastChangedBy: daleif@math.au.dk $} + +\chapter{Remarks from the maintainer} +\label{cha:remarks-from-maint} + + +When Peter Wilson released the first version of \theclass{} (back in +2021), \LaTeX{} land was very different. Updating packages outside of +the yearly release (TeXLive) had to be done by hand. Manuals for +packages was \emph{not} even a requirement for CTAN. Thus it made +sense to embed the functionality from several packages and provide +usage information about them in this very manual. Peter even added a +lot of historical notes as well, that was later spun of as a separate +document of its own (see \cite{MEMDESIGN}). As time progressed +methods were set in place to make it easier to update packages during +a release cycle and later packages and classes were required to always +provide a suitable manual. + +Over the past five years I have moved several packages out from being +embedded copies over to simply loading them as packages.\footnote{One + of the main reasons to do so was maintance, it is not feasible to + keep track of changes to an embedded package and then applying those + to \theclass.} As it is useful to have usage description in one +place, we have kept that in the manual, but users should always refer +back to the packages original manuals. Summer 2023, I moved +\Lpack{booktabs} from embedding to loading. + +\fancybreak{} + +As of Summer 2023 (begining with \theclass\ version 3.8) things are +changing a for \theclass. In the past 4 years (begining in 2019) the +\LaTeX\ Team have added lot of new functionality into the \LaTeX{} +format.\footnote{Most notably most of the \Lpack{xparse} package, plus + the entire \LaTeX3 programming layer.} They will continue to add +extra features to the kernel that are going to be very useful in the +future, both at the level of class and package writers, but also at +user level. As such we would like to begin using these new features +without having to also provide backwards compatibility for those (few) +users who manually update \theclass.\footnote{Overleaf users should be + aware that Overleaf does not update packages or kernels on their + \LaTeX\ images. So if we say the cut off is summer 2021, Overleaf + might not have the correct kernel update in their version of TeXLive + 2021.} + +Counting from version 3.8 we will therefore now require users to have +a modern \LaTeX{} kernel installed. For \theclass\ version 3.8 a user +who manually updates \theclass\ will need to have a \LaTeX\ format +released by 2021/06/01 or later. If the version is too old \theclass\ +will halt the compilatiion to force users to react to the error and +not just ignore it.\footnote{Most \LaTeX\ editors incuding OverLeaf + use \texttt{-interaction=nonstopmode}, aka try do make a PDF even if + there are compilation errors. On old kernels, \theclass\ will end + even this! } In case we would like to use functionality that are in +a even newer formats, we will make sure that these macros are provided +by the class (eventhough they may do nothing unless you have the +proper kernel). + +Going forward a main goal of the \LaTeX\ Team is the ability to tag +PDF files. The \theclass~class will also have to be adapted to become +compatible with this feature. For version~3.8 this required us to +rework how \cmd{\titleref} was implemted as we should no longer +redefine \cmd{\label}.\footnote{\cmd{\titleref} is now an alias for + \cmd{\nameref} (from the \Lpack{nameref} package), a package which + is maintained in close relation with \Lpack{hyperref}.} + +\fancybreak{} + +Additionally, going forward I will additionally be starting to look at +removing certain functionality from \theclass. This will be things +that does not really belong in \theclass, users should really get this +functionality from somewhere else (some additional package). Unless it +is clear that the macro has to go due to reimplemantation of a +feature, the removal will be announced in advance (say 12--18 months), +by adding a warning to the macro (especially if we would like the user +to use a different macro). It will also be marked in the manual that +the macro/environment will be removed in a future release. + +% Macros and environments currently under consideration (but not marked +% yet) include: \begingroup +% \renewcommand\descriptionlabel[1]{\hspace\labelsep\parbox[t]{\dimexpr\textwidth-5pt\relax}{#1}} +% \begin{description} +% \item[\cmd{\patchcommand}] +% Users should use \cmd{\pretocmd} and \cmd{\apptocmd} from +% \Lpack{etoolbox}. The \Lpack{xpatch} package even have extended +% versions of them. +% \item[ctabular] +% This is a breakable version of \Pe{tabular} but with not way of +% replicating the table header like for example \Lpack{longtable} +% can. These days there are several packages to handles tables. +% \item[\cmd{\newloglike}] +% \item[\cmd{\provideloglike}] +% Users should really use \cmd{\DeclareMathOperator} from +% \Lpack{amsopn} (autoloaded by the ever present \Lpack{amsmath}). +% \end{description} +% \endgroup + +\begin{flushright} + Summer 2023 + + /daleif +\end{flushright} + + +\section*{Public interfaces removed/disabled in v3.8} + +The four title macros was disabled due to the \cmd{\titleref} reimplementation. +\begingroup +\renewcommand\descriptionlabel[1]{\hspace\labelsep\parbox[t]{\dimexpr\textwidth-5pt\relax}{#1}} +\begin{description} +\item[\cmd{\currenttitle}] Would have given the title of the current + sectional devide. Too risky to rely on, use + \cmd{\label}+\cmd{\titleref} instead. Throws an error if used. +\item[\cmd{\namerefon}, \cmd{\namerefoff}] + These could turn sectional title referencing on/off. As we now load + \Lpack{nameref} by default, the value is always on. Both macros now + just give a warning. +\item[\cmd{\theTitleReference}] + Could control the look of \cmd{\titleref}. Does nothing but issue a warning. +\item[\texttt{noetex} (class option)] We only loaded \Lpack{etex} for + formats before 2015. The package loading and the class option have + been removed. +\end{description} +\endgroup + + + + + + + +%#% extend %#% extstart include preface.tex %\chapter{Foreword} @@ -1314,8 +1451,8 @@ been answered. \svnidlong {$Ignore: $} -{$LastChangedDate: 2019-11-14 18:06:44 +0100 (Thu, 14 Nov 2019) $} -{$LastChangedRevision: 662 $} +{$LastChangedDate: 2023-08-06 15:24:34 +0200 (Sun, 06 Aug 2023) $} +{$LastChangedRevision: 767 $} {$LastChangedBy: daleif@math.au.dk $} \chapter{Introduction to the eighth edition} @@ -1755,7 +1892,7 @@ The following packages are automatically loaded by the class: \Lpack{array} \item \Lpack{dcolumn} \item \Lpack{delarray} - \item \Lpack{etex} +% \item \Lpack{etex} % \item \Lpack{ifetex} % \item \Lpack{ifxetex} % \item \Lpack{ifpdf} @@ -1763,6 +1900,11 @@ The following packages are automatically loaded by the class: \item \Lpack{iftex} \item \Lpack{tabularx} \item \Lpack{textcase}~(with~\texttt{overload}~option) + \item \Lpack{xpatch}~(it~autoloads~\Lpack{etoolbox}) + \item \Lpack{booktabs} + \item \Lpack{nameref} + \item \Lpack{mparhack}~(if~twocolumn) + \item \Lpack{memhfixc}~(if~\Lpack{hyperref}~is~loaded) \end{lineitems} \end{center} @@ -2054,12 +2196,15 @@ track of memoir related matters. \fancybreak{} -\textit{From the maintainer:} Most \Mname\ related questions -should go to \url{http://tex.stackexchange.com}, please remember to -tag them properly, that really helps locating the \Mname\ related -questions. If no-one comes up with an answer, you can also write me +Most \Mname\ related questions should go to +\url{http://tex.stackexchange.com}, please remember to tag them +properly, that really helps locating the \Mname\ related questions. If +no-one comes up with an answer, you can also write the maintainer directly via \texttt{daleif (at) math dot au dot dk}. +See also \emph{\titleref{cha:remarks-from-maint}} on +page~\pageref{cha:remarks-from-maint} for furher information from the +maintainer. %#% extend @@ -2907,8 +3052,8 @@ want to put \cmd{\raggedbottom} in the preamble\index{preamble}. \svnidlong {$Ignore: $} -{$LastChangedDate: 2020-03-25 19:00:55 +0100 (Wed, 25 Mar 2020) $} -{$LastChangedRevision: 686 $} +{$LastChangedDate: 2023-07-27 17:07:49 +0200 (Thu, 27 Jul 2023) $} +{$LastChangedRevision: 757 $} {$LastChangedBy: daleif@math.au.dk $} \chapter{Laying out the page} \label{chap:layingpage} @@ -3069,14 +3214,16 @@ same parameters on a verso page. \centering \oddpagelayoutfalse \drawstock -\caption{The \textsf{memoir} class page layout parameters for a verso page} \label{fig:evenstock} +\caption{The \textsf{memoir} class page layout parameters for a verso + (left hand) page} \label{fig:evenstock} \end{figure} \begin{figure} \centering %%%\drawmarginparsfalse \drawstock -\caption{The \textsf{memoir} class page layout parameters for a recto page} \label{fig:oddstock} +\caption{The \textsf{memoir} class page layout parameters for a recto + (right hand) page} \label{fig:oddstock} \end{figure} @@ -4933,7 +5080,7 @@ code below, and then the result was scaled down. \caption{Example of the nine \cs{setpageXX} macros for placing a trimmed page on the stock. These are all odd pages, under \Lopt{twoside}, even pages will have the left/right trims - reversed. The outer fra indicate the stock size. Inside the trim + reversed. The outer frames indicate the stock size. Inside the trim marks hint at where the page is positioned on the stock.} \label{fig:setpage} \end{figure} @@ -18333,8 +18480,8 @@ package can be used with the class, but there are a few caveats: \svnidlong {$Ignore: $} -{$LastChangedDate: 2018-09-06 15:05:23 +0200 (Thu, 06 Sep 2018) $} -{$LastChangedRevision: 612 $} +{$LastChangedDate: 2023-08-03 11:37:58 +0200 (Thu, 03 Aug 2023) $} +{$LastChangedRevision: 765 $} {$LastChangedBy: daleif@math.au.dk $} @@ -18379,8 +18526,14 @@ documentation of these packages. We have kept the documentation we had written for the manual (and updated it slightly), but refer to \cite{ARRAY}, \cite{DELARRAY}, \cite{TABULARX} and \cite{DCOLUMN} for the 100\% up to date documentation. + + As of Summer 2023: The \Lpack{booktabs} package is now loaded + instead of embedded. The code was an exact copy. \end{note} + + + \fancybreak{} @@ -19228,7 +19381,8 @@ Dy & 66 & 0.930 & & Pt & 78 & 1.160 \\ rules and wrote the \Lpack{booktabs} package~\cite{BOOKTABS} to provide better horizontal rules. Like many typographers, he abhors vertical rules. -The following is taken almost verbatim from the \Lpack{booktabs} package. +The following is taken almost verbatim from the \Lpack{booktabs} +package which as of Summer 2023 is automatically loaded (was embedded). \index{table!rule|(} @@ -20358,8 +20512,8 @@ illustrate these points. \svnidlong {$Ignore: $} -{$LastChangedDate: 2021-03-22 14:24:31 +0100 (Mon, 22 Mar 2021) $} -{$LastChangedRevision: 706 $} +{$LastChangedDate: 2023-07-27 17:07:49 +0200 (Thu, 27 Jul 2023) $} +{$LastChangedRevision: 757 $} {$LastChangedBy: daleif@math.au.dk $} \chapter{Page notes} \label{chap:mnotes} @@ -20596,6 +20750,12 @@ paragraph\index{footnotes!as a paragraph} after the \cmd{\paragraphfootnotes} declaration. The default style is used after the \cmd{\plainfootnotes} declaration. +\begin{caveat} + Following \cmd{\paragraphfootnotes} the footnotes should only be a + single paragraph each. +\end{caveat} + + The style can be changed at any time but there may be odd effects if the change is made in the middle of a page when there are footnotes before and after the declaration. You may @@ -20865,6 +21025,18 @@ The first line of a paragraph within a footnote is indented by The text in the footnote\index{footnote!text!font} is typeset using the \cmd{\foottextfont} font. The default is \cmd{\footnotesize}. +\leavevmode\Added{Summer 2023} In case you wanted the footnotes to be +typeset ragged right you can use +\begin{lcode} + \renewcommand\foottextfont{\footnotesize\raggedright} +\end{lcode} +Just be aware that (1) \cmd{\raggedright} has an effect on paragraph +settings, so things like \cmd{\parindent} might need to be reset to +\cmd{\footparindent} after \cmd{\raggedright}. (2) Column footnotes +are already in ragged right. (3) \cmd{\raggedright} should never be +used with paragraph footnotes. + + Altogether, the class specifies \begin{lcode} @@ -25946,9 +26118,9 @@ In increasing or decreasing order of probability (your choice) they are: \svnidlong {$Ignore: $} -{$LastChangedDate: 2013-04-24 17:14:15 +0200 (Wed, 24 Apr 2013) $} -{$LastChangedRevision: 442 $} -{$LastChangedBy: daleif $} +{$LastChangedDate: 2023-07-27 17:07:49 +0200 (Thu, 27 Jul 2023) $} +{$LastChangedRevision: 757 $} +{$LastChangedBy: daleif@math.au.dk $} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \chapter{Cross referencing} \label{chap:xref} @@ -26146,71 +26318,94 @@ The chapter \textit{\titleref{chap:bringhurst}} describes \ldots \end{lcode} The chapter \textit{\titleref{chap:bringhurst}} describes \ldots - There are two packages, \Lpack{nameref}~\cite{NAMEREF} and -\Lpack{titleref}~\cite{TITLEREF}, - that let you refer to things by name instead of number. - - Name references were added to the class as a consequence of adding -a second optional argument to the sectioning commands. I found -that this broke the \Lpack{nameref} package, and hence the -\Lpack{hyperref} package as well, so they had to be fixed. The change -also broke Donald Arseneau's \Lpack{titleref} package, and it turned out -that \Lpack{nameref} also clobbered \Lpack{titleref}. The class also -provides titles, like \cmd{\poemtitle}, that are not recognised by -either of the packages. From my viewpoint the most efficient -thing to do was to enable the class itself to provide name -referencing. +% There are two packages, \Lpack{nameref}~\cite{NAMEREF} and +% \Lpack{titleref}~\cite{TITLEREF}, that let you refer to things by name +% instead of number. Over time \Lpack{nameref} has turned out to be the +% industry standard. +\begin{Changed}[Summer 2023] + We are now autoloading the \Lpack{nameref} (see \cite{NAMEREF}) and + uses that for our implementation for \cmd{\titleref} (it is just an + alias for \cmd{\nameref}).\footnotemark +\end{Changed} +\footnotetext{This change fixes several incompatability issues we've + had with the old implementation of \cs{titleref}, which needed a + redefinition of \cs{label} to work. For the coming PDF-tagging + project such redefinitions of kernel macros like \cs{label} is + frowned upon. At their end the kernel team has updated \cmd{\label} + for even easier sopport for \Lpack{nameref}.} \begin{syntax} -\cmd{\titleref}\marg{labstr} \\ +\cmd{\titleref}\marg{labstr} \qquad +\cmd{\titleref*}\marg{labstr} \\ \end{syntax} \glossary(titleref)% {\cs{titleref}\marg{labstr}}% {Prints the (section, or other) title of the number associated - with \meta{labstr} from a \cs{label}.} + with \meta{labstr} from a \cs{label}.}% +\glossary(titleref*)% + {\cs{titleref*}\marg{labstr}}% + {Similar to \cs{titleref}, but if \protect\Lpack{hyperref} is loaded this + does \emph{not} add a hyperlink. Mapped onto \cs{nameref*}.} The macro \cmd{\titleref} is a class addition to the usual set of cross referencing commands. Instead of printing a number it typesets the title associated with the labelled number. This is really only useful if there \emph{is} a title, such as from a \cmd{\caption} or -\cmd{\section} command. For example, look at this code -and its result. +\cmd{\section} command. The starred version is for when +\Lpack{hyperref} is loaded, then the starred version does \emph{not} +create a hyperlink. If \Lpack{hyperref} is \emph{not} loaded, then the +two macros does the same thing. -\begin{egsource}{eg:sec:nxref:1} -Labels may be applied to: -\begin{enumerate} -\item Chapters, sections, etc. \label{sec:nxref:1} -... -\item Items in numbered lists, etc. \ldots \label{sec:nxref:5} -\end{enumerate} -Item \ref{sec:nxref:1} in section \textit{\titleref{sec:nxref}} -mentions sections while item \titleref{sec:nxref:5}, on page -\pageref{sec:nxref:5} in the same section, mentions things like -items in enumerated lists that should not be referenced -by \verb?\titleref?. -\end{egsource} -\begin{egresult}[Named references should be to titled elements]{eg:sec:nxref:1} -Labels may be applied to: -\begin{enumerate} -\item Chapters, sections, etc. \label{sec:nxref:1} -\item Captions -\item Legends -\item Poem titles -\item Items in numbered lists, etc. \ldots \label{sec:nxref:5} -\end{enumerate} -Item \ref{sec:nxref:1} in section \textit{\titleref{sec:nxref}} -mentions sections while item\index{reference!unexpected result} -\titleref{sec:nxref:5}, on page -\pageref{sec:nxref:5} in the same section, mentions things like -items in enumerated lists -that should not be referenced by \verb?\titleref?. -\end{egresult} - As the above example shows, you have to be a little careful in using -\cmd{\titleref}. -Generally speaking, \cmd{\titleref}\marg{key} produces the last named -thing before the \cmd{\label} that defines the \meta{key}. + +% For an example, look at this code and its result. +% \begin{egsource}{eg:sec:nxref:1} +% Labels may be applied to: +% \begin{enumerate} +% \item Chapters, sections, etc. \label{sec:nxref:1} +% ... +% \item Items in numbered lists, etc. \ldots \label{sec:nxref:5} +% \end{enumerate} +% Item \ref{sec:nxref:1} in section \textit{\titleref{sec:nxref}} +% mentions sections while item \titleref{sec:nxref:5}, on page +% \pageref{sec:nxref:5} in the same section, mentions things like +% items in enumerated lists that should not be referenced +% by \verb?\titleref?. +% \end{egsource} + +% \begin{egresult}[Named references should be to titled elements]{eg:sec:nxref:1} +% Labels may be applied to: +% \begin{enumerate} +% \item Chapters, sections, etc. \label{sec:nxref:1} +% \item Captions +% \item Legends +% \item Poem titles +% \item Items in numbered lists, etc. \ldots \label{sec:nxref:5} +% \end{enumerate} +% Item \ref{sec:nxref:1} in section \textit{\titleref{sec:nxref}} +% mentions sections while item\index{reference!unexpected result} +% \titleref{sec:nxref:5}, on page +% \pageref{sec:nxref:5} in the same section, mentions things like +% items in enumerated lists +% that should not be referenced by \verb?\titleref?. +% \end{egresult} + + +%\newpage + + +There can be three possibilities for the name of a sectional division; +the full name, the name in the \toc, and the name in the page header. +Aka +\begin{verbatim} +\section[toc][header]{title} +\end{verbatim} +Following the tradition used by \Lpack{nameref}\footnote{The old + \cmd{\titleref} implementation did the same.} we generally use the +title for the \toc{}. This corresponds to the default setting +\cmd{\tocnameref}. Issuing \cmd{\headnameref} we instead use the +header (if available) when preparing the title for the label. \begin{syntax} \cmd{\headnameref} \cmd{\tocnameref} \\ @@ -26220,90 +26415,27 @@ thing before the \cmd{\label} that defines the \meta{key}. {Use header title for sectional title references.} \glossary(tocnameref)% {\cs{tocnameref}}% - {Use \prtoc{} title for sectional title references.} -There can be three possibilities for the name of a sectional division; -the full name, the name in the \toc, and the name in the page header. -As far as \cmd{\titleref} is concerned it does not use the fullname, -and so the choice simplifies to the \toc{} or page header. Following -the declaration \cmd{\headnameref} it uses the page header name. -Following the opposite declaration \cmd{\tocnameref}, which is the -default, it uses the \toc\ name. + {Use \prtoc{} title for sectional title references (default).} -\Note{} Specifically with the \Lclass{memoir} class, -do not put a \cmd{\label} command inside an -argument to a \cmd{\chapter} or \cmd{\section} or \cmd{\caption}, etc., -command. Most likely it will either be ignored or referencing it will -produce incorrect values. This restriction does not apply to the standard -classes, but in any case I think it is good practice not to embed any -\cmd{\label} commands. +\fancybreak{} -\begin{syntax} -\cmd{\currenttitle} \\ -\end{syntax} -\glossary(currenttitle)% - {\cs{currenttitle}}% - {Gives the title of the last sectional division command.} - If you just want to refer to the current title you can do so with -\cmd{\currenttitle}. This acts as though there had been a label associated -with the title and then \cmd{\titleref} had been used to refer to that label. -For example: -\begin{egsource}{eg:sec:nxref:2} -This sentence in the section titled `\currenttitle' is an example of the -use of the command \verb?\currenttitle?. -\end{egsource} + +\Note{} In general it is \emph{not} recommended to place +\cmd{\label} inside an argument for a \cmd{\chapter}, \cmd{\section}, +\cmd{\caption}, etc., command. At that point there is not title data +available to use for the label. -\begin{egresult}[Current title]{eg:sec:nxref:2} -This sentence in the section titled `\currenttitle' is an example of the -use of the command \verb?\currenttitle?. -\end{egresult} +% \fancybreak{} -\begin{syntax} -\cmd{\theTitleReference}\marg{num}\marg{text} \\ -\end{syntax} -\glossary(theTitleReference)% - {\cs{theTitleReference}\marg{num}\marg{text}} - {Called by \cs{titleref} and \cs{currenttitle} with the number and - text of the title to print the values.} -Both \cmd{\titleref} and \cmd{\currenttitle} use the \cmd{\theTitleReference} -to typeset the title. This is called with two arguments --- -the number, \meta{num}, and the text, \meta{text}, of the title. The -default definition is: -\begin{lcode} -\newcommand{\theTitleReference}[2]{#2} -\end{lcode} -so that only the \meta{text} argument is printed. You could, for example, -change the definition to -\begin{lcode} -\renewcommand{\theTitleReference}[2]{#1\space \textit{#2}} -\end{lcode} -to print the number followed by the title in italics. If you do this, only use -\cmd{\titleref} for numbered titles, as a printed number for an -unnumbered title (a) makes no sense, and (b) will in any case be -incorrect. - The commands \cmd{\titleref}, \cmd{\theTitleReference} and -\cmd{\currenttitle} are direct equivalents of those in the \Lpack{titleref} -package~\cite{TITLEREF}. +\begin{Changed}[Summer 2023] + The following macros are no longer used. They will either issue a + warning or an error. Users are encouraged to remove them: + \cmd{\currenttitle}, \cmd{\namerefon} (is always on), + \cmd{\namerefoff} and \cmd{\theTitleReference}. +\end{Changed} + -\begin{syntax} -\cmd{\namerefon} \cmd{\namerefoff} \\ -\end{syntax} -\glossary(namerefon)% - {\cs{namerefon}}% - {Makes \cs{titleref} operative.} -\glossary(namerefoff)% - {\cs{namerefoff}}% - {Makes \cs{titleref} inoperative.} - - The capability for referencing by name has one potentially -unfortunate side effect --- it causes some arguments, such as that -for \cmd{\legend}, to be moving\index{moving argument} arguments -and hence any fragile\index{fragile} command -in the argument will need \cmd{\protect}ing. However, not every document -will require the use of \cmd{\titleref} and so the declaration -\cmd{\namerefoff} is provided to switch it off (the argument to -\cmd{\legend} would then not be moving). The declaration -\cmd{\namerefon}, which is the default, enables name referencing. \index{reference!by name|)} @@ -28158,8 +28290,8 @@ pdflatex memman \svnidlong {$Ignore: $} -{$LastChangedDate: 2021-03-22 18:32:04 +0100 (Mon, 22 Mar 2021) $} -{$LastChangedRevision: 707 $} +{$LastChangedDate: 2023-08-06 23:23:21 +0200 (Sun, 06 Aug 2023) $} +{$LastChangedRevision: 768 $} {$LastChangedBy: daleif@math.au.dk $} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -28635,7 +28767,7 @@ in other orthographies. The \cmd{\quarkmarks} declaration uses \cmd{\printtime}, so be careful if you change it. - Nicola Talbot's \Lpack{datetime} package~\cite{DATETIME} provides + Nicola Talbot's \Lpack{datetime2} package~\cite{DATETIME2} provides a much more comprehensive collection of styles for printing the time; also for dates. @@ -28953,6 +29085,23 @@ optional argument) only \meta{start-code} is useful --- \meta{macro} has any delimited arguments then \cmd{\patchcommand} cannot be used. +\begin{recommended} + Again \Lpack{xpatch} and \Lpack{etoolbox} (both loaded by \theclass) + are recommended. See the commands + \begin{syntax} + \cmd{\xpatchcmd}\marg{macro}\marg{search}\marg{replace}\marg{success}\marg{failure} \\ + \cmd{\xapptocmd}\marg{macro}\marg{code}\marg{success}\marg{failure} \\ + \cmd{\xpretocmd}\marg{macro}\marg{code}\marg{success}\marg{failure} \\ + \cmd{\patchcmd}\marg{macro}\marg{search}\marg{replace}\marg{success}\marg{failure} \\ + \cmd{\apptocmd}\marg{macro}\marg{code}\marg{success}\marg{failure} \\ + \cmd{\pretocmd}\marg{macro}\marg{code}\marg{success}\marg{failure} \\ + \end{syntax} + Here \cmd{\xpatchcmd} can patch some macros can \cmd{\patchcmd} + cannot. The combination of \verb|\(x)pretocmd| and + \verb|\(x)apptocmd| give the same result as \cmd{\patchcommand}. +\end{recommended} + + \section{String arguments} In the code for the class I have sometimes used macro arguments @@ -28996,6 +29145,9 @@ values. For example: } \end{lcode} +See also the tests available in \Lpack{etoolbox}. + + \section{Odd/even page checking} It is difficult to check robustly if the current page is odd or even @@ -38847,12 +38999,12 @@ access CTAN is available at \url{http://www.tug.org}. \CTANurl{/macros/latex/contrib/url/}) %%% keep -\bibitem[Ars01a]{TITLEREF} - Donald Arseneau. - \newblock \emph{The titleref package}. - \newblock April, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/titleref/}) +% \bibitem[Ars01a]{TITLEREF} +% Donald Arseneau. +% \newblock \emph{The titleref package}. +% \newblock April, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/titleref/}) %%% keep \bibitem[Ars01b]{CHAPTERBIB} @@ -38977,10 +39129,10 @@ access CTAN is available at \url{http://www.tug.org}. \CTANurl{/macros/latex/required/tools/}) %%% keep -\bibitem[Car98b]{LONGTABLE} +\bibitem[Car21]{LONGTABLE} David Carlisle. \newblock \emph{The longtable package}. - \newblock May, 1998. + \newblock May, 2021. \newblock (Available from CTAN via \CTANurl{/macros/latex/required/tools/}) @@ -39643,18 +39795,18 @@ Michael~E. Mortenson. \CTANurl{/fonts/mathpazo/}) %%% keep -\bibitem[Rahtz01]{NAMEREF} - Sebastian Rahtz. +\bibitem[Rahtz23a]{NAMEREF} + Sebastian Rahtz, Heiko Oberdiek, The \LaTeX3 Project. \newblock \emph{Section name references in LaTeX}. - \newblock January, 2001. + \newblock 2023. \newblock (Available from CTAN (the \texttt{nameref} package) via \CTANurl{/macros/latex/contrib/hyperref/}) %%% keep -\bibitem[Rahtz02]{HYPERREF} - Sebastian Rahtz. +\bibitem[Rahtz23b]{HYPERREF} + Sebastian Rahtz, Heiko Oberdiek, The \LaTeX3 Project. \newblock \emph{Hypertext marks in LaTeX}. - \newblock May, 2002. Now maintained and frequently updated by Heiko Oberdiek. + \newblock 2023. \newblock (Available from CTAN via \CTANurl{/macros/latex/contrib/hyperref/}) @@ -39766,12 +39918,12 @@ Martin Scharrer, \newblock Vrijie Universiteit, Amsterdam, 2004. %%% keep -\bibitem[Tal06]{DATETIME} +\bibitem[Tal21]{DATETIME2} Nicola L. C. Talbot. - \newblock \emph{datetime.sty: Formatting Current Date and Time}. - \newblock December, 2006. + \newblock \emph{datetime2: date and time formats}. + \newblock Martch, 2021. \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/datetime/}) + \CTANurl{/macros/latex/contrib/datetime2/}) %%% keep \bibitem[Thi98]{ORNAMENTAL} @@ -40118,11 +40270,11 @@ Peter Wilson (with the assistance of Lars Madsen). \newblock (Available from CTAN via \CTANurl{/macros/latex/contrib/memoir/}) -\bibitem[Wil19b]{MEMMAN} +\bibitem[Wil23]{MEMMAN} Peter Wilson (with the assistance of Lars Madsen). \newblock \emph{The Memoir Class for Configurable Typesetting --- User Guide} - \newblock November, 2019. Regularly updated. + \newblock November, 2023. Regularly updated. \newblock (Available from CTAN via \CTANurl{/macros/latex/contrib/memoir/}) @@ -40135,16 +40287,16 @@ Peter Wilson (with the assistance of Lars Madsen). %%% keep -\bibitem[Wil??]{RUMOUR} -Peter Wilson. -\newblock \emph{A Rumour of Humour: A scientist's commonplace book}. -\newblock To be published. +% \bibitem[Wil??]{RUMOUR} +% Peter Wilson. +% \newblock \emph{A Rumour of Humour: A scientist's commonplace book}. +% \newblock To be published. -\bibitem[Wri19]{SIUNITX} +\bibitem[Wri23]{SIUNITX} Joseph Wright. \newblock \emph{Siunitx — A comprehensive (SI) units package} - \newblock October, 2019. + \newblock October, 2023. \newblock (Available from CTAN via \CTANurl{/macros/latex/contrib/siunitx}) diff --git a/Master/texmf-dist/doc/latex/memoir/memsty.sty b/Master/texmf-dist/doc/latex/memoir/memsty.sty index dfe40dc0b2b..6f37b8e5698 100644 --- a/Master/texmf-dist/doc/latex/memoir/memsty.sty +++ b/Master/texmf-dist/doc/latex/memoir/memsty.sty @@ -23,6 +23,7 @@ \providecommand{\PWnote}[2]{} \newcommand\Added[1]{\sidepar{\tiny Added #1}} +\newcommand\ToBeRemoved[1]{\sidepar{\tiny To be removed #1}} %%%%%%%%%%%%%%%%%%% kill scale change warning in layouts \renewcommand*{\setlayoutscale}[1]{\setlength{\l@youtunitlength}{1pt} @@ -1133,9 +1134,9 @@ it to use the new width for the margin par} } %\newenvironment{caveat}{\par\medskip\noindent\textbf{\textit{Caveat.}}\enskip\itshape}{\par\medskip} -\newenvironment{caveat}{\begin{leftbar}\noindent\textbf{\textit{Caveat.}}\enskip}{\end{leftbar}} +\newenvironment{caveat}[1][]{\begin{leftbar}\noindent\textbf{\textit{Caveat.}}\@ifmtarg{#1}{}{\Added{#1}}\enskip}{\end{leftbar}} %\newenvironment{Changed}{\par\medskip\noindent\textbf{\textit{Changed.}}\enskip}{\par\medskip} -\newenvironment{Changed}{\begin{leftbar}\noindent\textbf{\textit{Changed.}}\enskip}{\end{leftbar}} +\newenvironment{Changed}[1][]{\begin{leftbar}\noindent\textbf{\textit{Changed.}\@ifmtarg{#1}{}{\Added{#1}}}\enskip}{\end{leftbar}} \newenvironment{note}{\par\medskip\noindent\textbf{\textit{Note.}}\enskip\itshape}{\par\medskip} \newenvironment{note*}[1]{\par\medskip\noindent\textbf{\textit{#1.}}\enskip\itshape}{\par\medskip} \newenvironment{hint}{\par\medskip\noindent\textbf{\textit{Hint.}}\enskip\itshape}{\par\medskip} |