summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-04-23 21:16:25 +0000
committerKarl Berry <karl@freefriends.org>2015-04-23 21:16:25 +0000
commit82e26f27acac86b76d864486d11071bf51cd1e1a (patch)
tree43fdbbe9b10c395d9484b5f82e8a3dfbdac7e904 /Master/texmf-dist
parent615674231eb093c3a68166dfda89313a6ed1b3c8 (diff)
memoir (23apr15)
git-svn-id: svn://tug.org/texlive/trunk@37021 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/latex/memoir/README25
-rw-r--r--Master/texmf-dist/doc/latex/memoir/memman.pdfbin2732722 -> 2732108 bytes
-rw-r--r--Master/texmf-dist/doc/latex/memoir/memman.tex177
-rw-r--r--Master/texmf-dist/doc/latex/memoir/memsty.sty6
-rw-r--r--Master/texmf-dist/source/latex/memoir/memoir.dtx304
-rw-r--r--Master/texmf-dist/tex/latex/memoir/memoir.cls192
6 files changed, 524 insertions, 180 deletions
diff --git a/Master/texmf-dist/doc/latex/memoir/README b/Master/texmf-dist/doc/latex/memoir/README
index 9373d859e8e..c056617a96a 100644
--- a/Master/texmf-dist/doc/latex/memoir/README
+++ b/Master/texmf-dist/doc/latex/memoir/README
@@ -36,6 +36,31 @@ o Backmatter:
Bibliography, indexes ~ 50 pages
+
+Changed (2015/04/23)
+
+o memoir v3.7d
+
+-- \end@dblfloat code reversion now only happens if fixltx2e has a
+ release date older than 2014/01/01. Newer versions of fixltx2e has
+ no problems with memoir
+-- added \feetatbottom. Use it to force footnotes to be added
+ from the bottom up when in a \raggedbottom context. Has no effect
+ under \flushbottom
+-- \twocolumnfootnotes, \threecolumnfootnotes, \paragraphfootnotes now
+ use \skip\footins<series>
+-- added \setfootins, it will set \skip\footins and its minipage
+ counterpart, plus the \...v@r versions used by e.g.,
+ \twocolumnfootnotes
+-- fixed a bug in page styles whereby one could not apply rule
+ prefixes to a copied style.
+-- Fixed typo in manual about \newleadpage,
+ reported by Werner Grundlingh
+-- updated our version of \@doclearpage to match fixltx2e v1.1s (which
+ will also be in the next ltx kernel). This will change float
+ placement in a twocolumn doc (for the better)
+
+
Changed (2015/03/05)
o memoir v3.7c
diff --git a/Master/texmf-dist/doc/latex/memoir/memman.pdf b/Master/texmf-dist/doc/latex/memoir/memman.pdf
index 2eac2443afb..0758ee99f16 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 10944f6ac0d..45cb6ded596 100644
--- a/Master/texmf-dist/doc/latex/memoir/memman.tex
+++ b/Master/texmf-dist/doc/latex/memoir/memman.tex
@@ -125,18 +125,20 @@
layout=marginnote
}
+
\begin{document}
+
%#% extstart input intro.tex
-\tightlists
-%\firmlists
+%\tightlists
+\firmlists
\midsloppy
\raggedbottom
\chapterstyle{demo3}
@@ -1248,8 +1250,8 @@ been answered.
\svnidlong
{$Ignore: $}
-{$LastChangedDate: 2015-03-05 18:49:59 +0100 (Thu, 05 Mar 2015) $}
-{$LastChangedRevision: 516 $}
+{$LastChangedDate: 2015-04-22 17:17:51 +0200 (Wed, 22 Apr 2015) $}
+{$LastChangedRevision: 527 $}
{$LastChangedBy: daleif $}
\chapter{Introduction to the eighth edition}
@@ -1753,8 +1755,6 @@ For referential purposes, arguments are denoted by \meta{arg} \\
\end{syntax}
-
-
\section{Acknowledgements}
Many people have contributed to the \Lclass{memoir} class and this manual
@@ -1954,6 +1954,8 @@ can also write me directly via \texttt{daleif (at) math dot au dot dk}.
%#% extend
+
+
%#% extstart include terminology.tex
\svnidlong
@@ -2164,8 +2166,8 @@ an em, often a quad is 1em.
\svnidlong
{$Ignore: $}
-{$LastChangedDate: 2014-11-05 16:28:11 +0100 (Wed, 05 Nov 2014) $}
-{$LastChangedRevision: 501 $}
+{$LastChangedDate: 2015-04-23 14:33:14 +0200 (Thu, 23 Apr 2015) $}
+{$LastChangedRevision: 528 $}
{$LastChangedBy: daleif $}
\chapter{Starting off} \label{chap:starting}
@@ -2537,9 +2539,11 @@ definitions within the class code).
file containing all the size and space specifications for your chosen font
size, and also tell \Mname\ the name of the file. \emph{Before} the
\cmd{\documentclass} command define two macros, \cmd{\anyptfilebase} and
-\cmd{\anyptsize} like: \\
-\verb?\newcommand*{\anyptfilebase}?\marg{chars}
-\verb?\newcommand*{\anyptsize}?\marg{num} \\
+\cmd{\anyptsize} like:
+\begin{lcode}
+ \newcommand*{\anyptfilebase}\marg{chars}
+ \newcommand*{\anyptsize}\marg{num}
+\end{lcode}
\glossary(anyptsize)%
{\cs{anyptsize}}%
{Second part (the pointsize) of the name the \texttt{clo} file for the
@@ -2772,8 +2776,8 @@ want to put \cmd{\raggedbottom} in the preamble\index{preamble}.
\svnidlong
{$Ignore: $}
-{$LastChangedDate: 2015-02-24 12:51:39 +0100 (Tue, 24 Feb 2015) $}
-{$LastChangedRevision: 508 $}
+{$LastChangedDate: 2015-04-22 13:01:10 +0200 (Wed, 22 Apr 2015) $}
+{$LastChangedRevision: 524 $}
{$LastChangedBy: daleif $}
\chapter{Laying out the page} \label{chap:layingpage}
@@ -2833,8 +2837,36 @@ On the other hand, if, say, you are designing a document, that is to
be printed on one type of paper (the stock), and then trimmed to
another, please read on.
+% Before we start let use summarize what laying out the page
+% involves\fxnote{where did the spacings around enumerate go? Had to add
+% a blank line}
+
+% \begin{enumerate}[(a)]
+% \item Figure out the stock size of your document and whether or not
+% you need to trim the stock to get the desired paper size.
+
+% Most people just specify the stick and paper size via a class option
+% like \Lopt{a4paper}. Thus you can proceed to
+% section~\ref{sec:typeblock2}.
+% \item Specify the text block, basically the margins.
+
+% The class provide two interfaces for this: (1) Set the margins
+% around the text block, thereby defining the text block, and (2),
+% specify the size of the text block directly and then place it on the
+% page.
+% \item Specify auxiliary layout, like placement of headers, footers and
+% margin notes.
+% \item At the end (\emph{very important}) we ask the class to put
+% everything together and check that they make sense.
+% \end{enumerate}
+
+
+
+
+
\section{Stock material}
+\label{sec:stock-material}
Printing is the act of laying symbols onto a piece of
stock\index{stock} material. Some print on T-shirts by a process
@@ -2861,6 +2893,7 @@ the norm.
\section{The page}
+\label{sec:page}
The class assumes that there will be only a single page on a side of
each piece of stock\index{stock}; two sides means that there can be two
@@ -3864,9 +3897,31 @@ is set to \meta{push}.
We may add other auto adjusting features to future \theclass\ releases.
\end{note}
-
\index{marginalia|)} %|
+
+\section{Other}
+\label{sec:other}
+
+
+\begin{syntax}
+\cmd{\setfootins}\marg{length for normal}\marg{length for minipage} \\
+\end{syntax}
+% \glossary(setfootins)%
+% {\cs{setfootins}\marg{length for normal}\marg{length for minipage}}%
+% {Sets \cs{skip}\cs{footins} and its minipage counterpart.}
+
+\noindent
+When footnotes are added to the text block they are added
+\cs{skip}\cs{footins} below the text. Since this is a skip it usually
+needs special syntax to change it. Instead we have provided an
+interface to set it.\footnote{This interface also sets the equivalent
+ lengths used when \cs{twocolumnfootnotes} and friends are being
+ used.} The default sizes are \cs{bigskipamount}.
+
+
+
+
\section{Putting it together}
The page layout parameters\index{page layout!class parameters}
@@ -4630,7 +4685,6 @@ effect.
%#% extend
-
%#% extstart include text-and-fonts.tex
\svnidlong
@@ -6797,7 +6851,6 @@ and thanks notes are meant to be different.
\index{thanks!styling|)}
%#% extend
-
%#% extstart include abstracts.tex
\svnidlong
@@ -7073,8 +7126,8 @@ optional argument of the \cmd{\twocolumn} command. In fact,
\svnidlong
{$Ignore: $}
-{$LastChangedDate: 2015-02-23 14:55:22 +0100 (Mon, 23 Feb 2015) $}
-{$LastChangedRevision: 506 $}
+{$LastChangedDate: 2015-04-22 15:51:45 +0200 (Wed, 22 Apr 2015) $}
+{$LastChangedRevision: 526 $}
{$LastChangedBy: daleif $}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -7897,19 +7950,29 @@ titling. Something like this may do the trick
\begin{syntax}
\cmd{\newleadpage}\oarg{page-style}\marg{cmdname}\marg{title} \\
-\cmd{\newleadpage*}\oarg{page-style}\marg{cmdname}\marg{title} \\
+%\cmd{\newleadpage*}\oarg{page-style}\marg{cmdname}\marg{title} \\
\cmd{\renewleadpage}\oarg{page-style}\marg{cmdname}\marg{title} \\
-\cmd{\renewleadpage*}\oarg{page-style}\marg{cmdname}\marg{title} \\
-\end{syntax}
-\cmd{\newleadpage} and associates are variants of the \cmd{\newcommand}
-and companions.\footnote{The suggestions for these came from
+%\cmd{\renewleadpage*}\oarg{page-style}\marg{cmdname}\marg{title} \\
+\end{syntax}
+\glossary(newleadpage)%
+{\cs{newleadpage}\oarg{page-style}\marg{cmdname}\marg{title}}%
+{Creates a macro to that when used will generate a sort of title
+page. Very similar to \cs{appendixpage}.}
+\glossary(renewleadpage)%
+{\cs{renewleadpage}\oarg{page-style}\marg{cmdname}\marg{title}}%
+{Redefines an existing new lead page macro.}
+The \cmd{\newleadpage}\footnote{The suggestions for this came from
Danie Els\index{Els, Danie} and Lars Madsen\index{Madsen, Lars}.}
-The \cmd{\newleadpage} command defines a macro \verb?\cmdname? that when called
+command defines a macro \verb?\cmdname? that when called
will typeset an Appendixpage-like page (see \Sref{sec:appendices}) with a
-title \meta{title}
-using the \meta{page-style} as the pagestyle for the page. The default
-is the \pstyle{empty} pagestyle. The macro \cmd{\renewleadpage} redefines
-an existing leadpage command. As an example:
+title \meta{title} using the \meta{page-style} as the pagestyle for
+the page. The default is the \pstyle{empty} pagestyle. The macro
+\cmd{\renewleadpage} redefines an existing leadpage command.
+\cmd{\cmdname} will add an entry to the TOC, the similarly defined
+\cmd{\cmdname*} will not.
+
+
+As an example:
\begin{lcode}
\newleadpage{plates}{Picture Gallery}
\end{lcode}
@@ -7919,6 +7982,10 @@ part-like page with the title \textbf{Picture Gallery}.
\begin{syntax}
\cmd{\leadpagetoclevel} \\
\end{syntax}
+\glossary(leadpagetoclevel)%
+{\cs{leadpagetoclevel}}%
+{Holds the default toc level for \cs{newleadpage} generated macros,
+default is \texttt{chapter}.}
When \cs{(re)newleadpage} is used the resulting command adds \meta{title}
to the \toc\ as though it was an unnumbered \cmd{\leadpagetoclevel} entry,
whose definition is
@@ -7930,8 +7997,6 @@ If you wished them to be entered like a \cmd{\part} header then simply:
\renewcommand*{\leadpagetoclevel}{part}
\end{lcode}
- When the starred versions \cs{(re)newleadpage*} are used the resulting
-command will not add \meta{title} to the \toc.
The layout of the page matches that for unnumbered \cmd{\part} pages, and
internally the resulting commands use \cmd{\partmark} in case you
@@ -12431,7 +12496,6 @@ other environments.
\index{list|)} %|
%#% extend
-
%#% extstart include content-lists.tex
\svnidlong
@@ -17573,8 +17637,6 @@ package can be used with the class, but there are a few caveats:
%#% extend
-
-
%#% extstart include rows-and-columns.tex
\svnidlong
@@ -19550,8 +19612,8 @@ illustrate these points.
\svnidlong
{$Ignore: $}
-{$LastChangedDate: 2014-05-07 13:21:44 +0200 (Wed, 07 May 2014) $}
-{$LastChangedRevision: 481 $}
+{$LastChangedDate: 2015-04-22 17:17:51 +0200 (Wed, 22 Apr 2015) $}
+{$LastChangedRevision: 527 $}
{$LastChangedBy: daleif $}
\chapter{Page notes} \label{chap:mnotes}
@@ -19674,7 +19736,7 @@ the separator. Its default definition is:
\glossary(feetbelowfloat)%
{\cs{feetbelowfloat}}%
{Typeset footnotes below bottom floats.}
-In\fxnote{this needs checking} the standard classes, footnotes on a page that has a float at the
+In the standard classes, footnotes on a page that has a float at the
bottom are typeset before the float. I think that this looks
peculiar. Following the \cmd{\feetbelowfloat} declaration footnotes
will be typeset at the bottom of the page below any bottom
@@ -19684,6 +19746,22 @@ as opposed to being
put just after the bottom line of text. The standard positioning is
used following the \cmd{\feetabovefloat} declaration, which is the default.
+\begin{syntax}
+\cmd{\feetatbottom} \\
+\end{syntax}
+\glossary(feetatbottom)%
+ {\cs{feetatbottom}}%
+ {Place footnotes at the very bottom of the text block whenever we
+ are in a non \cs{flushbottom} context.}
+Then\Added{2015/04/22} we use \cs{raggedbottom} or similar, \LaTeX{}
+will by default attach the footnotes just below the text. In many
+cases it may look better if the footnotes are being build from the
+bottom of the texst block up. Issuing \cs{feetatbottom} does
+this. Please note that \cs{feetatbottom} has no effect whenever
+\cs{flushbottom} is active.
+
+
+
\subsection{A variety of footnotes}
\begin{syntax}
@@ -20235,6 +20313,26 @@ and if you later want rules you can write:
\end{lcode}
+\fancybreak{}
+
+
+In \fref{fig:fn} we see that the footnotes are separated from the text
+by \cs{skip}\cs{footins}. We provide a special interface to set this skip:\Added{2015/04/22}
+\begin{syntax}
+\cmd{\setfootins}\marg{length for normal}\marg{length for minipage} \\
+\end{syntax}
+\glossary(setfootins)%
+{\cs{setfootins}\marg{length for normal}\marg{length for minipage}}%
+{Sets \cs{skip}\cs{footins} and its minipage counterpart.}
+The default is similar to
+\begin{lcode}
+ \setfootins{\bigskipamount}{\bigskipamount}
+\end{lcode}
+Internally \cmd{\setfootins} also sets the skips being used by
+\cmd{\twocolumnfootnotes} and friends.
+
+
+
\index{footnote!styling|)}
\index{footnote|)}
@@ -21465,13 +21563,6 @@ ignored as for \cmd{\pagenote} it can be arbitrary text whereas for
%#% extend
-
-
-
-
-
-
-
%#% extstart include decorative-text.tex
\svnidlong
diff --git a/Master/texmf-dist/doc/latex/memoir/memsty.sty b/Master/texmf-dist/doc/latex/memoir/memsty.sty
index 5abe01f7c3d..d0b3b10cdf1 100644
--- a/Master/texmf-dist/doc/latex/memoir/memsty.sty
+++ b/Master/texmf-dist/doc/latex/memoir/memsty.sty
@@ -22,7 +22,7 @@
\providecommand{\LMnote}[2]{}
\providecommand{\PWnote}[2]{}
-
+\newcommand\Added[1]{\sidepar{\tiny Added #1}}
%%%%%%%%%%%%%%%%%%% kill scale change warning in layouts
\renewcommand*{\setlayoutscale}[1]{\setlength{\l@youtunitlength}{1pt}
@@ -482,12 +482,12 @@ official r\^ole in fluffy souffl\'es?' }
% after, looks a bit better}
\newenvironment{lcode}{\@zeroseps
\nopagebreak
- \vskip0.2em plus 0.1em minus 0.2em
+ \vskip0.4em plus 0.1em minus 0.2em
\renewcommand{\verbatim@startline}{\verbatim@line{\hskip\gparindent}}
\small\setlength{\baselineskip}{\onelineskip}\verbatim}%
{\endverbatim
\vspace{-\baselineskip}
- \vskip0.3em plus 0.1em minus 0.2em
+ \vskip0.6em plus 0.1em minus 0.2em
\noindent}
%%%%% LaTeX syntax
diff --git a/Master/texmf-dist/source/latex/memoir/memoir.dtx b/Master/texmf-dist/source/latex/memoir/memoir.dtx
index 80ebb97512a..f7d554e4978 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{30606}
+% \CheckSum{30748}
%
% \changes{v0.1}{2001/05/20}{First public alpha release}
% \changes{v0.2}{2001/06/03}{First beta release}
@@ -110,7 +110,8 @@
% \changes{v3.6k}{2013/05/17}{Various fixes and long overdue maintenance}
% \changes{v3.7}{2013/05/22}{Bumped version}
% \changes{v3.7b}{2013/05/30}{Bugfix, sidecaption}
-% \changes{v3.7c}{2013/05/30}{Bugfix}
+% \changes{v3.7c}{2015/03/05}{Bugfix}
+% \changes{v3.7d}{2015/04/23}{Misc. bugfixes}
%
% \def\dtxfile{memoir.dtx}
%
@@ -162,6 +163,7 @@
% \def\fileversion{v3.7} \def\filedate{2013/05/22}
% \def\fileversion{v3.7b} \def\filedate{2013/05/30}
% \def\fileversion{v3.7c} \def\filedate{2015/03/05}
+% \def\fileversion{v3.7d} \def\filedate{2015/04/23}
% \title{The LaTeX \Lpack{memoir} class for configurable book
% typesetting: Source code\thanks{This
% file (\texttt{\dtxfile}) has version number \fileversion, last revised
@@ -391,11 +393,11 @@
% Announce the name, option files and version for LaTeX2e files:
% \begin{macrocode}
%<class>\ProvidesClass{memoir}%
-%<class> [2015/03/05 v3.7c configurable book, report, article document class]
+%<class> [2015/04/23 v3.7d 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.7c, 2015/03/05}
+%<class>\newcommand\memversion{v3.7d, 2015/04/23}
%<9pt>\ProvidesFile{mem9.clo}%
%<9pt> [2008/01/30 v0.4 memoir class 9pt size option]
%<10pt>\ProvidesFile{mem10.clo}%
@@ -4453,6 +4455,25 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\setfootins}
+% \cs{setfootins}\marg{length}\marg{length} sets
+% \cs{skip}\cs{footins} and its minipage counterpart. It will also
+% set \cs{skip}\cs{footinsv@r} and similar for minipages to the same
+% values. These are used by for example \cs{twocolumnfootnotes}.
+% \begin{macrocode}
+\newcommand\setfootins[2]{
+ \setlength{\skip\footins}{#1}
+ \setlength{\skip\footinsv@r}{#1}
+ \setlength{\skip\@mpfootins}{#2}
+ % not explicitly used
+ \setlength{\skip\@mpfootinsv@r}{#2}
+}
+
+% \end{macrocode}
+%
+% \end{macro}
+%
+%
% Initialise the paper size and trimming to their default values.
% \begin{macrocode}
\settrimmedsize{\stockheight}{\stockwidth}{*}
@@ -5755,16 +5776,18 @@
% \cs{makefootrule}\marg{style}\marg{width}\marg{height}\marg{skip}
% specifies the width, height and skip for the footrule.
% \changes{v1.61803398d}{2010/02/09}{Added safe change test}
+% \changes{v3.7d}{2015/04/22}{Moved \cs{...(head|foot)ruleprefix} out and
+% added them else where}
% \begin{macrocode}
\newcommand{\makeheadrule}[3]{%
\mem@ps@safe@change{#1}%
\@namedef{#1headrule}{%
- \@nameuse{#1headruleprefix}\hrule\@width #2\@height #3 \vskip-#3}}
+ \hrule\@width #2\@height #3 \vskip-#3}}
\newcommand{\makefootrule}[4]{%
\mem@ps@safe@change{#1}%
\@namedef{#1footrule}{%
\vskip-#4\vskip-#3%
- \@nameuse{#1footruleprefix}\hrule\@width #2\@height #3 \vskip #4}}
+ \hrule\@width #2\@height #3 \vskip #4}}
% \end{macrocode}
% \end{macro}
@@ -6026,7 +6049,17 @@
% the main direction of the document.}
% \begin{macrocode}
\nametest{#2}{head}\ifsamename\let\mem@hfboxer\mem@hvboxm\else\let\mem@hfboxer\mem@fvboxm\fi%
- \mem@hfboxer{\nametest{#2}{foot}\ifsamename\@nameuse{#1#2rule}\fi%
+% \end{macrocode}
+% \changes{v3.7d}{2015/04/22}{Moved \cs{...footruleprefix} outside
+% \cs{...footrule}. Otherwise copy does not work correctly. Reported
+% at http://tex.stackexchange.com/q/231454/3929}
+% \begin{macrocode}
+ \mem@hfboxer{\nametest{#2}{foot}\ifsamename%
+ \begingroup% to prevent colors from bleeding into the footer
+ \@nameuse{#1#2ruleprefix}%
+ \@nameuse{#1#2rule}%
+ \endgroup%
+ \fi%
\hbox{%
\rlap{%
\parbox[\@nameuse{#1#2vplacement}]{\@nameuse{#1#2runwidth}}{%
@@ -6048,8 +6081,13 @@
% headline if \texttt{\#2} equals \texttt{head}.
% \changes{v3.6k}{2012/05/31}{Forgot to separate head/foot position into the
% factorization}
+% \changes{v3.7d}{2015/04/22}{Moved \cs{...headruleprefix} outside
+% \cs{...headrule}. Otherwise copy does not work correctly.}
% \begin{macrocode}
- \nametest{#2}{head}\ifsamename\@nameuse{#1#2rule}\fi%
+ \nametest{#2}{head}\ifsamename%
+ \@nameuse{#1#2ruleprefix}%
+ \@nameuse{#1#2rule}%
+ \fi%
}}\@nameuse{#1#3#2pr}}%
% \end{macrocode}
% And end by letting the LaTeX head/foot use our version
@@ -18817,28 +18855,44 @@
\@memlistsubcaptions{\@captype}\@memoldedblfloat}
% \end{macrocode}
-% Unfortunately the \Lpack{fixltx2e} package, version 1.1h (current as of 2005/09/03) makes assumptions
-% about \cs{end@float} which do not hold for memoir. The code has to be reverted back to that in version 1.0b of \Lpack{fixltx2e}.
-% \changes{v1.618}{2005/09/03}{Dealt with incompatibilities between fixltx2e and memoir's \cs{end@dblfloat} (mempatch v3.7)}
+% Unfortunately the \Lpack{fixltx2e} package, version 1.1h (current as
+% of 2005/09/03) makes assumptions about \cs{end@float} which do not
+% hold for memoir. The code has to be reverted back to that in version
+% 1.0b of \Lpack{fixltx2e}.
+% \changes{v1.618}{2005/09/03}{Dealt with incompatibilities between
+% fixltx2e and memoir's \cs{end@dblfloat} (mempatch v3.7)}
+%
% \changes{v3.7c}{2015/03/05}{Note quite sure why this fix is needed,
-% so we add a trick so that it can be deleted by defining a macro
-% before \cs{documentclass}, that makes it easier to test}
+% so we add a trick (\cs{MEMOIROVERRIDE}) so that it can be deleted by
+% defining a macro before \cs{documentclass}, that makes it easier to
+% test}
+%
+% Update 2015: The problematic code from \Lpack{fixltx2e} is no
+% longer present from version 1.1s and on. This version is to be
+% build into the LaTeX2e kernel for the TeX Live 2015 release. We
+% change the code reversion so it only happens if older \Lpack{fixltx2e}
+% versions are being used.
+% \changes{v3.7d}{2015/03/17}{Adding check for older \Lpack{fixltx2e}
+% and removing \cs{MEMOIROVERRIDE}}
% \begin{macrocode}
-\@ifundefined{MEMOIROVERRIDE}{
-\AtBeginDocument{\@ifpackageloaded{fixltx2e}{%
- \def\end@dblfloat{%
- \if@twocolumn
- \@endfloatbox
- \ifnum\@floatpenalty<\z@
- \@largefloatcheck
- \global\dp\@currbox1sp %
- \@cons\@deferlist\@currbox
- \fi
- \ifnum\@floatpenalty=-\@Mii \@Esphack\fi
- \else
- \end@float
- \fi}}{}}
-}{\typeout{MEMOIROVERRIDE initiated, ignoring internal fixltx2e 'patch'}}
+\AtBeginDocument{%
+ \@ifpackageloaded{fixltx2e}{%
+ \@ifpackagelater{fixltx2e}{2014/01/01}{}{% package older than 2014/01/01
+ \def\end@dblfloat{%
+ \if@twocolumn
+ \@endfloatbox
+ \ifnum\@floatpenalty<\z@
+ \@largefloatcheck
+ \global\dp\@currbox1sp %
+ \@cons\@deferlist\@currbox
+ \fi
+ \ifnum\@floatpenalty=-\@Mii \@Esphack\fi
+ \else
+ \end@float
+ \fi}%
+ }
+ }{}
+}
% \end{macrocode}
% \end{macro}
@@ -18862,6 +18916,10 @@
% \begin{macrocode}
\def\mem@fb@botlist{\@botlist}
\def\mem@fb@topblock{\suppressfloats[t]}
+% \end{macrocode}
+% \changes{v3.7d}{2015/03/12}{\cs{\@dbldeferlist} may be removed in a
+% comming LaTeX kernel update}
+% \begin{macrocode}
\def\FloatBlock{\par\begingroup \let\@elt\relax
\edef\@tempa{\mem@fb@botlist\@deferlist\@dbldeferlist}%
\ifx\@tempa\@empty
@@ -24383,21 +24441,30 @@
% \begin{macro}{\raggedbottom}
% \begin{macro}{\flushbottom}
% \begin{macro}{\@texttop}
+% \begin{macro}{\mem@flshbot}
% These kernel macros need changing because of the new \cs{@indexbox}
% marginal insert.
+% \changes{v3.7d}{2015/04/21}{It makes more sense to explicitly call
+% \cs{flushbottom} than just let \cs{@texttop}. We also add a switch
+% macro to see if \cs{flushbottom} is active. \cs{raggedbottom} and
+% \cs{sloppybottom} sets the switch to false}
% \begin{macrocode}
\renewcommand{\raggedbottom}{%
+ \def\mem@flshbot{01}%
\def\@textbottom{\vskip\z@ plus.0001fil}%
\let\@texttop\@mkidx}
\renewcommand{\flushbottom}{%
+ \def\mem@flshbot{00}%
\let\@textbottom\relax
\let\@texttop\@mkidx}
\let\@texttop\@mkidx
+\flushbottom
% \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% \subsection{Widows and sloppybottom}
%
@@ -24428,8 +24495,10 @@
% ...
% \end{verbatim}
% \changes{v1.61803}{2008/01/30}{Added \cs{sloppybottom} (mempatch v4.6)}
+% \changes{v3.7d}{2015/04/21}{Added flush bottom switch}
% \begin{macrocode}
\newcommand*{\sloppybottom}{%
+ \def\mem@flshbot{01}%
\def\@textbottom{\vskip \z@ \@plus.0001fil \@minus .95\topskip}%
\topskip=1\topskip \@plus 0.625\topskip \@minus .95\topskip
\def\@texttop{\vskip \z@ \@plus -0.625\topskip \@minus -0.95\topskip}}
@@ -26831,11 +26900,19 @@
% \end{macro}
%
% \begin{macro}{\m@make@footstart}
-% \cs{m@make@footstart}\marg{series} creates \cs{@footstart<series>}
+% \cs{m@make@footstart}\marg{series} creates \cs{@footstart<series>}.
+%
+% The footnote series should of course use
+% the skip associated with that series not just
+% \cs{vskip}\cs{bigskipamount}.
+% \changes{v3.7d}{2015/04/22}{Changed the \cs{vskip}}
+% \changes{v3.7d}{2015/04/22}{Added the feet at bottom part}
% \begin{macrocode}
\newcommand{\m@make@footstart}[1]{%
\@namedef{@footstart#1}{%
- \vskip\bigskipamount
+ %\vskip\bigskipamount
+ \mem@if@flushbottomF\m@mopfn@bottom
+ \vskip\skip\csname footins#1\endcsname
\leftskip=\z@
\rightskip=\z@
\footnoterule}}
@@ -27646,6 +27723,9 @@
% I thought that I could get away with using the kernel's
% \cs{@doclearpage} but [RS] discovered that I couldn't.
% \changes{v1.62}{2004/03/14}{Redid \cs{@doclearpage} using [RS] code}
+% \changes{v3.7d}{2015/04/23}{Opdated \cs{mem@doclearpage} to match
+% \Lpack{fixltx2e} v1.1s (which will be the base of the ltx kernel for
+% TL15)}
% \begin{macrocode}
\let\memold@doclearpage\@doclearpage
\newcommand{\mem@doclearpage}{%
@@ -27654,36 +27734,72 @@
\setbox\@tempboxa\vsplit\@cclv to\z@ \unvbox\@tempboxa
\setbox\@tempboxa\box\@cclv
\xdef\@deferlist{\@toplist\@botlist\@deferlist}%
- \global\let\@toplist\@empty
- \global\let\@botlist\@empty
- \global\@colroom\@colht
+ \global \let \@toplist \@empty
+ \global \let \@botlist \@empty
+ \global \@colroom \@colht
\ifx \@currlist\@empty
\else
- \@latexerr{Float(s) lost}\@ehb
- \global\let\@currlist\@empty
+ \@latexerr{Float(s) lost}\@ehb
+ \global \let \@currlist \@empty
\fi
\@makefcolumn\@deferlist
\@whilesw\if@fcolmade \fi{\@opcol\@makefcolumn\@deferlist}%
\if@twocolumn
\if@firstcolumn
- \xdef\@dbldeferlist{\@dbltoplist\@dbldeferlist}%
- \global\let\@dbltoplist\@empty
- \global\@colht\textheight
+ \xdef\@deferlist{\@dbltoplist\@deferlist}%
+ \global \let \@dbltoplist \@empty
+ \global \@colht \textheight
\begingroup
- \@dblfloatplacement
- \@makefcolumn\@dbldeferlist
- \@whilesw\if@fcolmade \fi{\@outputpage
- \@makefcolumn\@dbldeferlist}%
- \endgroup
- \else
+ \@dblfloatplacement
+ \@makefcolumn\@deferlist
+ \@whilesw\if@fcolmade \fi{\@outputpage
+ \@makefcolumn\@deferlist}%
+ \endgroup
+ \else
\vbox{}\clearpage
\fi
\fi
+ \ifx\@deferlist\@empty \else\clearpage \fi
\else
\setbox\@cclv\vbox{\box\@cclv\vfil}%
\@makecol\@opcol
\clearpage
- \fi}
+ \fi
+ % older version
+ % \setbox\@tempboxa\vsplit\@cclv to\z@ \unvbox\@tempboxa
+ % \setbox\@tempboxa\box\@cclv
+ % \xdef\@deferlist{\@toplist\@botlist\@deferlist}%
+ % \global\let\@toplist\@empty
+ % \global\let\@botlist\@empty
+ % \global\@colroom\@colht
+ % \ifx \@currlist\@empty
+ % \else
+ % \@latexerr{Float(s) lost}\@ehb
+ % \global\let\@currlist\@empty
+ % \fi
+ % \@makefcolumn\@deferlist
+ % \@whilesw\if@fcolmade \fi{\@opcol\@makefcolumn\@deferlist}%
+ % \if@twocolumn
+ % \if@firstcolumn
+ % \xdef\@dbldeferlist{\@dbltoplist\@dbldeferlist}%
+ % \global\let\@dbltoplist\@empty
+ % \global\@colht\textheight
+ % \begingroup
+ % \@dblfloatplacement
+ % \@makefcolumn\@dbldeferlist
+ % \@whilesw\if@fcolmade \fi{\@outputpage
+ % \@makefcolumn\@dbldeferlist}%
+ % \endgroup
+ % \else
+ % \vbox{}\clearpage
+ % \fi
+ % \fi
+ % \else
+ % \setbox\@cclv\vbox{\box\@cclv\vfil}%
+ % \@makecol\@opcol
+ % \clearpage
+ % \fi
+}
% \end{macrocode}
% Replace the kernel's \cs{@doclearpage}.
% \begin{macrocode}
@@ -27729,12 +27845,20 @@
%
% \begin{macro}{\m@mopfootnote}
% (footnote) code for possible use in \cs{@makecol}.
+% \changes{v3.7d}{2015/04/21}{Added feature to force footnotes to the
+% bottom of the page in a ragged context}
% \begin{macrocode}
\newcommand*{\m@mopfootnote}{\setbox\@outputbox \vbox{%
\boxmaxdepth\@maxdepth
\@tempdima\dp\@cclv
\unvbox\@cclv
\vskip-\@tempdima
+% \end{macrocode}
+% We then add a macro call that is only activated if we are not using
+% \cs{flushbottom}. If \cs{feetatbottom} is active, then a
+% \cs{vfill} is added. Solution inspired by \Lpack{footmisc}.
+% \begin{macrocode}
+ \mem@if@flushbottomF\m@mopfn@bottom
\vskip \skip\footins
\color@begingroup
\normalcolor
@@ -27748,13 +27872,19 @@
% \begin{macro}{\m@mopfootnotebf}
% (footnote) code in support of footnotes below floats.
% Problem with original code noted by J{\o}rgen Larsen (\url{jl@ruc.dk})
-% on 2008/05/24.
+% on 2008/05/24. Updated 2015.
% \changes{v1.618033}{2008/06/02}{Added \cs{m@mopfootnotebf}}
+% \changes{v3.7d}{2015/04/21}{Added feature to force footnotes to the
+% bottom of the page in a ragged context}
% \begin{macrocode}
\newcommand*{\m@mopfootnotebf}{%
\setbox\@outputbox \vbox{%
\boxmaxdepth\@maxdepth
\unvbox\@outputbox
+% \end{macrocode}
+% We then add a macro call as above.
+% \begin{macrocode}
+ \mem@if@flushbottomF\m@mopfn@bottom
\vskip\skip\footins
\color@begingroup
\normalcolor
@@ -27782,48 +27912,50 @@
% \begin{macro}{\mem@makecol}
% DA's latest version of \cs{@makecol} (giving the standard
% footnote order (bottom floats after footnotes)) putting the sidebar
-% insert after the others (from mempatch v4.9).
+% insert after the others (from mempatch v4.9). The code is renewed on
+% page~\pageref{makecol} onwards.
% \begin{macrocode}
-\gdef\mem@makecol{%
- \m@m@makecolintro
- \ifvoid\footins
- \setbox\@outputbox \box\@cclv
- \else
- \m@mopfootnote
- \fi
- \m@mdoextrafeet
- \m@m@makecolfloats
- \m@mopsidebar
- \m@m@makecoltext
- \global \maxdepth \@maxdepth}
+ % \gdef\mem@makecol{%
+ % \m@m@makecolintro
+ % \ifvoid\footins
+ % \setbox\@outputbox \box\@cclv
+ % \else
+ % \m@mopfootnote
+ % \fi
+ % \m@mdoextrafeet
+ % \m@m@makecolfloats
+ % \m@mopsidebar
+ % \m@m@makecoltext
+ % \global \maxdepth \@maxdepth}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\mem@makecolbf}
% A version of \cs{@makecol} which puts footnotes at the bottom of the page
-% (after any bottom floats).
+% (after any bottom floats). The code is renewed on
+% page~\pageref{makecol} onwards.
% \changes{v1.618033}{2008/06/02}{Used \cs{m@mopfootnotebf} instead of
% \cs{m@mopfootnote} in \cs{mem@makecolbf}}
% \begin{macrocode}
-\gdef\mem@makecolbf{%
- \m@m@makecolintro
- \setbox\@outputbox \box\@cclv
- \m@m@makecolfloats
- \ifvoid\footins\else
- \m@mopfootnotebf
- \fi
- \m@mdoextrafeet
- \m@mopsidebar
- \m@m@makecoltext
- \global\maxdepth \@maxdepth}
+ % \gdef\mem@makecolbf{%
+ % \m@m@makecolintro
+ % \setbox\@outputbox \box\@cclv
+ % \m@m@makecolfloats
+ % \ifvoid\footins\else
+ % \m@mopfootnotebf
+ % \fi
+ % \m@mdoextrafeet
+ % \m@mopsidebar
+ % \m@m@makecoltext
+ % \global\maxdepth \@maxdepth}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\mem@makecoldblf}
% A version of \cs{@makecol} which is a placeholder to fix the doublefloat
-% problem.
+% problem.
%
% \begin{macrocode}
\gdef\mem@makecoldblf{%
@@ -27857,6 +27989,32 @@
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\feetatbottom}
+% \begin{macro}{\feetbelowragged}
+% \begin{macro}{\m@mopfn@bottom}
+% \begin{macro}{\mem@if@flushbottomF}
+% If a page is typeset with a ragged bottom then any footnotes are
+% added directly under the text. It may look better if the footnotes
+% are added to the text block from the bottom up.
+% \begin{macrocode}
+\newcommand\feetatbottom{\def\m@mopfn@bottom{\vfill\relax}}
+\newcommand\feetbelowragged{\let\m@mopfn@bottom\relax}
+\feetbelowragged
+% \end{macrocode}
+% Next we add a test to see if \cs{flushbottom} is active. This macro
+% is used within \cs{m@mopfootnote} and \cs{m@mopfootnotebf} to
+% force the footnotes to the bottom \emph{only} when \cs{flushbottom}
+% is \emph{not} active, hince the \texttt{F} in the name.
+% \begin{macrocode}
+\newcommand\mem@if@flushbottomF[1]{%
+ \if\mem@flshbot\else#1\fi%
+}
+
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
%
% \begin{macro}{\@reinserts}
% DA's final version from last patch.
@@ -28177,7 +28335,7 @@
% \begin{macro}{\@reinserts}
% \begin{macro}{\@mem@extranofeet}
% \begin{macro}{@mem@testifnofoot}
-% Revise these to cater for the new sidefoot insert.
+% Revise these to cater for the new sidefoot insert.\label{makecol}
% \changes{v3.7c}{2013/11/28}{Spurious space}
% \begin{macrocode}
\gdef\mem@makecol{%
diff --git a/Master/texmf-dist/tex/latex/memoir/memoir.cls b/Master/texmf-dist/tex/latex/memoir/memoir.cls
index 0fb671d7dc5..4e2948001e5 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}%
- [2015/03/05 v3.7c configurable book, report, article document class]
-\newcommand\memversion{v3.7c, 2015/03/05}
+ [2015/04/23 v3.7d configurable book, report, article document class]
+\newcommand\memversion{v3.7d, 2015/04/23}
\newcommand*{\@ptsize}{}
\newcommand*{\@memptsize}{}
\newlength{\onelineskip}
@@ -1001,6 +1001,14 @@
\setlength{\marginparwidth}{#2}%
\setlength{\marginparpush}{#3}}
+\newcommand\setfootins[2]{
+ \setlength{\skip\footins}{#1}
+ \setlength{\skip\footinsv@r}{#1}
+ \setlength{\skip\@mpfootins}{#2}
+ % not explicitly used
+ \setlength{\skip\@mpfootinsv@r}{#2}
+}
+
\settrimmedsize{\stockheight}{\stockwidth}{*}
\settrims{\z@}{\z@}
@@ -1617,12 +1625,12 @@
\newcommand{\makeheadrule}[3]{%
\mem@ps@safe@change{#1}%
\@namedef{#1headrule}{%
- \@nameuse{#1headruleprefix}\hrule\@width #2\@height #3 \vskip-#3}}
+ \hrule\@width #2\@height #3 \vskip-#3}}
\newcommand{\makefootrule}[4]{%
\mem@ps@safe@change{#1}%
\@namedef{#1footrule}{%
\vskip-#4\vskip-#3%
- \@nameuse{#1footruleprefix}\hrule\@width #2\@height #3 \vskip #4}}
+ \hrule\@width #2\@height #3 \vskip #4}}
\newcommand\makeheadfootruleprefix[3]{%
\@namedef{#1headruleprefix}{#2}%
@@ -1736,7 +1744,12 @@
\@namedef{#1@#3#2}{%
\@nameuse{#1#3#2pl}\hb@xt@\@nameuse{#1#2runwidth}{\m@mhe@dreset%
\nametest{#2}{head}\ifsamename\let\mem@hfboxer\mem@hvboxm\else\let\mem@hfboxer\mem@fvboxm\fi%
- \mem@hfboxer{\nametest{#2}{foot}\ifsamename\@nameuse{#1#2rule}\fi%
+ \mem@hfboxer{\nametest{#2}{foot}\ifsamename%
+ \begingroup% to prevent colors from bleeding into the footer
+ \@nameuse{#1#2ruleprefix}%
+ \@nameuse{#1#2rule}%
+ \endgroup%
+ \fi%
\hbox{%
\rlap{%
\parbox[\@nameuse{#1#2vplacement}]{\@nameuse{#1#2runwidth}}{%
@@ -1753,7 +1766,10 @@
\mem@ps@entry@wrap{\@nameuse{#1#4#2r}}%
\@nameuse{#1ps#2strut}}}%
}%
- \nametest{#2}{head}\ifsamename\@nameuse{#1#2rule}\fi%
+ \nametest{#2}{head}\ifsamename%
+ \@nameuse{#1#2ruleprefix}%
+ \@nameuse{#1#2rule}%
+ \fi%
}}\@nameuse{#1#3#2pr}}%
\@namedef{@#3#2}{\@nameuse{#1@#3#2}}%
}
@@ -6367,21 +6383,24 @@
\def\end@dblfloat{%
\@memlistsubcaptions{\@captype}\@memoldedblfloat}
-\@ifundefined{MEMOIROVERRIDE}{
-\AtBeginDocument{\@ifpackageloaded{fixltx2e}{%
- \def\end@dblfloat{%
- \if@twocolumn
- \@endfloatbox
- \ifnum\@floatpenalty<\z@
- \@largefloatcheck
- \global\dp\@currbox1sp %
- \@cons\@deferlist\@currbox
- \fi
- \ifnum\@floatpenalty=-\@Mii \@Esphack\fi
- \else
- \end@float
- \fi}}{}}
-}{\typeout{MEMOIROVERRIDE initiated, ignoring internal fixltx2e 'patch'}}
+\AtBeginDocument{%
+ \@ifpackageloaded{fixltx2e}{%
+ \@ifpackagelater{fixltx2e}{2014/01/01}{}{% package older than 2014/01/01
+ \def\end@dblfloat{%
+ \if@twocolumn
+ \@endfloatbox
+ \ifnum\@floatpenalty<\z@
+ \@largefloatcheck
+ \global\dp\@currbox1sp %
+ \@cons\@deferlist\@currbox
+ \fi
+ \ifnum\@floatpenalty=-\@Mii \@Esphack\fi
+ \else
+ \end@float
+ \fi}%
+ }
+ }{}
+}
\def\mem@fb@botlist{\@botlist}
\def\mem@fb@topblock{\suppressfloats[t]}
@@ -8529,14 +8548,18 @@
\vss}}
\renewcommand{\raggedbottom}{%
+ \def\mem@flshbot{01}%
\def\@textbottom{\vskip\z@ plus.0001fil}%
\let\@texttop\@mkidx}
\renewcommand{\flushbottom}{%
+ \def\mem@flshbot{00}%
\let\@textbottom\relax
\let\@texttop\@mkidx}
\let\@texttop\@mkidx
+\flushbottom
\newcommand*{\sloppybottom}{%
+ \def\mem@flshbot{01}%
\def\@textbottom{\vskip \z@ \@plus.0001fil \@minus .95\topskip}%
\topskip=1\topskip \@plus 0.625\topskip \@minus .95\topskip
\def\@texttop{\vskip \z@ \@plus -0.625\topskip \@minus -0.95\topskip}}
@@ -9453,7 +9476,9 @@
\newcommand{\m@make@footstart}[1]{%
\@namedef{@footstart#1}{%
- \vskip\bigskipamount
+ %\vskip\bigskipamount
+ \mem@if@flushbottomF\m@mopfn@bottom
+ \vskip\skip\csname footins#1\endcsname
\leftskip=\z@
\rightskip=\z@
\footnoterule}}
@@ -9874,36 +9899,72 @@
\setbox\@tempboxa\vsplit\@cclv to\z@ \unvbox\@tempboxa
\setbox\@tempboxa\box\@cclv
\xdef\@deferlist{\@toplist\@botlist\@deferlist}%
- \global\let\@toplist\@empty
- \global\let\@botlist\@empty
- \global\@colroom\@colht
+ \global \let \@toplist \@empty
+ \global \let \@botlist \@empty
+ \global \@colroom \@colht
\ifx \@currlist\@empty
\else
- \@latexerr{Float(s) lost}\@ehb
- \global\let\@currlist\@empty
+ \@latexerr{Float(s) lost}\@ehb
+ \global \let \@currlist \@empty
\fi
\@makefcolumn\@deferlist
\@whilesw\if@fcolmade \fi{\@opcol\@makefcolumn\@deferlist}%
\if@twocolumn
\if@firstcolumn
- \xdef\@dbldeferlist{\@dbltoplist\@dbldeferlist}%
- \global\let\@dbltoplist\@empty
- \global\@colht\textheight
+ \xdef\@deferlist{\@dbltoplist\@deferlist}%
+ \global \let \@dbltoplist \@empty
+ \global \@colht \textheight
\begingroup
- \@dblfloatplacement
- \@makefcolumn\@dbldeferlist
- \@whilesw\if@fcolmade \fi{\@outputpage
- \@makefcolumn\@dbldeferlist}%
- \endgroup
- \else
+ \@dblfloatplacement
+ \@makefcolumn\@deferlist
+ \@whilesw\if@fcolmade \fi{\@outputpage
+ \@makefcolumn\@deferlist}%
+ \endgroup
+ \else
\vbox{}\clearpage
\fi
\fi
+ \ifx\@deferlist\@empty \else\clearpage \fi
\else
\setbox\@cclv\vbox{\box\@cclv\vfil}%
\@makecol\@opcol
\clearpage
- \fi}
+ \fi
+ % older version
+ % \setbox\@tempboxa\vsplit\@cclv to\z@ \unvbox\@tempboxa
+ % \setbox\@tempboxa\box\@cclv
+ % \xdef\@deferlist{\@toplist\@botlist\@deferlist}%
+ % \global\let\@toplist\@empty
+ % \global\let\@botlist\@empty
+ % \global\@colroom\@colht
+ % \ifx \@currlist\@empty
+ % \else
+ % \@latexerr{Float(s) lost}\@ehb
+ % \global\let\@currlist\@empty
+ % \fi
+ % \@makefcolumn\@deferlist
+ % \@whilesw\if@fcolmade \fi{\@opcol\@makefcolumn\@deferlist}%
+ % \if@twocolumn
+ % \if@firstcolumn
+ % \xdef\@dbldeferlist{\@dbltoplist\@dbldeferlist}%
+ % \global\let\@dbltoplist\@empty
+ % \global\@colht\textheight
+ % \begingroup
+ % \@dblfloatplacement
+ % \@makefcolumn\@dbldeferlist
+ % \@whilesw\if@fcolmade \fi{\@outputpage
+ % \@makefcolumn\@dbldeferlist}%
+ % \endgroup
+ % \else
+ % \vbox{}\clearpage
+ % \fi
+ % \fi
+ % \else
+ % \setbox\@cclv\vbox{\box\@cclv\vfil}%
+ % \@makecol\@opcol
+ % \clearpage
+ % \fi
+}
\gdef\@doclearpage{\mem@doclearpage}
\newcommand*{\m@m@makecolfloats}{%
@@ -9929,6 +9990,7 @@
\@tempdima\dp\@cclv
\unvbox\@cclv
\vskip-\@tempdima
+ \mem@if@flushbottomF\m@mopfn@bottom
\vskip \skip\footins
\color@begingroup
\normalcolor
@@ -9940,6 +10002,7 @@
\setbox\@outputbox \vbox{%
\boxmaxdepth\@maxdepth
\unvbox\@outputbox
+ \mem@if@flushbottomF\m@mopfn@bottom
\vskip\skip\footins
\color@begingroup
\normalcolor
@@ -9954,30 +10017,30 @@
\unvbox\@outputbox}
\fi}
-\gdef\mem@makecol{%
- \m@m@makecolintro
- \ifvoid\footins
- \setbox\@outputbox \box\@cclv
- \else
- \m@mopfootnote
- \fi
- \m@mdoextrafeet
- \m@m@makecolfloats
- \m@mopsidebar
- \m@m@makecoltext
- \global \maxdepth \@maxdepth}
-
-\gdef\mem@makecolbf{%
- \m@m@makecolintro
- \setbox\@outputbox \box\@cclv
- \m@m@makecolfloats
- \ifvoid\footins\else
- \m@mopfootnotebf
- \fi
- \m@mdoextrafeet
- \m@mopsidebar
- \m@m@makecoltext
- \global\maxdepth \@maxdepth}
+ % \gdef\mem@makecol{%
+ % \m@m@makecolintro
+ % \ifvoid\footins
+ % \setbox\@outputbox \box\@cclv
+ % \else
+ % \m@mopfootnote
+ % \fi
+ % \m@mdoextrafeet
+ % \m@m@makecolfloats
+ % \m@mopsidebar
+ % \m@m@makecoltext
+ % \global \maxdepth \@maxdepth}
+
+ % \gdef\mem@makecolbf{%
+ % \m@m@makecolintro
+ % \setbox\@outputbox \box\@cclv
+ % \m@m@makecolfloats
+ % \ifvoid\footins\else
+ % \m@mopfootnotebf
+ % \fi
+ % \m@mdoextrafeet
+ % \m@mopsidebar
+ % \m@m@makecoltext
+ % \global\maxdepth \@maxdepth}
\gdef\mem@makecoldblf{%
\m@m@makecolintro
@@ -9996,6 +10059,13 @@
\newcommand{\feetbelowfloat}{\gdef\@makecol{\mem@makecolbf}}
\feetabovefloat
+\newcommand\feetatbottom{\def\m@mopfn@bottom{\vfill\relax}}
+\newcommand\feetbelowragged{\let\m@mopfn@bottom\relax}
+\feetbelowragged
+\newcommand\mem@if@flushbottomF[1]{%
+ \if\mem@flshbot\else#1\fi%
+}
+
% \gdef\@reinserts{%
% \ifvoid\footins\else\insert\footins{\unvbox\footins}\fi
% \m@mdodoreinextrafeet