summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2009-07-17 00:53:37 +0000
committerKarl Berry <karl@freefriends.org>2009-07-17 00:53:37 +0000
commit5371eca0a5672238a07a473483cdd4a7eeb4a31f (patch)
tree4ab78a8646631a30c982f95980393ec441c5224a /Master/texmf-dist/source/latex
parent0e0dcaa932cda9f19311a4858dc096916b1a2b0f (diff)
memoir 1.6180339f (15jul09)
git-svn-id: svn://tug.org/texlive/trunk@14286 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r--Master/texmf-dist/source/latex/memoir/memoir.dtx305
-rw-r--r--Master/texmf-dist/source/latex/memoir/memoir.ins6
-rw-r--r--Master/texmf-dist/source/latex/memoir/mempatch.dtx3
3 files changed, 264 insertions, 50 deletions
diff --git a/Master/texmf-dist/source/latex/memoir/memoir.dtx b/Master/texmf-dist/source/latex/memoir/memoir.dtx
index 51c77c81488..5a05f2e6a4f 100644
--- a/Master/texmf-dist/source/latex/memoir/memoir.dtx
+++ b/Master/texmf-dist/source/latex/memoir/memoir.dtx
@@ -18,7 +18,7 @@
% This work consists of the files listed in the README file.
%
% \fi
-% \CheckSum{27993}
+% \CheckSum{28128}
%
% \changes{v0.1}{2001/05/20}{First public alpha release}
% \changes{v0.2}{2001/06/03}{First beta release}
@@ -73,6 +73,11 @@
% \changes{v1.6180339c}{2009/01/25}{A few more}
% \changes{v1.6180339d}{2009/02/04}{Fixed a bug in the running
% head/foot widths}
+% \changes{v1.6180339f}{2009/03/16}{Start of `f' version.}
+% \changes{v1.6180339f}{2009/03/16}{Fixed problem with companion pagestyle
+% and added 2 col Toc}
+% \changes{v1.6180339f}{2009/04/25}{Extended description lists}
+% \changes{v1.6180339f}{2009/07/12}{Added three \cs{memlet...} macros}
%
% \def\dtxfile{memoir.dtx}
%
@@ -103,6 +108,7 @@
% \def\fileversion{v1.6180339c} \def\filedate{2009/01/25}
% \def\fileversion{v1.6180339d} \def\filedate{2009/02/04}
% \def\fileversion{v1.6180339e} \def\filedate{2009/02/06}
+% \def\fileversion{v1.6180339f} \def\filedate{2009/07/12}
% \title{The LaTeX \Lpack{memoir} class for configurable book
% typesetting: Source code\thanks{This
% file (\texttt{\dtxfile}) has version number \fileversion, last revised
@@ -110,7 +116,8 @@
%
% \author{%
% Peter Wilson\thanks{\texttt{herries dot press at earthlink dot net}}\\
-% Herries Press}
+% Herries Press \\
+% (with the assistance of Lars Madsen)}
% \date{\filedate}
% \maketitle
%
@@ -323,7 +330,7 @@
% Announce the name, option files and version for LaTeX2e files:
% \begin{macrocode}
%<class>\ProvidesClass{memoir}%
-%<class> [2009/02/06 v1.6180339e configurable book, report, article document class]
+%<class> [2009/07/12 v1.6180339f configurable book, report, article document class]
%<9pt>\ProvidesFile{mem9.clo}%
%<9pt> [2008/01/30 v0.4 memoir class 9pt size option]
%<10pt>\ProvidesFile{mem10.clo}%
@@ -630,6 +637,25 @@
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\memletcmdtxt}
+% \begin{macro}{\memlettxttxt}
+% \begin{macro}{\memlettxtcmd}
+% More utility macros (for the user but perhaps better not to tell them about
+% it in the manual) \\
+% \verb?\memletcmdtxt{\cmd}{txt} -> \let\cmd\txt? \\
+% \verb?\memlettxttxt{txta}{txtb} -> \let\txta\txtb? \\
+% \verb?\memlettxtcmd{txt}{\cmd} -> \let\txt\cmd? \\
+% \changes{v1.6180339f}{2009/06/25}{Added \cs{memletcmdtxt}, \cs{memlettxttxt}
+% and \cs{memlettxtcmd}}
+% \begin{macrocode}
+\newcommand*{\memletcmdtxt}[2]{\expandafter\let\expandafter#1\csname#2\endcsname}
+\newcommand*{\memlettxttxt}[1]{\expandafter\memletcmdtxt\csname#1\endcsname}
+\newcommand*{\memlettxtcmd}[2]{\expandafter\let\csname#1\endcsname#2}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
% \begin{macro}{\@nameedef}
% A shorthand for using \cs{protected@edef}.
% \begin{macrocode}
@@ -2175,6 +2201,26 @@
% \end{macrocode}
%
%
+% \changes{v1.6180339f}{2009/07/12}{Added dead man switch for etex}
+% \subsection{ETeX}
+%
+% If found we automatically load the eTeX package right after
+% executing the class options. Though, some odd \LaTeX\ installations
+% may have the eTeX pacakge, but is not based on eTeX (eventhough that
+% is what the LaTeX-project have recommended for several years now),
+% so we add a dead mans switch to disable the loading.
+% \begin{mode}{\ifmem@noetex}
+% \begin{macrocode}
+\newif\ifmem@noetex
+\DeclareOption{noetex}{\mem@noetextrue}
+
+% \end{macrocode}
+% \end{mode}
+%
+%
+%
+%
+%
% \section{Executing Options} \label{sec:xopt}
%
% Here we execute the default options to initialize certain
@@ -2207,7 +2253,13 @@
\fi
% \end{macrocode}
-%
+% Load the eTeX package if found, and if the user has not explicitly
+% asked us not to.
+% \begin{macrocode}
+\ifmem@noetex\relax\else
+ \IfFileExists{etex.sty}{\RequirePackage{etex}}{}
+\fi
+% \end{macrocode}
% \begin{macro}{\memoirpostopthook}
% A user could define this \emph{before} the \cs{documentclass} command
% to do something at this point. For example, to set up a new stock size: \\
@@ -4640,7 +4692,12 @@
% \begin{macrocode}
\@settopoint\textwidth
\@settopoint\oddsidemargin
- \@settopoint\evensidemargin}
+ \@settopoint\evensidemargin
+% \end{macrocode}
+% Fix standard page layouts after possible change of \cs{textwidth}.
+% \changes{v1.6180339f}{2009/03/16}{Added \cs{fixheaderwidths} to \cs{fixthelayout}}
+% \begin{macrocode}
+ \fixheaderwidths}
% \end{macrocode}
% \end{macro}
@@ -5357,9 +5414,9 @@
% \begin{macro}{\makeheadfootvposition}
% The headers and footers are typeset inside \cs{parbox}'es, using
% \cs{makeheadfootvposition}\marg{style}\marg{headvpos}\marg{footvpost}
-% users can specify whether the alignment should be b,t or c.The
-% detault is b.
-% \changes{v1.6180339c}{2009/01/13}{Added support for for
+% users can specify whether the alignment should be b,t or~c.The
+% default is~b.
+% \changes{v1.6180339c}{2009/01/13}{Added support for
% controlling the alignment of the headers and footers}
% \begin{macrocode}
\newcommand*\makeheadfootvposition[3]{%
@@ -6216,6 +6273,23 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\fixheaderwidths}
+% The companion pagestyle, at least, needs adjusting (at \cs{fixthelayout} time)
+% if the \cs{textwidth} has changed from its initial value.
+% \changes{v1.6180339f}{2009/03/16}{Added \cs{fixheaderwidths}}
+% \begin{macrocode}
+\newcommand*{\fixheaderwidths}{%
+ % companion pagestyle
+ \setlength{\headwidth}{\textwidth}
+ \addtolength{\headwidth}{\marginparsep}
+ \addtolength{\headwidth}{\marginparwidth}
+ \makerunningwidth{companion}{\headwidth}
+ \makeheadrule{companion}{\headwidth}{\normalrulethickness}
+ \makefootrule{companion}{\textwidth}{\footruleheight}{\footruleskip}
+}
+
+% \end{macrocode}
+% \end{macro}
%
%
% \subsection{Page numbering}
@@ -7415,14 +7489,24 @@
\newcommand{\frontmatter}{%
\@ifstar{\@smemfront}{\@memfront}}
% \end{macrocode}
+% \begin{macro}{\@memfront@floats}
+% \changes{v1.6180339f}{Added \cs{@memfront@floats}}
+% Factoring out the float counter domination, in case someone wants
+% something added or changed
+% \begin{macrocode}
+\newcommand\@memfront@floats{%
+ \counterwithout{figure}{chapter}
+ \counterwithout{table}{chapter}
+}
+% \end{macrocode}
+% \end{macro}
% \begin{macro}{\@smemfront}
% \begin{macrocode}
\newcommand{\@smemfront}{%
\cleardoublepage
\@mainmatterfalse
\setcounter{secnumdepth}{-10}
- \counterwithout{figure}{chapter}
- \counterwithout{table}{chapter}
+ \@memfront@floats
}
% \end{macrocode}
% \end{macro}
@@ -7455,6 +7539,17 @@
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\@memmain@floats}
+% \changes{v1.6180339f}{Added \cs{@memmain@floats}}
+% Factoring out the float counter domination, in case someone wants
+% something added or changed
+% \begin{macrocode}
+\newcommand\@memmain@floats{%
+ \counterwithin{figure}{chapter}
+ \counterwithin{table}{chapter}
+}
+% \end{macrocode}
+% \end{macro}
% \begin{macro}{\@smemmain}
% If \cs{frontmatter} and \cs{mainmatter} are used with the article option,
% then a page numbering / margin problem can occur if the frontmatter ends
@@ -7488,8 +7583,7 @@
\fi
\else
\cleardoublepage
- \counterwithin{figure}{chapter}
- \counterwithin{table}{chapter}
+ \@memmain@floats
\fi}
% \end{macrocode}
% \end{macro}
@@ -7502,6 +7596,19 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\@memback@floats}
+% \changes{v1.6180339f}{Added \cs{@memback@floats}}
+% Factoring out the float counter domination, in case someone wants
+% something added or changed
+% \begin{macrocode}
+\newcommand\@memback@floats{%
+ \counterwithout{figure}{chapter}
+ \counterwithout{table}{chapter}
+ \setcounter{figure}{0}
+ \setcounter{table}{0}
+}
+% \end{macrocode}
+% \end{macro}
% \begin{macro}{\backmatter}
% This command turns off chapter numbering but leaves the page numbering alone.
% It twiddles the numbering caption numbering.
@@ -7523,10 +7630,7 @@
\@mainmatterfalse
\setcounter{secnumdepth}{-10}
\ifartopt\else
- \counterwithout{figure}{chapter}
- \counterwithout{table}{chapter}
- \setcounter{figure}{0}
- \setcounter{table}{0}
+ \@memback@floats
\fi}
% \end{macrocode}
@@ -11720,7 +11824,7 @@
% \subsection{Description}
%
% The class defines two description environment, the standard one and a `block'
-% one.
+% one, and also two semi-configurable versions.
%
% \changes{v1.2}{2002/07/27}{Now two `description' environments.}
%
@@ -11771,6 +11875,50 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{environment}{labelled}
+% This is a version of the description environment which takes the
+% name, without the backslash, of some \cs{labelcode} as its argument.
+% For example:
+% \begin{verbatim}
+% \newcommand*{\sflabel}[1]{\hspace\labelsep \normalfont\sffamily #1}
+% \begin{labelled}{sflabel}
+% \item[label] using a sans font for the labels
+% \end{verbatim}
+% \changes{v1.6180339f}{2009/04/25}{Added labelled environment}
+% \begin{macrocode}
+\newenvironment{labelled}[1]%
+ {\list{}{\labelwidth\z@ \itemindent-\leftmargin
+ \def\m@malabel{\@nameuse{#1}} \let\makelabel\m@malabel}}%
+ {\endlist}
+
+% \end{macrocode}
+% \end{environment}
+%
+% \begin{environment}{flexlabelled}
+% \verb?\begin{flexlabelled}{labelcode}{labelwidth}{labelsep}{itemindent}{leftmargin}{rightmargin}?
+% lets you specify some of the parameters for a description-like list.
+% The first argument is as for the labelled environment. The others are all
+% lengths for the various parameters; a \verb?*? instead of a length means
+% that that argument is to be ignored.
+% \changes{v1.6180339f}{2009/04/25}{Added flexlabelled environment}
+% \begin{macrocode}
+\newenvironment{flexlabelled}[6]%
+ {\list{}{\nametest{#2}{*}%
+ \ifsamename\else \labelwidth #2 \fi
+ \nametest{#3}{*}%
+ \ifsamename\else \labelsep #3 \fi
+ \nametest{#4}{*}%
+ \ifsamename\else \itemindent #4 \fi
+ \nametest{#5}{*}%
+ \ifsamename\else \leftmargin #5 \fi
+ \nametest{#6}{*}%
+ \ifsamename\else \rightmargin #6 \fi
+ \def\m@malabel{\@nameuse{#1}} \let\makelabel\m@malabel}}%
+ {\endlist}
+
+% \end{macrocode}
+% \end{environment}
+%
%
% \subsection{Quotation}
%
@@ -17755,35 +17903,44 @@
% \begin{macrocode}
\ifdim\wd\@tempboxa<\@contcwidth \centering \fi
\fi
- \if@conthang
+% \end{macrocode}
+% Hanging and indenting doesn't apply to short captions, so do these
+% now.
+% \changes{v1.6180339f}{2009/06/25}{Short captions no longer hang or indent}
+% \begin{macrocode}
+ \ifdim\wd\@tempboxa<\linewidth
+ \@contpre
+ {\@contnfont #1\@contdelim}\@memtempa
+ {\@contcshortstyle \@conttfont #2\@contfinal\par}
+ \else
+ \if@conthang
% \end{macrocode}
% For a hanging caption we have to measure the width of the caption name,
% then typeset the whole caption in a hanging paragraph.
% \changes{v1.1}{2002/03/10}{Changed code for hangcaption in \cs{@makecaption}}
% \begin{macrocode}
- \sbox\@tempboxa{\@contnfont #1\@contdelim}
- \@contpre%
- {\@contcstyle\hangindent=\wd\@tempboxa
- \noindent\box\@tempboxa\@memtempa \@conttfont #2\@contfinal\par}
- \else
- \if@contindent
+ \sbox\@tempboxa{\@contnfont #1\@contdelim}
+ \@contpre%
+ {\@contcstyle\hangindent=\wd\@tempboxa
+ \noindent\box\@tempboxa\@memtempa \@conttfont #2\@contfinal\par}
+ \else
+ \if@contindent
% \end{macrocode}
% An indented caption is similar, except the amount of indentation is
% kept in \cs{@contindw}.
% \begin{macrocode}
- \@contpre%
- {\@contnfont #1\@contdelim}\@memtempa
- {\@contcstyle\hangindent=\@contindw
- \hangafter=\@ne\@conttfont #2\@contfinal\par}% <- v1.4
- \else
+ \@contpre%
+ {\@contnfont #1\@contdelim}\@memtempa
+ {\@contcstyle\hangindent=\@contindw
+ \hangafter=\@ne\@conttfont #2\@contfinal\par}% <- v1.4
+ \else
% \end{macrocode}
% For the normal style, just typeset the caption.
% \begin{macrocode}
- \@contpre%
- {\@contnfont #1\@contdelim}\@memtempa
- {\ifdim\wd\@tempboxa<\linewidth
- \@contcshortstyle\else \@contcstyle\fi% <- v1.4
- \@conttfont #2\@contfinal\par}
+ \@contpre%
+ {\@contnfont #1\@contdelim}\@memtempa
+ {\@contcstyle \@conttfont #2\@contfinal\par}
+ \fi
\fi
\fi
% \end{macrocode}
@@ -20190,29 +20347,62 @@
% This class provides a means of creating new Lists whose headings are
% parameterized, thereby killing two birds with one stone.
%
-% In this class the tables of
-% contents, figures etc. are always set in single-column style.
+% In the standard classes the tables of contents, figures etc. are always
+% set in single-column style. In this class you can choose one- or two-column
+% ToCs, etc.
% The titles are added to the ToC, unless the starred versions of the
% commands are used.
+% \changes{v1.6180339f}{2009/03/16}{Enabled two-column ToC, etc}
%
% \begin{macro}{\ensureonecol}
% \begin{macro}{\restorefromonecol}
-% The ToC, LoF, etc are always set in a single column. These two
-% macros cooperate to swith from two-columns to one column, and back again.
+% These two
+% macros cooperate to switch from two-columns to one column, and back again.
% \changes{v1.0a}{2002/01/24}{Deleted \cs{ensuretwocol} and
% \cs{restorefromtwocol} as they were unused. BUT later reinstated them.}
+% \begin{macro}{\onecoltocetc}
+% \begin{macro}{\twocoltocetc}
+% \begin{macro}{\doccoltocetc}
+% These macros define \cs{ensureonecol} and \cs{restorefromonecol} such that
+% \begin{itemize}
+% \item \cs{onecoltocetc} ToCs, etc., will be set in one column (the default)
+% \item \cs{twocoltocetc} ToCs, etc., will be set in two columns
+% \item \cs{doccoltocetc} ToCs, etc., will be set in column(s) corresponding
+% to the document's (onecolumn/twocolumn) option.
+% \end{itemize}
+% \changes{v1.6180339f}{2009/03/16}{Added \cs{onecoltocetc}, \cs{twocoltocetc}
+% and \cs{doccoltocetc}}
% \begin{macrocode}
-\newcommand*{\ensureonecol}{%
- \if@twocolumn
- \@restonecoltrue\onecolumn
- \else
- \@restonecolfalse
- \fi}
-\newcommand*{\restorefromonecol}{\if@restonecol\twocolumn\fi}
+\newcommand*{\onecoltocetc}{%
+ \def\ensureonecol{%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse
+ \fi}%
+ \def\restorefromonecol{\if@restonecol\twocolumn\fi}}
+\newcommand*{\twocoltocetc}{%
+ \def\ensureonecol{%
+ \if@twocolumn
+ \@restonecoltrue
+ \else
+ \@restonecolfalse\twocolumn
+ \fi}%
+ \def\restorefromonecol{\if@restonecol\else\onecolumn\fi}}
+\newcommand*{\doccoltocetc}{%
+ \let\ensureonecol\relax
+ \let\restorefromonecol\relax}
+% \end{macrocode}
+% Set the default
+% \begin{macrocode}
+\onecoltocetc
% \end{macrocode}
% \end{macro}
% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
%
%
% \begin{macro}{\cftparskip}
@@ -21140,7 +21330,7 @@
\newcommand{\cftchapterafterpnum}{}
\newcommand*{\cftchapterformatpnum}[1]{%
\hb@xt@\@pnumwidth{\hfil\cftchapterpagefont #1}}
- \newcommand*{\cftchapterfillnum}[1]{
+ \newcommand*{\cftchapterfillnum}[1]{%
{\cftchapterleader}\nobreak
\cftchapterformatpnum{#1}%
\cftchapterafterpnum\par}
@@ -26528,6 +26718,8 @@
% courtesy James Szinger (mempatch v311)}
% \changes{v1.61803}{2008/01/30}{Added \cs{ifshowtrims} to \cs{mem@shipii}
% (mempatch v4.5)}
+% \changes{v1.6180339f}{2009/06/24}{Added Dan Luecking's fix to
+% \cs{mem@shippii} to cater for another merry hyperref change!}
% \begin{macrocode}
\newcommand*{\mem@shipi}{%
\ifvoid\@cclv\expandafter\aftergroup\fi\mem@shipii}
@@ -26536,7 +26728,26 @@
\mem@oldshipout\box\@cclv
\else
\ifshowtrims
- \mem@oldshipout\vbox{\trimmarks\unvbox\@cclv}%
+% \end{macrocode}
+% On 2009/05/02 Dan Luecking (ctt \emph{Re: recent hyperref error (e.g.
+% v6.78q not v6.78f) with memoir[showtrims]}) found that \texttt{hpdftex.def}
+% included the code:
+% \begin{verbatim}
+% \def\Hy@FixNotFirstPage{%
+% \gdef\Hy@FixNotFirstPage{%
+% \setbox\AtbeginShipoutBox=\hbox{%
+% \copy\AtBeginShipoutBox
+% }%
+% }%
+% }
+% \AtBeginShipout{\Hy@FixNotFirstPage}
+% \end{verbatim}
+% which turns box 255 (\cs{@cclv}) into an hbox whereas memoir expected a vbox
+% (which has worked happily for many years).
+% Dan suggested replacing my original \\
+% \verb?\mem@oldshipout\vbox{\trimmarks\unvbox\@cclv}? as below:
+% \begin{macrocode}
+ \mem@oldshipout\vbox{\trimmarks \ifvbox \@cclv \unvbox \else \box \fi \@cclv}%
\else
\mem@oldshipout\box\@cclv
\fi
diff --git a/Master/texmf-dist/source/latex/memoir/memoir.ins b/Master/texmf-dist/source/latex/memoir/memoir.ins
index ecc94ebe73e..52ffc1fbb83 100644
--- a/Master/texmf-dist/source/latex/memoir/memoir.ins
+++ b/Master/texmf-dist/source/latex/memoir/memoir.ins
@@ -1,6 +1,6 @@
%% memoir.ins
%% Author: Peter Wilson (herries dot press at earthlink dot net)
-%% Copyright 2001--2008 Peter R. Wilson
+%% Copyright 2001--2009 Peter R. Wilson
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -12,6 +12,7 @@
%% LaTeX version 2003/06/01 or later.
%%
%% This work has the LPPL maintenance status "author-maintained".
+%% (Note: Lars Madsen is gradually taking over maintenance)
%%
%% This work consists of the files listed in the README file.
%%
@@ -27,7 +28,7 @@
Author: Peter Wilson (herries dot press at earthlink dot net)
Herries Press
- Copyright 2001--2008 Peter R. Wilson
+ Copyright 2001--2009 Peter R. Wilson
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either
@@ -39,6 +40,7 @@
LaTeX version 2003/06/01 or later.
This work has the LPPL maintenance status "author-maintained".
+ (Note: Lars Madsen is gradually taking over maintenance)
This work consists of the files listed in the README file.
diff --git a/Master/texmf-dist/source/latex/memoir/mempatch.dtx b/Master/texmf-dist/source/latex/memoir/mempatch.dtx
index 12064cebf32..d69258be69f 100644
--- a/Master/texmf-dist/source/latex/memoir/mempatch.dtx
+++ b/Master/texmf-dist/source/latex/memoir/mempatch.dtx
@@ -66,6 +66,7 @@
% \def\fileversion{v6.0a} \def\filedate{2008/08/23}
% \def\fileversion{v6.0b} \def\filedate{2009/01/18}
% \def\fileversion{v6.0c} \def\filedate{2009/02/06}
+% \def\fileversion{v6.0d} \def\filedate{2009/07/12}
%
% \title{The LaTeX \Lpack{memoir} class for configurable book
% typesetting: Code patches\thanks{This
@@ -831,7 +832,7 @@
% ^^A \ProvidesFile{mempatch.sty}[2008/05/26 v5.0 Patches for memoir class v1.61803]
% ^^A \ProvidesFile{mempatch.sty}[2008/07/11 v5.1 Patches for memoir class v1.618033]
% \begin{macrocode}
-\ProvidesFile{mempatch.sty}[2008/07/23 v6.0 Patches for memoir class v1.6180339]
+\ProvidesPackage{mempatch.sty}[2009/07/12 v6.0d Patches for memoir class v1.6180339]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Version 6.0 was released simultaneously with version 1.6180339