summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-02-15 00:52:40 +0000
committerKarl Berry <karl@freefriends.org>2011-02-15 00:52:40 +0000
commit82ac0ba9ed70499005296836d8be39181785d3ba (patch)
treefaee2e9e0c340f6a4a33f094384817dee4757d32
parent675a394155390352cfadf72bc865e0bfe387f4e4 (diff)
mh (13feb11)
git-svn-id: svn://tug.org/texlive/trunk@21405 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/mh/breqn-technotes.pdfbin173633 -> 174292 bytes
-rw-r--r--Master/texmf-dist/doc/latex/mh/breqn.pdfbin514315 -> 514327 bytes
-rw-r--r--Master/texmf-dist/doc/latex/mh/empheq.pdfbin305491 -> 305504 bytes
-rw-r--r--Master/texmf-dist/doc/latex/mh/flexisym.pdfbin243073 -> 243084 bytes
-rw-r--r--Master/texmf-dist/doc/latex/mh/mathstyle.pdfbin159224 -> 159236 bytes
-rw-r--r--Master/texmf-dist/doc/latex/mh/mathtools.pdfbin364988 -> 372791 bytes
-rw-r--r--Master/texmf-dist/doc/latex/mh/mhsetup.pdfbin233706 -> 233716 bytes
-rw-r--r--Master/texmf-dist/doc/latex/mh/xfrac.pdfbin532373 -> 532628 bytes
-rw-r--r--Master/texmf-dist/source/latex/mh/breqn.dtx6
-rw-r--r--Master/texmf-dist/source/latex/mh/flexisym.dtx6
-rw-r--r--Master/texmf-dist/source/latex/mh/mathstyle.dtx6
-rw-r--r--Master/texmf-dist/source/latex/mh/mathtools.dtx406
-rw-r--r--Master/texmf-dist/source/latex/mh/mhsetup.dtx8
-rw-r--r--Master/texmf-dist/source/latex/mh/xfrac.dtx15
-rw-r--r--Master/texmf-dist/tex/latex/mh/breqn.sty3
-rw-r--r--Master/texmf-dist/tex/latex/mh/cmbase.sym3
-rw-r--r--Master/texmf-dist/tex/latex/mh/flexisym.sty3
-rw-r--r--Master/texmf-dist/tex/latex/mh/mathpazo.sym3
-rw-r--r--Master/texmf-dist/tex/latex/mh/mathptmx.sym3
-rw-r--r--Master/texmf-dist/tex/latex/mh/mathstyle.sty3
-rw-r--r--Master/texmf-dist/tex/latex/mh/mathtools.sty130
-rw-r--r--Master/texmf-dist/tex/latex/mh/mhsetup.sty3
-rw-r--r--Master/texmf-dist/tex/latex/mh/msabm.sym3
-rw-r--r--Master/texmf-dist/tex/latex/mh/xfrac.sty5
24 files changed, 533 insertions, 73 deletions
diff --git a/Master/texmf-dist/doc/latex/mh/breqn-technotes.pdf b/Master/texmf-dist/doc/latex/mh/breqn-technotes.pdf
index d6b055d8491..b7a54844378 100644
--- a/Master/texmf-dist/doc/latex/mh/breqn-technotes.pdf
+++ b/Master/texmf-dist/doc/latex/mh/breqn-technotes.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/mh/breqn.pdf b/Master/texmf-dist/doc/latex/mh/breqn.pdf
index b5c25702db4..e121dc27343 100644
--- a/Master/texmf-dist/doc/latex/mh/breqn.pdf
+++ b/Master/texmf-dist/doc/latex/mh/breqn.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/mh/empheq.pdf b/Master/texmf-dist/doc/latex/mh/empheq.pdf
index 0fcaa7e0c43..a4c1de479e9 100644
--- a/Master/texmf-dist/doc/latex/mh/empheq.pdf
+++ b/Master/texmf-dist/doc/latex/mh/empheq.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/mh/flexisym.pdf b/Master/texmf-dist/doc/latex/mh/flexisym.pdf
index 14b5ac5841d..7132e55f377 100644
--- a/Master/texmf-dist/doc/latex/mh/flexisym.pdf
+++ b/Master/texmf-dist/doc/latex/mh/flexisym.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/mh/mathstyle.pdf b/Master/texmf-dist/doc/latex/mh/mathstyle.pdf
index 935c9b58974..577d20ac174 100644
--- a/Master/texmf-dist/doc/latex/mh/mathstyle.pdf
+++ b/Master/texmf-dist/doc/latex/mh/mathstyle.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/mh/mathtools.pdf b/Master/texmf-dist/doc/latex/mh/mathtools.pdf
index aa8ee57c4b4..fe9f57a8fa1 100644
--- a/Master/texmf-dist/doc/latex/mh/mathtools.pdf
+++ b/Master/texmf-dist/doc/latex/mh/mathtools.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/mh/mhsetup.pdf b/Master/texmf-dist/doc/latex/mh/mhsetup.pdf
index 5cf57ec99bb..281a7b13e34 100644
--- a/Master/texmf-dist/doc/latex/mh/mhsetup.pdf
+++ b/Master/texmf-dist/doc/latex/mh/mhsetup.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/mh/xfrac.pdf b/Master/texmf-dist/doc/latex/mh/xfrac.pdf
index a26e64f09a7..79b1402a7df 100644
--- a/Master/texmf-dist/doc/latex/mh/xfrac.pdf
+++ b/Master/texmf-dist/doc/latex/mh/xfrac.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/mh/breqn.dtx b/Master/texmf-dist/source/latex/mh/breqn.dtx
index 524cc0c40d7..d1bc7151b99 100644
--- a/Master/texmf-dist/source/latex/mh/breqn.dtx
+++ b/Master/texmf-dist/source/latex/mh/breqn.dtx
@@ -13,7 +13,8 @@
%
% This work has the LPPL maintenance status "maintained".
%
-% This Current Maintainer of this work is Morten Hoegholm.
+% This Current Maintainer of this work is Morten Hoegholm,
+% Lars Madsen, Will Robertson and Joseph Wright.
%
% This work consists of the main source file breqn.dtx
% and the derived files
@@ -90,7 +91,8 @@ LaTeX version 2005/12/01 or later.
This work has the LPPL maintenance status "maintained".
-This Current Maintainer of this work is Morten Hoegholm.
+This Current Maintainer of this work is Morten Hoegholm,
+Lars Madsen, Will Robertson and Joseph Wright.
This work consists of the main source file breqn.dtx
and the derived files
diff --git a/Master/texmf-dist/source/latex/mh/flexisym.dtx b/Master/texmf-dist/source/latex/mh/flexisym.dtx
index 447e6c4a862..c38ac2b43da 100644
--- a/Master/texmf-dist/source/latex/mh/flexisym.dtx
+++ b/Master/texmf-dist/source/latex/mh/flexisym.dtx
@@ -13,7 +13,8 @@
%
% This work has the LPPL maintenance status "maintained".
%
-% This Current Maintainer of this work is Morten Hoegholm.
+% This Current Maintainer of this work is Morten Hoegholm,
+% Lars Madsen, Will Robertson and Joseph Wright.
%
% This work consists of the main source file flexisym.dtx
% and the derived files
@@ -95,7 +96,8 @@ LaTeX version 2005/12/01 or later.
This work has the LPPL maintenance status "maintained".
-This Current Maintainer of this work is Morten Hoegholm.
+This Current Maintainer of this work is Morten Hoegholm,
+Lars Madsen, Will Robertson and Joseph Wright.
This work consists of the main source file flexisym.dtx
and the derived files
diff --git a/Master/texmf-dist/source/latex/mh/mathstyle.dtx b/Master/texmf-dist/source/latex/mh/mathstyle.dtx
index 11af0b06c73..4e21d9853bc 100644
--- a/Master/texmf-dist/source/latex/mh/mathstyle.dtx
+++ b/Master/texmf-dist/source/latex/mh/mathstyle.dtx
@@ -13,7 +13,8 @@
%
% This work has the LPPL maintenance status "maintained".
%
-% This Current Maintainer of this work is Morten Hoegholm.
+% This Current Maintainer of this work is Morten Hoegholm,
+% Lars Madsen, Will Robertson and Joseph Wright.
%
% This work consists of the main source file mathstyle.dtx
% and the derived files
@@ -90,7 +91,8 @@ LaTeX version 2005/12/01 or later.
This work has the LPPL maintenance status "maintained".
-This Current Maintainer of this work is Morten Hoegholm.
+This Current Maintainer of this work is Morten Hoegholm,
+Lars Madsen, Will Robertson and Joseph Wright.
This work consists of the main source file mathstyle.dtx
and the derived files
diff --git a/Master/texmf-dist/source/latex/mh/mathtools.dtx b/Master/texmf-dist/source/latex/mh/mathtools.dtx
index 0cd19171889..4d5ec9945cf 100644
--- a/Master/texmf-dist/source/latex/mh/mathtools.dtx
+++ b/Master/texmf-dist/source/latex/mh/mathtools.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2004-2008 by Morten Hoegholm <mh.ctan@gmail.com>
+% Copyright (C) 2004-2011 by Morten Hoegholm <mh.ctan@gmail.com>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either
@@ -66,7 +66,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: mathtools 20010/07/11 v1.08 (MH)}
+\Msg{* Package: mathtools 20011/02/12 v1.10}
\Msg{************************************************************************}
\keepsilent
@@ -76,7 +76,7 @@
This is a generated file.
-Copyright (C) 2002-2010 by Morten Hoegholm <mh.ctan@gmail.com>
+Copyright (C) 2002-2011 by Morten Hoegholm <mh.ctan@gmail.com>
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either
@@ -88,7 +88,8 @@ LaTeX version 2005/12/01 or later.
This work has the LPPL maintenance status "maintained".
-This Current Maintainer of this work is Morten Hoegholm.
+This Current Maintainer of this work is Morten Hoegholm,
+Lars Madsen, Will Robertson and Joseph Wright.
This work consists of the main source file mathtools.dtx
and the derived files
@@ -126,7 +127,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{mathtools.drv}%
- [2010/07/11 v1.08 mathematical typesetting tools (MH)]
+ [2011/02/12 v1.10 mathematical typesetting tools]
\documentclass{ltxdoc}
\IfFileExists{fourier.sty}{\usepackage{fourier}}{}
\addtolength\marginparwidth{-25pt}
@@ -180,8 +181,6 @@ and the derived files
}%
}
-
-
\newcommand*\cttPosting[2]{%
\hskip1sp
\marginpar{%
@@ -259,12 +258,13 @@ and the derived files
%
% \GetFileInfo{mathtools.drv}
%
-% \CheckSum{2348}
+% \CheckSum{2557}
%
% \title{The \pkg{mathtools} package\thanks{This file has version number
% \fileversion, last revised \filedate.}}
%
-% \author{Morten H\o gholm}
+% \author{Morten H\o gholm, Lars Madsen,\\ Will Robertson and Joseph
+% Wright\\ (maintainers)}
% \date{\filedate}
%
% \maketitle
@@ -295,14 +295,14 @@ and the derived files
% released as stand-alone packages.
%
%
-% The \pkg{mathtools} package is exactly what its name implies:
-% tools for mathematical typesetting. It is a collection of many of
-% these often needed small tweaks---with some big tweaks added as
-% well. It can only do so by having me harvesting newsgroups for
-% code and/or you writing me with wishes for code to be included, so
-% if you have any good macros or just macros that help you when
-% writing mathematics, then don't hesitate to report them to me. I
-% can be reached at
+% The \pkg{mathtools} package is exactly what its name implies: tools
+% for mathematical typesetting. It is a collection of many of these
+% often needed small tweaks---with some big tweaks added as well. It
+% can only do so by having harvesting newsgroups for code and/or you
+% writing the maintainers with wishes for code to be included, so if
+% you have any good macros or just macros that help you when writing
+% mathematics, then don't hesitate to report them to us. We can be
+% reached at
% \begin{quote}\email{mh.ctan@gmail.com}\end{quote}
% This is of course also the address to use in case of bug reports.
%
@@ -1069,9 +1069,64 @@ and the derived files
% The optional argument (default is \texttt{[c]}) can be any column
% type valid in the usual \env{array} environment.
%
-%
-%
-%
+% While we are at it, we also provide fenced versions of the
+% \env{smallmatrix} environment, To keep up with the naming of the
+% large matrix environments, we provide both a starred and a
+% non-starred version. Since \env{smallmatrix} is defined in a
+% different manner than the \env{matrix} environment, the option to
+% say \env{smallmatrix*} \emph{has} to be either \texttt{c},
+% \texttt{l} \emph{or}~\texttt{r}. The default is \texttt{c}, which
+% can be changed globally using the \key{smallmatrix-align}=\meta{c,l
+% or r}.
+% \begin{codesyntax}
+% \SpecialEnvIndex{smallmatrix*}\cs{begin}\arg{smallmatrix*}\texttt{ }\oarg{col}
+% \meta{contents} \cs{end}\arg{smallmatrix*}\\
+% \SpecialEnvIndex{psmallmatrix}\cs{begin}\arg{psmallmatrix}
+% \meta{contents} \cs{end}\arg{psmallmatrix}\\
+% \SpecialEnvIndex{psmallmatrix*}\cs{begin}\arg{psmallmatrix*}\oarg{col}
+% \meta{contents} \cs{end}\arg{psmallmatrix*}\\
+% \SpecialEnvIndex{bsmallmatrix}\cs{begin}\arg{bsmallmatrix}
+% \meta{contents} \cs{end}\arg{bsmallmatrix}\\
+% \SpecialEnvIndex{bsmallmatrix*}\cs{begin}\arg{bsmallmatrix*}\oarg{col}
+% \meta{contents} \cs{end}\arg{bsmallmatrix*}\\
+% \SpecialEnvIndex{Bsmallmatrix}\cs{begin}\arg{Bsmallmatrix}
+% \meta{contents} \cs{end}\arg{Bsmallmatrix}\\
+% \SpecialEnvIndex{Bsmallmatrix*}\cs{begin}\arg{Bsmallmatrix*}\oarg{col}
+% \meta{contents} \cs{end}\arg{Bsmallmatrix*}\\
+% \SpecialEnvIndex{vsmallmatrix}\cs{begin}\arg{vsmallmatrix}
+% \meta{contents} \cs{end}\arg{vsmallmatrix}\\
+% \SpecialEnvIndex{vsmallmatrix*}\cs{begin}\arg{vsmallmatrix*}\oarg{col}
+% \meta{contents} \cs{end}\arg{vsmallmatrix*}\\
+% \SpecialEnvIndex{Vsmallmatrix}\cs{begin}\arg{Vsmallmatrix}
+% \meta{contents} \cs{end}\arg{Vsmallmatrix}\\
+% \SpecialEnvIndex{Vsmallmatrix*}\cs{begin}\arg{Vsmallmatrix*}\oarg{col}
+% \meta{contents} \cs{end}\arg{Vsmallmatrix*}\\
+% \SpecialKeyIndex{smallmatrix-align}\makebox{$\key{smallmatrix-align}=\meta{c,l or r}$}\\
+% \SpecialKeyIndex{smallmatrix-inner-space}\makebox{$\key{smallmatrix-inner-space}=\cs{,}$}
+% \end{codesyntax}
+% \ProvidedBy{Rasmus Villemoes}{2011/01/17}
+% \begin{verbatim}
+% \[
+% \begin{bsmallmatrix} a & -b \\ -c & d \end{bsmallmatrix}
+% \begin{bsmallmatrix*}[r] a & -b \\ -c & d \end{bsmallmatrix*}
+% \]
+% \end{verbatim}
+% yields
+% \[
+% \begin{bsmallmatrix} a & -b \\ -c & d \end{bsmallmatrix}
+% \begin{bsmallmatrix*}[r] a & -b \\ -c & d \end{bsmallmatrix*}
+% \]
+% Inside the \verb?Xsmallmatrix? construction a small space is
+% inserted between the fences and the contents, the size of it can be
+% changed using \key{smallmatrix-align}=\meta{some spacing command},
+% the default is \cs{,}.
+%
+% As an extra trick the fences will behave as open and closing fences
+% inconstract to their auto-scaling nature.\footnote{\cs{left} and
+% \cs{right} does \emph{not} produce open an closing fences, thus
+% the space before or after may be too large. Inside this
+% construction they behave.}
+%
% \subsubsection{The \env{multlined} environment}
%
% \begin{codesyntax}
@@ -1358,6 +1413,89 @@ and the derived files
% \framebox[1.5cm]{} &= \framebox[2cm]{} &&
% \end{alignat*}
%
+%
+% \subsubsection{Centered \cs{vdots}}
+%
+% If one want to mark a vertical continuation, there is
+% the \verb?\vdots? command, but combine this with an alignment and
+% we get something rather suboptimal
+% \FeatureRequest{Bruno Le Floch \\(and many others)}{2011/01/25}
+% \begin{align*}
+% \framebox[1.5cm]{} &= \framebox[3cm]{}\\
+% & \vdots\\
+% &= \framebox[3cm]{}
+% \end{align*}
+% It would be nice to have (1) a \verb?\vdots? centered within the
+% width of another symbol, and (2) a construction similar to
+% \verb?\ArrowBetweenLines? that does not take up so much space.
+% We provide both.
+% \begin{codesyntax}
+% \SpecialUsageIndex{\vdotswithin}\cs{vdotswithin}\marg{symbol}\\
+% \SpecialUsageIndex{\shortvdotswithin}\cs{shortvdotswithin}\marg{symbol}\\
+% \SpecialUsageIndex{\shortvdotswithin*}\cs{shortvdotswithin*}\marg{symbol}\\
+% \SpecialUsageIndex{\MTFlushSpaceAbove}\cs{MTFlushSpaceAbove}\\
+% \SpecialUsageIndex{\MTFlushSpaceBelow}\cs{MTFlushSpaceBelow}\\
+% \SpecialKeyIndex{shortvdotsadjustabove}\makebox{$\key{shortvdotsadjustabove}=\meta{length}$}\\
+% \SpecialKeyIndex{shortvdotsadjustbelow}\makebox{$\key{shortvdotsadjustbelow}=\meta{length}$}
+% \end{codesyntax}
+% Two examples in one
+% \begin{verbatim}
+% \begin{align*}
+% a &= b \\
+% & \vdotswithin{=} \\
+% & = c \\
+% \shortvdotswithin{=}
+% & = d
+% \end{align*}
+% \end{verbatim}
+% yielding
+% \begin{align*}
+% a &= b \\
+% & \vdotswithin{=} \\
+% & = c \\
+% \shortvdotswithin{=}
+% & = d
+% \end{align*}
+% Thus \verb?\vdotswithin{=}? create a box corersponding to
+% \verb?{}={}? and typeset a $\vdots$ centered inside it. When doing
+% this as a normal line in an alignment leaves us with excessive space
+% which \verb?\shortvdotswithin{=}? takes care with for us.
+%
+% \verb?\shortvdotswithin{=}? corresponds to
+% \begin{verbatim}
+% \MTFlushSpaceAbove
+% & \vdotswithin{=} \\
+% \MTFlushSpaceBelow
+% \end{verbatim}
+% whereas \verb?\shortvdotswithin*{=}? is the case with
+% \verb?\vdotswithin{=} & \\?. This also means one cannot write more
+% on the line when using \verb?\shortvdotswithin? or the starred
+% version. But one can de-construct the macro and arrive at
+% \begin{verbatim}
+% \begin{alignat*}{3}
+% A&+ B &&= C &&+ D \\
+% \MTFlushSpaceAbove
+% &\vdotswithin{+} &&&& \vdotswithin{+}
+% \MTFlushSpaceBelow
+% C &+ D &&= Y &&+K
+% \end{alignat*}
+% \end{verbatim}
+% yielding
+% \begin{alignat*}{3}
+% A&+ B &&= C &&+ D \\
+% \MTFlushSpaceAbove
+% &\vdotswithin{+} &&&& \vdotswithin{+}
+% \MTFlushSpaceBelow
+% C &+ D &&= Y &&+K
+% \end{alignat*}
+% If one has the need for such a construction.
+%
+% The de-spaced version does support the \env{spreadlines}
+% environment. The actual amount of space being \emph{flushed} above
+% and below can be controlled by the user using the two options
+% indicated. Their original values are \verb?2.15\origjot? and
+% \verb?\origjot? respectively (\verb?\origjot? is usually 3pt).
+%
% \subsection{Short intertext}
%
%
@@ -1570,7 +1708,7 @@ and the derived files
% the equal sign, leading to an odd-looking output. The command
% \cs{vcentcolon} is a shorthand for such a vertically centered
% colon, and can be used as in |$a \vcentcolon= b$| and results in
-% the desired output: $a \vcentcolon= b$.
+% the desired output: $a \vcentcolon= b$. % for now
%
% Typing \cs{vcentcolon} every time is quite tedious, so one can use
% the key \key{centercolon} to make the colon active instead.
@@ -2075,11 +2213,13 @@ and the derived files
% \begin{macrocode}
%<*package>
\ProvidesPackage{mathtools}%
- [2010/07/21 v1.08b mathematical typesetting tools (MH)]
+ [2011/02/12 v1.10 mathematical typesetting tools]
% \end{macrocode}
+% \changes{v1.10}{2011/02/12}{Might as well make sure that we need the
+% latest version of \texttt{mhsetup}}
% \begin{macrocode}
\RequirePackage{keyval,calc}
-\RequirePackage{mhsetup}[2007/12/03]
+\RequirePackage{mhsetup}[2010/01/21]
\MHInternalSyntaxOn
% \end{macrocode}
%
@@ -2720,18 +2860,31 @@ and the derived files
% Particularly useful for $ a:=b$, and still correct for
% $f : x\to y$. May be used in any TeX.
% \end{verbatim}
+%
+% Slight change: the colon meaning is given only if \verb|centercolon|
+% is explicitly requested (before it was always assigned even if : remained
+% catcode 12). This allows better interaction with packages like babel
+% that also make colon active.
% \begin{macrocode}
\def\vcentcolon{\mathrel{\mathop\ordinarycolon}}
+\providecommand\ordinarycolon{:}
\begingroup
\catcode`\:=\active
\lowercase{\endgroup
+\def\MT_activate_colon{%
\ifnum\mathcode`\:=32768\relax
\let\ordinarycolon= :%
\else
\mathchardef\ordinarycolon\mathcode`\: %
- \fi
+ \fi
\let :\vcentcolon
}
+}
+% \end{macrocode}
+% Option processing.
+% The `false' branch can only be requested if the option has previously been set `true'.
+% (By default neither are set.)
+% \begin{macrocode}
\MH_new_boolean:n {center_colon}
\define@key{\MT_options_name:}{centercolon}[true]{
\@ifundefined{MT_active_colon_#1:}
@@ -2741,6 +2894,7 @@ and the derived files
{ \@nameuse{MT_active_colon_#1:} }
}
\def\MT_active_colon_true: {
+ \MT_activate_colon
\MH_if_boolean:nF {center_colon}{
\MH_set_boolean_T:n {center_colon}
\edef\MT_active_colon_false:
@@ -3290,13 +3444,20 @@ and the derived files
% \changes{v1.08}{2010/06/10}{changed to match the change in
% \cs{newcases} plus added rcases and drcases}
% \begin{macrocode}
-\newcases{dcases}{\quad}{$\m@th\displaystyle{##}$\hfil}{$\m@th\displaystyle{##}$\hfil}{\lbrace}{.}
-\newcases{dcases*}{\quad}{$\m@th\displaystyle{##}$\hfil}{{##}\hfil}{\lbrace}{.}
-\newcases{rcases}{\quad}{$\m@th{##}$\hfil}{$\m@th{##}$\hfil}{.}{\rbrace}
-\newcases{rcases*}{\quad}{$\m@th{##}$\hfil}{{##}\hfil}{.}{\rbrace}
-\newcases{drcases}{\quad}{$\m@th\displaystyle{##}$\hfil}{$\m@th\displaystyle{##}$\hfil}{.}{\rbrace}
-\newcases{drcases*}{\quad}{$\m@th\displaystyle{##}$\hfil}{{##}\hfil}{.}{\rbrace}
-\newcases{cases*}{\quad}{$\m@th{##}$\hfil}{{##}\hfil}{\lbrace}{.}
+\newcases{dcases}{\quad}{%
+ $\m@th\displaystyle{##}$\hfil}{$\m@th\displaystyle{##}$\hfil}{\lbrace}{.}
+\newcases{dcases*}{\quad}{%
+ $\m@th\displaystyle{##}$\hfil}{{##}\hfil}{\lbrace}{.}
+\newcases{rcases}{\quad}{%
+ $\m@th{##}$\hfil}{$\m@th{##}$\hfil}{.}{\rbrace}
+\newcases{rcases*}{\quad}{%
+ $\m@th{##}$\hfil}{{##}\hfil}{.}{\rbrace}
+\newcases{drcases}{\quad}{%
+ $\m@th\displaystyle{##}$\hfil}{$\m@th\displaystyle{##}$\hfil}{.}{\rbrace}
+\newcases{drcases*}{\quad}{%
+ $\m@th\displaystyle{##}$\hfil}{{##}\hfil}{.}{\rbrace}
+\newcases{cases*}{\quad}{%
+ $\m@th{##}$\hfil}{{##}\hfil}{\lbrace}{.}
% \end{macrocode}
% \end{environment}
% \end{environment}
@@ -3369,16 +3530,94 @@ and the derived files
{\left\lVert\MT_matrix_begin:N #1}
{\MT_matrix_end:\right\lVert}
% \end{macrocode}
-% Restore the usual behavior.
-% \begin{macrocode}
-\MHPrecedingSpacesOn
-% \end{macrocode}
% \end{environment}
% \end{environment}
% \end{environment}
% \end{environment}
% \end{environment}
%
+% \changes{v1.10}{2011/02/12}{Added the code below, courtesy of Rasmus Villemoes}
+% Now we are at it why not provide fenced versions of the
+% \env{smallmatrix} construction as well. We will only provide a
+% version that can be adjusted as \env{matrix*} above, thus we keep
+% the * in the name. The implementation is courtesy of Rasmus
+% Villemoes. Rasmus also suggested making the default alignment in
+% these environments globally adjustable, so we did
+% (\texttt{smallmatrix-align=c} by default). It \emph{is} possible to
+% do something similar with the large matrix environments, but that
+% might cause problems with the \texttt{array} package, thus for now
+% we lease that feature alone.
+%
+% The base code is a variation over the original \env{smallmatrix}
+% environmetn fround in \texttt{amsmath}, thus we will not comment it further.
+%
+% TODO: make the code check that the optional argument is either
+% \texttt{c}, \texttt{l} or \texttt{r}.
+% \begin{macrocode}
+\def\MT_smallmatrix_begin:N #1{%
+ \Let@\restore@math@cr\default@tag
+ \baselineskip6\ex@ \lineskip1.5\ex@ \lineskiplimit\lineskip
+ \csname MT_smallmatrix_#1_begin:\endcsname
+}
+\def\MT_smallmatrix_end:{\crcr\egroup\egroup\MT_smallmatrix_inner_space:}
+\def\MT_smallmatrix_l_begin:{\null\MT_smallmatrix_inner_space:\vcenter\bgroup
+ \ialign\bgroup$\m@th\scriptstyle##$\hfil&&\thickspace
+ $\m@th\scriptstyle##$\hfil\crcr
+}
+\def\MT_smallmatrix_c_begin:{\null\MT_smallmatrix_inner_space:\vcenter\bgroup
+ \ialign\bgroup\hfil$\m@th\scriptstyle##$\hfil&&\thickspace\hfil
+ $\m@th\scriptstyle##$\hfil\crcr
+}
+\def\MT_smallmatrix_r_begin:{\null\MT_smallmatrix_inner_space:\vcenter\bgroup
+ \ialign\bgroup\hfil$\m@th\scriptstyle##$&&\thickspace\hfil
+ $\m@th\scriptstyle##$\crcr
+}
+\newenvironment{smallmatrix*}[1][\MT_smallmatrix_default_align:]
+ {\MT_smallmatrix_begin:N #1}
+ {\MT_smallmatrix_end:}
+% \end{macrocode}
+% We would like to keep to the tradition of the \verb?Xmatrix? and
+% \verb?Xmatrix*? macros we added earlier, since most code is similar
+% we define them using a constructor macro. We also apply the trick
+% used within \verb?\DeclarePairedDelimiter(X)? such that \verb?\left?
+% \verb?\right? constructions produce spacings corresponding to
+% \verb?\mathopen? and \verb?\mathclose?.
+% \begin{macrocode}
+\def\MT_fenced_sm_generator:nnn #1#2#3{%
+ \@ifundefined{#1}{%
+ \newenvironment{#1}
+ {\mathopen{}\mathclose\bgroup\left#2\MT_smallmatrix_begin:N c}%
+ {\MT_smallmatrix_end:\aftergroup\egroup\right#3}%
+ }{}%
+ \@ifundefined{#1*}{%
+ \newenvironment{#1*}[1][\MT_smallmatrix_default_align:]%
+ {\mathopen{}\mathclose\bgroup\left#2\MT_smallmatrix_begin:N ##1}%
+ {\MT_smallmatrix_end:\aftergroup\egroup\right#3}%
+ }{}%
+}
+\MT_fenced_sm_generator:nnn{psmallmatrix}()
+\MT_fenced_sm_generator:nnn{bsmallmatrix}[]
+\MT_fenced_sm_generator:nnn{Bsmallmatrix}\lbrace\rbrace
+\MT_fenced_sm_generator:nnn{vsmallmatrix}\lvert\rvert
+\MT_fenced_sm_generator:nnn{Vsmallmatrix}\lVert\rVert
+% \end{macrocode}
+%
+% The options associated with this.
+% \begin{macrocode}
+\define@key{\MT_options_name:}
+ {smallmatrix-align}{\def\MT_smallmatrix_default_align:{#1}}
+\define@key{\MT_options_name:}
+ {smallmatrix-inner-space}{\def\MT_smallmatrix_inner_space:{#1}}
+\setkeys{\MT_options_name:}{
+ smallmatrix-align=c,
+ smallmatrix-inner-space=\,
+}
+
+% \end{macrocode}
+% Restore the usual spacing behavior.
+% \begin{macrocode}
+\MHPrecedingSpacesOn
+% \end{macrocode}
%
% \subsection{Smashing an operator with limits}
%
@@ -3755,10 +3994,102 @@ and the derived files
}%
\if#1 &&\quad #2\else #2\quad\fi
\\\noalign{\nobreak\vskip-\lineskip}}
+
\MHInternalSyntaxOn
% \end{macrocode}
% \end{macro}
%
+%
+% \subsection{Centered vertical dots}
+%
+% Doing a \verb?\vdots? centered within a different sized box, is
+% rather easy with the tools available. Note that it does \emph{not}
+% check for the style we are running in, thus do not expect this to
+% work well within \verb?\scriptstyle? and smaller. Basically we
+% create a box of a width corresponding to \verb?{}#1{}? and center
+% the \verb?\vdots? within it.
+% \begin{macrocode}
+\newcommand\vdotswithin[1]{%
+ {\mathmakebox[\widthof{\ensuremath{{}#1{}}}][c]{{\vdots}}}}
+% \end{macrocode}
+% Next we are inspired by \verb?\ArrowBetweenLines? and provide a
+% costruction to be used within alignments with much less vertical
+% space above and below.
+%
+% First in order to support \env{spreadlines} we need to store the
+% original value of \verb?\jot? (and hope the user does not mess with it).
+% \begin{macrocode}
+\newlength\origjot
+\setlength\origjot{\jot}
+% \end{macrocode}
+% Next define how much we spacing we flush out, and make this user adjustable.
+% \begin{macrocode}
+\newdimen\l_MT_shortvdotswithinadjustabove_dim
+\newdimen\l_MT_shortvdotswithinadjustbelow_dim
+\define@key{\MT_options_name:}
+ {shortvdotsadjustabove}{\setlength\l_MT_shortvdotswithinadjustabove_dim{#1}}
+\define@key{\MT_options_name:}
+ {shortvdotsadjustbelow}{\setlength\l_MT_shortvdotswithinadjustbelow_dim{#1}}
+% \end{macrocode}
+% The actual defaults we found by trail and error.
+% \begin{macrocode}
+\setkeys{\MT_options_name:}{
+ shortvdotsadjustabove=2.15\origjot,
+ shortvdotsadjustbelow=\origjot
+}
+% \end{macrocode}
+% The user macro comes in two versions, starred version corresponding
+% to alignment \emph{before} and \verb?&? and a non-starred version
+% with alignment \emph{after} \verb?&?.
+% \begin{macrocode}
+\def\shortvdotswithin{\relax
+ \@ifstar{\MT_svwi_aux:nn{00}}{\MT_svwi_aux:nn{01}}}
+\def\MT_svwi_aux:nn #1#2{
+ \MTFlushSpaceAbove
+ \if#1 \vdotswithin{#2}& \else &\vdotswithin{#2} \fi
+ \MTFlushSpaceBelow
+}
+% \end{macrocode}
+% We will need a way to remove any tags (eq. numbers) on the
+% \verb?\vdots? line. We cannot use the method used by
+% \verb?\ArrowBetweenLines? so we use inspiration from
+% \texttt{etoolbox}.
+% \begin{macrocode}
+\def\MT_remove_tag_unless_inner:n #1{%
+ \begingroup
+ \def\etb@tempa##1|#1|##2\MT@END{\endgroup
+ \ifx\@empty##2\@empty\notag\fi}%
+ \expandafter\etb@tempa\expandafter|alignedat|aligned|split|#1|\MT@END}
+% \end{macrocode}
+% These macros take care of removing the space above or below. Since
+% these may be useful for the user in very special cases, we provide
+% them as separate macros.
+% \begin{macrocode}
+\newcommand\MTFlushSpaceAbove{
+ \expandafter\MT_remove_tag_unless_inner:n\expandafter{\@currenvir}
+ \\
+ \noalign{%
+ \nobreak\vskip-\baselineskip\vskip-\lineskip%
+ \vskip-\l_MT_shortvdotswithinadjustabove_dim
+ \vskip-\origjot
+ \vskip\jot
+ }%
+ \noalign{
+ \expandafter\MT_remove_tag_unless_inner:n\expandafter{\@currenvir}
+ }
+}
+\newcommand\MTFlushSpaceBelow{
+ \\\noalign{%
+ \nobreak\vskip-\lineskip
+ \vskip-\l_MT_shortvdotswithinadjustbelow_dim
+ \vskip-\origjot
+ \vskip\jot
+ }
+}
+
+% \end{macrocode}
+%
+%
% \section{A few extra symbols}
%
% Most math font sets are missing three symbols: \cs{nuparrow},
@@ -4213,6 +4544,7 @@ and the derived files
}
}
}
+%$ for emacs coloring ;-)
% \end{macrocode}
% Just for restoring the old behavior.
% \begin{macrocode}
@@ -4435,10 +4767,10 @@ and the derived files
%
% \subsection{Making environments safer}
%
-% \begin{macro}
+% \begin{macro}{\aligned@a}
% Here we make the \pkg{amsmath} inner environments disallow spaces
% before their optional positioning specifier.
-% \begin{macrocode}{\aligned@a}
+% \begin{macrocode}
\MaybeMHPrecedingSpacesOff
\renewcommand\aligned@a[1][c]{\start@aligned{#1}\m@ne}
\MHPrecedingSpacesOn
diff --git a/Master/texmf-dist/source/latex/mh/mhsetup.dtx b/Master/texmf-dist/source/latex/mh/mhsetup.dtx
index 48e344e3a3f..d4b71b9a76d 100644
--- a/Master/texmf-dist/source/latex/mh/mhsetup.dtx
+++ b/Master/texmf-dist/source/latex/mh/mhsetup.dtx
@@ -12,7 +12,8 @@
%
% This work has the LPPL maintenance status "maintained".
%
-% This Current Maintainer of this work is Morten Hoegholm.
+% This Current Maintainer of this work is Morten Hoegholm,
+% Lars Madsen, Will Robertson and Joseph Wright.
%
% This work consists of the main source file mhsetup.dtx
% and the derived files
@@ -66,7 +67,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: mhsetup 2010/01/21 v1.2a mhsetup (MH)}
+\Msg{* Package: mhsetup 2010/01/21 v1.2a mhsetup}
\Msg{************************************************************************}
\keepsilent
@@ -88,7 +89,8 @@ LaTeX version 2005/12/01 or later.
This work has the LPPL maintenance status "maintained".
-This Current Maintainer of this work is Morten Hoegholm.
+This Current Maintainer of this work is Morten Hoegholm,
+Lars Madsen, Will Robertson and Joseph Wright.
This work consists of the main source file mhsetup.dtx
and the derived files
diff --git a/Master/texmf-dist/source/latex/mh/xfrac.dtx b/Master/texmf-dist/source/latex/mh/xfrac.dtx
index c5a119acd80..8e9bfa45df1 100644
--- a/Master/texmf-dist/source/latex/mh/xfrac.dtx
+++ b/Master/texmf-dist/source/latex/mh/xfrac.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2004, 2008-2010 by Morten Hoegholm <mh.ctan@gmail.com>
+% Copyright (C) 2004, 2008-2011 by Morten Hoegholm <mh.ctan@gmail.com>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either
@@ -10,7 +10,8 @@
%
% This work has the LPPL maintenance status "maintained".
%
-% This Current Maintainer of this work is Morten Hoegholm.
+% This Current Maintainer of this work is Morten Hoegholm,
+% Lars Madsen, Will Robertson and Joseph Wright.
%
% This work consists of the main source file xfrac.dtx
% and the derived files
@@ -64,7 +65,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: xfrac 2009/08/10 v0.3 textstyle fractions (MH)}
+\Msg{* Package: xfrac 2011/01/17 v0.3b textstyle fractions (MH)}
\Msg{************************************************************************}
\keepsilent
@@ -74,7 +75,7 @@
This is a generated file.
-Copyright (C) 2004, 2008-2010 by Morten Hoegholm <mh.ctan@gmail.com>
+Copyright (C) 2004, 2008-2011 by Morten Hoegholm <mh.ctan@gmail.com>
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either
@@ -84,7 +85,8 @@ version. The latest version of this license is in
This work has the LPPL maintenance status "maintained".
-This Current Maintainer of this work is Morten Hoegholm.
+This Current Maintainer of this work is Morten Hoegholm,
+Lars Madsen, Will Robertson and Josseph Wright.
This work consists of the main source file xfrac.dtx
and the derived files
@@ -122,7 +124,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{xfrac.drv}%
- [2010/02/02 v0.3 Text style fractions]
+ [2011/01/17 v0.3b Text style fractions]
\RequirePackage{fix-cm}
\documentclass{ltxdoc}
@@ -181,6 +183,7 @@ and the derived files
% \GetFileInfo{xfrac.drv}
% \CheckSum{249}
%
+% \changes{v0.3b}{2011/01/11}{Changed to match a change in expl3}
% \changes{v0.3}{2010/02/02}{Update to new \pkg{xtemplate} system}
% \changes{v0.3}{2010/02/02}{Include custom values for
% \pkg{lmodern}}
diff --git a/Master/texmf-dist/tex/latex/mh/breqn.sty b/Master/texmf-dist/tex/latex/mh/breqn.sty
index ef00e99ed98..7bbb64d3d0a 100644
--- a/Master/texmf-dist/tex/latex/mh/breqn.sty
+++ b/Master/texmf-dist/tex/latex/mh/breqn.sty
@@ -21,7 +21,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Joseph Wright.
%%
%% This work consists of the main source file breqn.dtx
%% and the derived files
diff --git a/Master/texmf-dist/tex/latex/mh/cmbase.sym b/Master/texmf-dist/tex/latex/mh/cmbase.sym
index f811f76a7c9..8d9193ede88 100644
--- a/Master/texmf-dist/tex/latex/mh/cmbase.sym
+++ b/Master/texmf-dist/tex/latex/mh/cmbase.sym
@@ -21,7 +21,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Joseph Wright.
%%
%% This work consists of the main source file flexisym.dtx
%% and the derived files
diff --git a/Master/texmf-dist/tex/latex/mh/flexisym.sty b/Master/texmf-dist/tex/latex/mh/flexisym.sty
index f2ad4ff76ec..9684cb9e367 100644
--- a/Master/texmf-dist/tex/latex/mh/flexisym.sty
+++ b/Master/texmf-dist/tex/latex/mh/flexisym.sty
@@ -21,7 +21,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Joseph Wright.
%%
%% This work consists of the main source file flexisym.dtx
%% and the derived files
diff --git a/Master/texmf-dist/tex/latex/mh/mathpazo.sym b/Master/texmf-dist/tex/latex/mh/mathpazo.sym
index 4bc07eae902..a0477158ce9 100644
--- a/Master/texmf-dist/tex/latex/mh/mathpazo.sym
+++ b/Master/texmf-dist/tex/latex/mh/mathpazo.sym
@@ -21,7 +21,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Joseph Wright.
%%
%% This work consists of the main source file flexisym.dtx
%% and the derived files
diff --git a/Master/texmf-dist/tex/latex/mh/mathptmx.sym b/Master/texmf-dist/tex/latex/mh/mathptmx.sym
index 3a538fd5350..08435922fdc 100644
--- a/Master/texmf-dist/tex/latex/mh/mathptmx.sym
+++ b/Master/texmf-dist/tex/latex/mh/mathptmx.sym
@@ -21,7 +21,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Joseph Wright.
%%
%% This work consists of the main source file flexisym.dtx
%% and the derived files
diff --git a/Master/texmf-dist/tex/latex/mh/mathstyle.sty b/Master/texmf-dist/tex/latex/mh/mathstyle.sty
index 384715ff3ac..5cf9a005be5 100644
--- a/Master/texmf-dist/tex/latex/mh/mathstyle.sty
+++ b/Master/texmf-dist/tex/latex/mh/mathstyle.sty
@@ -21,7 +21,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Joseph Wright.
%%
%% This work consists of the main source file mathstyle.dtx
%% and the derived files
diff --git a/Master/texmf-dist/tex/latex/mh/mathtools.sty b/Master/texmf-dist/tex/latex/mh/mathtools.sty
index 10551be4cd1..3254c896fdc 100644
--- a/Master/texmf-dist/tex/latex/mh/mathtools.sty
+++ b/Master/texmf-dist/tex/latex/mh/mathtools.sty
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2002-2010 by Morten Hoegholm <mh.ctan@gmail.com>
+%% Copyright (C) 2002-2011 by Morten Hoegholm <mh.ctan@gmail.com>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -20,16 +20,17 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Joseph Wright.
%%
%% This work consists of the main source file mathtools.dtx
%% and the derived files
%% mathtools.sty, mathtools.pdf, mathtools.ins, mathtools.drv.
%%
\ProvidesPackage{mathtools}%
- [2010/07/21 v1.08b mathematical typesetting tools (MH)]
+ [2011/02/12 v1.10 mathematical typesetting tools]
\RequirePackage{keyval,calc}
-\RequirePackage{mhsetup}[2007/12/03]
+\RequirePackage{mhsetup}[2010/01/21]
\MHInternalSyntaxOn
\def\MT_options_name:{mathtools}
\newcommand*\mathtoolsset[1]{\setkeys{\MT_options_name:}{#1}}
@@ -347,9 +348,11 @@
\providecommand*\rparen{)}
\def\vcentcolon{\mathrel{\mathop\ordinarycolon}}
+\providecommand\ordinarycolon{:}
\begingroup
\catcode`\:=\active
\lowercase{\endgroup
+\def\MT_activate_colon{%
\ifnum\mathcode`\:=32768\relax
\let\ordinarycolon= :%
\else
@@ -357,6 +360,7 @@
\fi
\let :\vcentcolon
}
+}
\MH_new_boolean:n {center_colon}
\define@key{\MT_options_name:}{centercolon}[true]{
\@ifundefined{MT_active_colon_#1:}
@@ -366,6 +370,7 @@
{ \@nameuse{MT_active_colon_#1:} }
}
\def\MT_active_colon_true: {
+ \MT_activate_colon
\MH_if_boolean:nF {center_colon}{
\MH_set_boolean_T:n {center_colon}
\edef\MT_active_colon_false:
@@ -654,13 +659,20 @@
{\MT_start_cases:nnnn {#2}{#3}{#4}{#5}}
{\MH_end_cases:\right#6}
}
-\newcases{dcases}{\quad}{$\m@th\displaystyle{##}$\hfil}{$\m@th\displaystyle{##}$\hfil}{\lbrace}{.}
-\newcases{dcases*}{\quad}{$\m@th\displaystyle{##}$\hfil}{{##}\hfil}{\lbrace}{.}
-\newcases{rcases}{\quad}{$\m@th{##}$\hfil}{$\m@th{##}$\hfil}{.}{\rbrace}
-\newcases{rcases*}{\quad}{$\m@th{##}$\hfil}{{##}\hfil}{.}{\rbrace}
-\newcases{drcases}{\quad}{$\m@th\displaystyle{##}$\hfil}{$\m@th\displaystyle{##}$\hfil}{.}{\rbrace}
-\newcases{drcases*}{\quad}{$\m@th\displaystyle{##}$\hfil}{{##}\hfil}{.}{\rbrace}
-\newcases{cases*}{\quad}{$\m@th{##}$\hfil}{{##}\hfil}{\lbrace}{.}
+\newcases{dcases}{\quad}{%
+ $\m@th\displaystyle{##}$\hfil}{$\m@th\displaystyle{##}$\hfil}{\lbrace}{.}
+\newcases{dcases*}{\quad}{%
+ $\m@th\displaystyle{##}$\hfil}{{##}\hfil}{\lbrace}{.}
+\newcases{rcases}{\quad}{%
+ $\m@th{##}$\hfil}{$\m@th{##}$\hfil}{.}{\rbrace}
+\newcases{rcases*}{\quad}{%
+ $\m@th{##}$\hfil}{{##}\hfil}{.}{\rbrace}
+\newcases{drcases}{\quad}{%
+ $\m@th\displaystyle{##}$\hfil}{$\m@th\displaystyle{##}$\hfil}{.}{\rbrace}
+\newcases{drcases*}{\quad}{%
+ $\m@th\displaystyle{##}$\hfil}{{##}\hfil}{.}{\rbrace}
+\newcases{cases*}{\quad}{%
+ $\m@th{##}$\hfil}{{##}\hfil}{\lbrace}{.}
\def\MT_matrix_begin:N #1{%
\hskip -\arraycolsep
\MH_let:NwN \@ifnextchar \MH_nospace_ifnextchar:Nnn
@@ -685,6 +697,53 @@
\newenvironment{Vmatrix*}[1][c]
{\left\lVert\MT_matrix_begin:N #1}
{\MT_matrix_end:\right\lVert}
+\def\MT_smallmatrix_begin:N #1{%
+ \Let@\restore@math@cr\default@tag
+ \baselineskip6\ex@ \lineskip1.5\ex@ \lineskiplimit\lineskip
+ \csname MT_smallmatrix_#1_begin:\endcsname
+}
+\def\MT_smallmatrix_end:{\crcr\egroup\egroup\MT_smallmatrix_inner_space:}
+\def\MT_smallmatrix_l_begin:{\null\MT_smallmatrix_inner_space:\vcenter\bgroup
+ \ialign\bgroup$\m@th\scriptstyle##$\hfil&&\thickspace
+ $\m@th\scriptstyle##$\hfil\crcr
+}
+\def\MT_smallmatrix_c_begin:{\null\MT_smallmatrix_inner_space:\vcenter\bgroup
+ \ialign\bgroup\hfil$\m@th\scriptstyle##$\hfil&&\thickspace\hfil
+ $\m@th\scriptstyle##$\hfil\crcr
+}
+\def\MT_smallmatrix_r_begin:{\null\MT_smallmatrix_inner_space:\vcenter\bgroup
+ \ialign\bgroup\hfil$\m@th\scriptstyle##$&&\thickspace\hfil
+ $\m@th\scriptstyle##$\crcr
+}
+\newenvironment{smallmatrix*}[1][\MT_smallmatrix_default_align:]
+ {\MT_smallmatrix_begin:N #1}
+ {\MT_smallmatrix_end:}
+\def\MT_fenced_sm_generator:nnn #1#2#3{%
+ \@ifundefined{#1}{%
+ \newenvironment{#1}
+ {\mathopen{}\mathclose\bgroup\left#2\MT_smallmatrix_begin:N c}%
+ {\MT_smallmatrix_end:\aftergroup\egroup\right#3}%
+ }{}%
+ \@ifundefined{#1*}{%
+ \newenvironment{#1*}[1][\MT_smallmatrix_default_align:]%
+ {\mathopen{}\mathclose\bgroup\left#2\MT_smallmatrix_begin:N ##1}%
+ {\MT_smallmatrix_end:\aftergroup\egroup\right#3}%
+ }{}%
+}
+\MT_fenced_sm_generator:nnn{psmallmatrix}()
+\MT_fenced_sm_generator:nnn{bsmallmatrix}[]
+\MT_fenced_sm_generator:nnn{Bsmallmatrix}\lbrace\rbrace
+\MT_fenced_sm_generator:nnn{vsmallmatrix}\lvert\rvert
+\MT_fenced_sm_generator:nnn{Vsmallmatrix}\lVert\rVert
+\define@key{\MT_options_name:}
+ {smallmatrix-align}{\def\MT_smallmatrix_default_align:{#1}}
+\define@key{\MT_options_name:}
+ {smallmatrix-inner-space}{\def\MT_smallmatrix_inner_space:{#1}}
+\setkeys{\MT_options_name:}{
+ smallmatrix-align=c,
+ smallmatrix-inner-space=\,
+}
+
\MHPrecedingSpacesOn
\newcommand*\smashoperator[2][lr]{
\def\MT_smop_use:NNNNN {\@nameuse{MT_smop_smash_#1:NNNNN}}
@@ -879,7 +938,56 @@
}%
\if#1 &&\quad #2\else #2\quad\fi
\\\noalign{\nobreak\vskip-\lineskip}}
+
\MHInternalSyntaxOn
+\newcommand\vdotswithin[1]{%
+ {\mathmakebox[\widthof{\ensuremath{{}#1{}}}][c]{{\vdots}}}}
+\newlength\origjot
+\setlength\origjot{\jot}
+\newdimen\l_MT_shortvdotswithinadjustabove_dim
+\newdimen\l_MT_shortvdotswithinadjustbelow_dim
+\define@key{\MT_options_name:}
+ {shortvdotsadjustabove}{\setlength\l_MT_shortvdotswithinadjustabove_dim{#1}}
+\define@key{\MT_options_name:}
+ {shortvdotsadjustbelow}{\setlength\l_MT_shortvdotswithinadjustbelow_dim{#1}}
+\setkeys{\MT_options_name:}{
+ shortvdotsadjustabove=2.15\origjot,
+ shortvdotsadjustbelow=\origjot
+}
+\def\shortvdotswithin{\relax
+ \@ifstar{\MT_svwi_aux:nn{00}}{\MT_svwi_aux:nn{01}}}
+\def\MT_svwi_aux:nn #1#2{
+ \MTFlushSpaceAbove
+ \if#1 \vdotswithin{#2}& \else &\vdotswithin{#2} \fi
+ \MTFlushSpaceBelow
+}
+\def\MT_remove_tag_unless_inner:n #1{%
+ \begingroup
+ \def\etb@tempa##1|#1|##2\MT@END{\endgroup
+ \ifx\@empty##2\@empty\notag\fi}%
+ \expandafter\etb@tempa\expandafter|alignedat|aligned|split|#1|\MT@END}
+\newcommand\MTFlushSpaceAbove{
+ \expandafter\MT_remove_tag_unless_inner:n\expandafter{\@currenvir}
+ \\
+ \noalign{%
+ \nobreak\vskip-\baselineskip\vskip-\lineskip%
+ \vskip-\l_MT_shortvdotswithinadjustabove_dim
+ \vskip-\origjot
+ \vskip\jot
+ }%
+ \noalign{
+ \expandafter\MT_remove_tag_unless_inner:n\expandafter{\@currenvir}
+ }
+}
+\newcommand\MTFlushSpaceBelow{
+ \\\noalign{%
+ \nobreak\vskip-\lineskip
+ \vskip-\l_MT_shortvdotswithinadjustbelow_dim
+ \vskip-\origjot
+ \vskip\jot
+ }
+}
+
\def\MH_nrotarrow:NN #1#2{%
\setbox0=\hbox{$\m@th#1\uparrow$}\dimen0=\dp0
\setbox0=\hbox{%
diff --git a/Master/texmf-dist/tex/latex/mh/mhsetup.sty b/Master/texmf-dist/tex/latex/mh/mhsetup.sty
index 5424b64c898..9e5c2a182cc 100644
--- a/Master/texmf-dist/tex/latex/mh/mhsetup.sty
+++ b/Master/texmf-dist/tex/latex/mh/mhsetup.sty
@@ -20,7 +20,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Joseph Wright.
%%
%% This work consists of the main source file mhsetup.dtx
%% and the derived files
diff --git a/Master/texmf-dist/tex/latex/mh/msabm.sym b/Master/texmf-dist/tex/latex/mh/msabm.sym
index 17594c405ab..7203e1d0cde 100644
--- a/Master/texmf-dist/tex/latex/mh/msabm.sym
+++ b/Master/texmf-dist/tex/latex/mh/msabm.sym
@@ -21,7 +21,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Joseph Wright.
%%
%% This work consists of the main source file flexisym.dtx
%% and the derived files
diff --git a/Master/texmf-dist/tex/latex/mh/xfrac.sty b/Master/texmf-dist/tex/latex/mh/xfrac.sty
index aeaeef9e238..142aa8eaeaa 100644
--- a/Master/texmf-dist/tex/latex/mh/xfrac.sty
+++ b/Master/texmf-dist/tex/latex/mh/xfrac.sty
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2004, 2008-2010 by Morten Hoegholm <mh.ctan@gmail.com>
+%% Copyright (C) 2004, 2008-2011 by Morten Hoegholm <mh.ctan@gmail.com>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -18,7 +18,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% This Current Maintainer of this work is Morten Hoegholm.
+%% This Current Maintainer of this work is Morten Hoegholm,
+%% Lars Madsen, Will Robertson and Josseph Wright.
%%
%% This work consists of the main source file xfrac.dtx
%% and the derived files