diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/memoir/memoir.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/memoir/memoir.dtx | 173 |
1 files changed, 38 insertions, 135 deletions
diff --git a/Master/texmf-dist/source/latex/memoir/memoir.dtx b/Master/texmf-dist/source/latex/memoir/memoir.dtx index 123d6371c1a..f63ba259abf 100644 --- a/Master/texmf-dist/source/latex/memoir/memoir.dtx +++ b/Master/texmf-dist/source/latex/memoir/memoir.dtx @@ -8,19 +8,19 @@ % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either -% version 1.3 of this license or (at your option) any +% version 1.3c of this license or (at your option) any % later version. % The latest version of the license is in % http://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of -% LaTeX version 2003/06/01 or later. +% and version 1.3c or later is part of all distributions of +% LaTeX version 2008/05/04 or later. % % This work has the LPPL maintenance status "maintained". % % This work consists of the files listed in the README file. % % \fi -% \CheckSum{31219} +% \CheckSum{30999} % % \changes{v0.1}{2001/05/20}{First public alpha release} % \changes{v0.2}{2001/06/03}{First beta release} @@ -125,7 +125,8 @@ % \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} -% +% \changes{v3.7o}{2021/03/23}{Maintenance and a provide for the kernel} +% % \def\dtxfile{memoir.dtx} % % \def\fileversion{v0.1} \def\filedate{2001/05/20} @@ -187,6 +188,7 @@ % \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} +% \def\fileversion{v3.7o} \def\filedate{2021/03/23} % \title{The LaTeX \Lpack{memoir} class for configurable book % typesetting: Source code\thanks{This % file (\texttt{\dtxfile}) has version number \fileversion, last revised @@ -417,11 +419,11 @@ % Announce the name, option files and version for LaTeX2e files: % \begin{macrocode} %<class>\ProvidesClass{memoir}% -%<class> [2020/10/04 v3.7n configurable book, report, article document class] +%<class> [2021/03/23 v3.7o 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.7n, 2020/10/04} +%<class>\newcommand\memversion{v3.7o, 2021/03/23} %<9pt>\ProvidesFile{mem9.clo}% %<9pt> [2008/01/30 v0.4 memoir class 9pt size option] %<10pt>\ProvidesFile{mem10.clo}% @@ -9668,8 +9670,8 @@ % non-zero \cs{parskip} to not interfer with the placement of the title} % \begin{macrocode} \def\@makechapterhead#1{% - \chapterheadstart% \vspace*{50\p@}% - {%\parindent \z@ \raggedright \normalfont + \chapterheadstart% + {% \parskip \z@ \parindent \z@ \memRTLraggedright \normalfont % \end{macrocode} @@ -9677,7 +9679,7 @@ % \begin{macrocode} \ifm@m@And \printchaptername \chapternamenum \printchapternum - \afterchapternum % \par\nobreak \vskip 20\p@ + \afterchapternum % \else \printchapternonum \fi @@ -9685,8 +9687,8 @@ % Typeset the title. % \begin{macrocode} \interlinepenalty\@M - \printchaptertitle{#1} % \Huge \bfseries #1 - \afterchaptertitle % \par\nobreak \vskip 40\p@ + \printchaptertitle{#1} % + \afterchaptertitle % }} % \end{macrocode} @@ -9838,7 +9840,7 @@ % \begin{macrocode} \def\@makeschapterhead#1{% \chapterheadstart - {%\parindent \z@ \raggedright \normalfont + {% \parskip \z@% \parindent \z@ \memRTLraggedright \normalfont \printchapternonum @@ -9966,9 +9968,7 @@ % \begin{macrocode} \newcommand*{\reparticle}{% \chapterstyle{reparticle} -%%% \setsecheadstyle{\normalfont\large\bfseries\raggedright} \setsecheadstyle{\normalfont\large\bfseries\memRTLraggedright}% -%%% \setsubsecheadstyle{\normalfont\bfseries\raggedright} \setsubsecheadstyle{\normalfont\bfseries\memRTLraggedright}% } @@ -10072,7 +10072,6 @@ \renewcommand*{\printchapternum}{} \renewcommand*{\afterchapternum}{} \renewcommand*{\printchaptertitle}[1]{% - %%% \raggedright\Large\scshape\MakeLowercase{##1}} \memRTLraggedright\Large\scshape\MakeTextLowercase{##1}} \renewcommand*{\afterchaptertitle}{% \vskip\onelineskip \hrule\vskip\onelineskip}} @@ -10383,7 +10382,6 @@ \setlength{\midchapskip}{\textwidth}% \rightblock \addtolength{\midchapskip}{-\beforechapskip} \renewcommand*{\chapterheadstart}{\vspace*{2\baselineskip}} -%%% \renewcommand*{\chaptitlefont}{\huge\rmfamily\raggedright} \renewcommand*{\chaptitlefont}{\huge\rmfamily\memRTLraggedright} \renewcommand*{\chapnumfont}{\chaptitlefont} \renewcommand*{\printchaptername}{} @@ -10580,7 +10578,6 @@ \renewcommand*{\chapnumfont}{\normalfont\huge\bfseries}% \renewcommand*{\printchapternum}{\chapnumfont \thechapter\quad}% \renewcommand*{\afterchapternum}{}% -%%% \renewcommand*{\chaptitlefont}{\chapnumfont\raggedright}} \renewcommand*{\chaptitlefont}{\chapnumfont\memRTLraggedright}} % \end{macrocode} @@ -10935,7 +10932,6 @@ \setaftersecskip{2.3ex \@plus .2ex} \newcommand{\secheadstyle}{} \newcommand{\setsecheadstyle}[1]{\renewcommand{\secheadstyle}{#1}} -%%% \setsecheadstyle{\Large\bfseries\raggedright} \setsecheadstyle{\Large\bfseries\memRTLraggedright} % \end{macrocode} @@ -10997,7 +10993,6 @@ \setaftersubsecskip{1.5ex \@plus .2ex} \newcommand{\subsecheadstyle}{} \newcommand{\setsubsecheadstyle}[1]{\renewcommand{\subsecheadstyle}{#1}} -%%% \setsubsecheadstyle{\large\bfseries\raggedright} \setsubsecheadstyle{\large\bfseries\memRTLraggedright} % \end{macrocode} @@ -11052,20 +11047,19 @@ \newlength{\subsubsecindent} \newcommand{\setsubsubsecindent}[1]{% \setlength{\subsubsecindent}{#1}} - \setsubsubsecindent{\z@} +\setsubsubsecindent{\z@} \newskip\beforesubsubsecskip \newcommand{\setbeforesubsubsecskip}[1]{% \setlength{\beforesubsubsecskip}{#1}} - \setbeforesubsubsecskip{-3.25ex \@plus -1ex \@minus -.2ex} +\setbeforesubsubsecskip{-3.25ex \@plus -1ex \@minus -.2ex} \newskip\aftersubsubsecskip \newcommand{\setaftersubsubsecskip}[1]{% \setlength{\aftersubsubsecskip}{#1}} - \setaftersubsubsecskip{1.5ex \@plus .2ex} +\setaftersubsubsecskip{1.5ex \@plus .2ex} \newcommand{\subsubsecheadstyle}{} \newcommand{\setsubsubsecheadstyle}[1]{% \renewcommand{\subsubsecheadstyle}{#1}} -%%% \setsubsubsecheadstyle{\normalsize\bfseries\raggedright} - \setsubsubsecheadstyle{\normalsize\bfseries\memRTLraggedright} +\setsubsubsecheadstyle{\normalsize\bfseries\memRTLraggedright} % \end{macrocode} % \end{macro} @@ -11571,7 +11565,6 @@ \setsecindent{\z@}% \setbeforesecskip{-3.5ex \@plus -1ex \@minus -.2ex}% \setaftersecskip{2.3ex \@plus .2ex}% -%%% \setsecheadstyle{\Large\bfseries\raggedright}% \setsecheadstyle{\Large\bfseries\memRTLraggedright}% % \end{macrocode} % Default \cs{subsection} style @@ -11582,7 +11575,6 @@ \setsubsecindent{\z@}% \setbeforesubsecskip{-3.25ex \@plus -1ex \@minus -.2ex}% \setaftersubsecskip{1.5ex \@plus .2ex}% -%%% \setsubsecheadstyle{\large\bfseries\raggedright}% \setsubsecheadstyle{\large\bfseries\memRTLraggedright}% % \end{macrocode} % Default \cs{subsubsection} style @@ -11593,7 +11585,6 @@ \setsubsubsecindent{\z@}% \setbeforesubsubsecskip{-3.25ex \@plus -1ex \@minus -.2ex}% \setaftersubsubsecskip{1.5ex \@plus .2ex}% -%%% \setsubsubsecheadstyle{\normalsize\bfseries\raggedright}% \setsubsubsecheadstyle{\normalsize\bfseries\memRTLraggedright}% % \end{macrocode} % Default \cs{paragraph} style @@ -11656,19 +11647,16 @@ \setbeforesecskip{-1.333\onelineskip \@plus -0.5\onelineskip \@minus -.5\onelineskip}% \setaftersecskip{0.667\onelineskip \@plus 0.1\onelineskip}% -%%% \setsecheadstyle{\normalfont\scshape\raggedright}% \setsecheadstyle{\normalfont\scshape\memRTLraggedright}% % subsection \setbeforesubsecskip{-0.667\onelineskip \@plus -0.25\onelineskip \@minus -0.25\onelineskip}% \setaftersubsecskip{0.333\onelineskip \@plus 0.1\onelineskip}% -%%% \setsubsecheadstyle{\normalfont\bfseries\raggedright}% \setsubsecheadstyle{\normalfont\bfseries\memRTLraggedright}% % subsubsection \setbeforesubsubsecskip{-0.667\onelineskip \@plus -0.25\onelineskip \@minus -0.25\onelineskip}% \setaftersubsubsecskip{0.333\onelineskip \@plus 0.1\onelineskip}% -%%% \setsubsubsecheadstyle{\normalfont\normalsize\itshape\raggedright}% \setsubsubsecheadstyle{\normalfont\normalsize\itshape\memRTLraggedright}% % paragraph \setbeforeparaskip{1.0\onelineskip @@ -11697,13 +11685,11 @@ \setbeforesecskip{-1\onelineskip \@plus -0.5\onelineskip \@minus -.5\onelineskip}% \setaftersecskip{1\onelineskip \@plus 0.1\onelineskip}% -%%% \setsecheadstyle{\normalfont\raggedright\scshape\MakeLowercase}% \setsecheadstyle{\normalfont\memRTLraggedright\scshape\MakeTextLowercase}% % subsection \setbeforesubsecskip{-1.0\onelineskip \@plus -0.25\onelineskip \@minus -0.25\onelineskip}% \setaftersubsecskip{1.0\onelineskip \@plus 0.1\onelineskip}% -%%% \setsubsecheadstyle{\sethangfrom{\noindent ####1}\normalfont\itshape\raggedright}% \setsubsecheadstyle{\sethangfrom{\noindent ####1}\normalfont\itshape\memRTLraggedright}% % subsubsection \setbeforesubsubsecskip{1.0\onelineskip @@ -11813,17 +11799,14 @@ % section \setbeforesecskip{-3.5ex \@plus -1ex \@minus -.2ex}% \setaftersecskip{2.3ex \@plus .2ex}% -%%% \setsecheadstyle{\normalfont\Large\sffamily\bfseries\raggedright}% \setsecheadstyle{\normalfont\Large\sffamily\bfseries\memRTLraggedright}% % subsection \setbeforesubsecskip{-3.25ex \@plus -1ex \@minus -.2ex}% \setaftersubsecskip{1.5ex \@plus .2ex}% -%%% \setsubsecheadstyle{\normalfont\large\sffamily\bfseries\raggedright}% \setsubsecheadstyle{\normalfont\large\sffamily\bfseries\memRTLraggedright}% % subsubsection \setbeforesubsubsecskip{-3.25ex \@plus -1ex \@minus -.2ex}% \setaftersubsubsecskip{1.5ex \@plus .2ex}% -%%% \setsubsubsecheadstyle{\normalfont\normalsize\sffamily\bfseries\raggedright}% \setsubsubsecheadstyle{\normalfont\normalsize\sffamily\bfseries\memRTLraggedright}% % paragraph \setbeforeparaskip{3.25ex \@plus 1ex \@minus .2ex}% @@ -11889,19 +11872,16 @@ \setbeforesecskip{-2\onelineskip \@plus -0.5\onelineskip \@minus -.5\onelineskip}% \setaftersecskip{1\onelineskip \@plus 0.1\onelineskip}% -%%% \setsecheadstyle{\normalfont\raggedright\MakeUppercase}% \setsecheadstyle{\normalfont\memRTLraggedright\MakeTextUppercase}% % subsection \setbeforesubsecskip{-1.2\onelineskip \@plus -0.25\onelineskip \@minus -0.25\onelineskip}% \setaftersubsecskip{0.8\onelineskip \@plus 0.1\onelineskip}% -%%% \setsubsecheadstyle{\normalfont\Large\itshape\raggedright}% \setsubsecheadstyle{\normalfont\Large\itshape\memRTLraggedright}% % subsubsection \setbeforesubsubsecskip{-0.667\onelineskip \@plus -0.25\onelineskip \@minus -0.25\onelineskip}% \setaftersubsubsecskip{0.333\onelineskip \@plus 0.1\onelineskip}% -%%% \setsubsubsecheadstyle{\normalfont\normalsize\bfseries\raggedright}% \setsubsubsecheadstyle{\normalfont\normalsize\bfseries\memRTLraggedright}% % paragraph \setbeforeparaskip{1.0\onelineskip @@ -11930,19 +11910,16 @@ \setbeforesecskip{-1.333\onelineskip \@plus -0.5\onelineskip \@minus -.5\onelineskip}% \setaftersecskip{0.667\onelineskip \@plus 0.1\onelineskip}% -%%% \setsecheadstyle{\normalfont\raggedright\MakeUppercase}% \setsecheadstyle{\normalfont\memRTLraggedright\MakeTextUppercase}% % subsection \setbeforesubsecskip{-0.667\onelineskip \@plus -0.25\onelineskip \@minus -0.25\onelineskip}% \setaftersubsecskip{0.333\onelineskip \@plus 0.1\onelineskip}% -%%% \setsubsecheadstyle{\normalfont\Large\itshape\raggedright}% \setsubsecheadstyle{\normalfont\Large\itshape\memRTLraggedright}% % subsubsection \setbeforesubsubsecskip{-0.667\onelineskip \@plus -0.25\onelineskip \@minus -0.25\onelineskip}% \setaftersubsubsecskip{0.333\onelineskip \@plus 0.1\onelineskip}% -%%% \setsubsubsecheadstyle{\normalfont\normalsize\raggedright\scshape\MakeLowercase}% \setsubsubsecheadstyle{\normalfont\normalsize\memRTLraggedright\scshape\MakeTextLowercase}% % paragraph \setbeforeparaskip{1.0\onelineskip @@ -12547,9 +12524,7 @@ % \begin{macrocode} \newcommand*{\raggedrightthenleft}{% \parindent \z@ -%%% \leftskip \z@ \@plus 1fill \memRTLleftskip \z@ \@plus 1fill -%%% \rightskip\@flushglue \memRTLrightskip\@flushglue \parfillskip \z@ \everypar{\hskip \z@ \@plus -1fill}} @@ -21421,7 +21396,6 @@ % margin captions. % \begin{macrocode} \newcommand*{\sidecapstyle}{% -%%% \captionnamefont{\bfseries}% \ifscapmargleft \captionstyle{\raggedleft}% \else @@ -27178,7 +27152,9 @@ % from \file{ltfloat.dtx}. % \changes{v1.0}{2001/10/30}{Added \cs{footref}} % \begin{macrocode} -\newcommand{\footref}[1]{% +% \changes{v3.7o}{2021/02/24}{in 2021/05 \cs{footref} will be in the +% kernel, thus we make it provide} +\providecommand{\footref}[1]{% \begingroup \unrestored@protected@xdef\@thefnmark{\ref{#1}}% \endgroup @@ -36587,7 +36563,15 @@ \EmulatedPackage{index}[2008/07/23] \EmulatedPackage{makeidx}[2008/07/23] \EmulatedPackage{moreverb}[2008/07/23] -\EmulatedPackage{mparhack}[2008/07/23] +% \end{macrocode} +% \changes{v3.7o}{2021/03/22}{removed mparhack emulation, as we don't +% emulate all of it, especially not the fix for \cs{if@firstcolumn}, +% instead load it if twocolumn } +% \begin{macrocode} +\if@twocolumn + \RequirePackage{mparhack} +\fi + %\EmulatedPackage{mparhack}[2008/07/23] \EmulatedPackage{needspace}[2008/07/23] \EmulatedPackage{newfile}[2008/07/23] \EmulatedPackage{nextpage}[2008/07/23] @@ -36615,95 +36599,14 @@ % % \subsection{Interaction with the \Lpack{caption} package} % -% Although the author of the \Lpack{caption} package has, over the -% years, made it work with many other classes he has not extended it -% to either recognise or work with the memoir class. Some authors want -% to use the \Lpack{caption} package, hence\ldots -% -% The easiest manner in which to make the \Lpack{caption} package to -% work with the class, is to restore the kernel defaults for the main -% captioning macros. -% -% Kill changes to the caption macros when the \Lpack{caption} package -% is used. The \Lpack{caption} package checks the definitions of the -% \cs{@makecaption}, \cs{caption} and \cs{@caption} macros. These need -% to be identical to the definitions in the standard classes for the -% package to disbelieve that the \Lpack{memoir} class is being used. +% As of 2020, whenever the \Lpack{caption} package is loaded with the +% memoir class, it will map relevant memoir captioning macros onto the +% corresponding features provided by \Lpack{caption}. As this is now +% done automatically, we have removed the code that reset \cs{caption} +% to something more friendly to \Lpack{caption} in earler versions of +% the class. % -% \begin{macro}{\@makecaption} -% \begin{macro}{\caption} -% \begin{macro}{\@caption} -% \changes{v1.61803}{2008/01/30}{Killed memoir's captioning when the caption -% package is used (mempatch v4.9).} -% \changes{v3.6k}{2012/05/04}{Changed the warning text to be more -% informative.} -% \changes{v3.7i}{2018/12/19}{Users still get spooked by the warning, -% tried to rewrite it in a better manner} -% \begin{macrocode} -%%% revert changes to captioning macros if the caption package is used. -\AtBeginPackage{caption}{ - %\ClassWarningNoLine{memoir}{% - \ClassInfo{memoir}{% - For the caption package to function properly with memoir, - we will now reset \string\caption\space and friends to - kernel defaults and then let the^^Jcaption package take over. - Remember: all caption configuration now goes via the caption - package interface, not the interface from the memoir class. - } - - \long\def\@makecaption##1##2{% - \vskip\abovecaptionskip - \sbox\@tempboxa{##1: ##2}% - \ifdim \wd\@tempboxa >\hsize - ##1: ##2\par - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \vskip\belowcaptionskip} - - \def\caption{% - \ifx\@captype\@undefined - \@latex@error{\noexpand\caption outside float}\@ehd - \expandafter\@gobble - \else - \refstepcounter\@captype - \expandafter\@firstofone - \fi - {\@dblarg{\@caption\@captype}}% - } - - \long\def\@caption##1[##2]##3{% - \par - \addcontentsline{\csname ext@##1\endcsname}{##1}% - {\protect\numberline{\csname the##1\endcsname}{\ignorespaces ##2}}% - \begingroup - \@parboxrestore - \if@minipage - \@setminipage - \fi - \normalsize - \@makecaption{\csname fnum@##1\endcsname}{\ignorespaces ##3}\par - \endgroup} - -% \end{macrocode} -% By request of the \Lpack{caption} package author (Axel Sommerfeldt), -% we also restore the caption skips to the kernel defaults. The class -% sets both to be 0.5\cs{onelineskip}, which may cause confusion when -% using certain features in the \Lpack{caption} package. -% \changes{v3.6k}{2012/05/04}{Added \cs{captionXskip} reset to default -% values.} -% \begin{macrocode} - - \setlength\abovecaptionskip{10\p@} - \setlength\belowcaptionskip{0\p@} - -} % end \AtBeginPackage - -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} +% \changes{v3.7o}{2021/03/15}{removed code to reset for the caption package} % % \subsection{Interaction with the \Lpack{float} package} % |