From 82ac0ba9ed70499005296836d8be39181785d3ba Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 15 Feb 2011 00:52:40 +0000 Subject: mh (13feb11) git-svn-id: svn://tug.org/texlive/trunk@21405 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/mh/breqn-technotes.pdf | Bin 173633 -> 174292 bytes Master/texmf-dist/doc/latex/mh/breqn.pdf | Bin 514315 -> 514327 bytes Master/texmf-dist/doc/latex/mh/empheq.pdf | Bin 305491 -> 305504 bytes Master/texmf-dist/doc/latex/mh/flexisym.pdf | Bin 243073 -> 243084 bytes Master/texmf-dist/doc/latex/mh/mathstyle.pdf | Bin 159224 -> 159236 bytes Master/texmf-dist/doc/latex/mh/mathtools.pdf | Bin 364988 -> 372791 bytes Master/texmf-dist/doc/latex/mh/mhsetup.pdf | Bin 233706 -> 233716 bytes Master/texmf-dist/doc/latex/mh/xfrac.pdf | Bin 532373 -> 532628 bytes Master/texmf-dist/source/latex/mh/breqn.dtx | 6 +- Master/texmf-dist/source/latex/mh/flexisym.dtx | 6 +- Master/texmf-dist/source/latex/mh/mathstyle.dtx | 6 +- Master/texmf-dist/source/latex/mh/mathtools.dtx | 406 +++++++++++++++++++-- Master/texmf-dist/source/latex/mh/mhsetup.dtx | 8 +- Master/texmf-dist/source/latex/mh/xfrac.dtx | 15 +- Master/texmf-dist/tex/latex/mh/breqn.sty | 3 +- Master/texmf-dist/tex/latex/mh/cmbase.sym | 3 +- Master/texmf-dist/tex/latex/mh/flexisym.sty | 3 +- Master/texmf-dist/tex/latex/mh/mathpazo.sym | 3 +- Master/texmf-dist/tex/latex/mh/mathptmx.sym | 3 +- Master/texmf-dist/tex/latex/mh/mathstyle.sty | 3 +- Master/texmf-dist/tex/latex/mh/mathtools.sty | 130 ++++++- Master/texmf-dist/tex/latex/mh/mhsetup.sty | 3 +- Master/texmf-dist/tex/latex/mh/msabm.sym | 3 +- Master/texmf-dist/tex/latex/mh/xfrac.sty | 5 +- 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 Binary files a/Master/texmf-dist/doc/latex/mh/breqn-technotes.pdf and b/Master/texmf-dist/doc/latex/mh/breqn-technotes.pdf 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 Binary files a/Master/texmf-dist/doc/latex/mh/breqn.pdf and b/Master/texmf-dist/doc/latex/mh/breqn.pdf 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 Binary files a/Master/texmf-dist/doc/latex/mh/empheq.pdf and b/Master/texmf-dist/doc/latex/mh/empheq.pdf 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 Binary files a/Master/texmf-dist/doc/latex/mh/flexisym.pdf and b/Master/texmf-dist/doc/latex/mh/flexisym.pdf 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 Binary files a/Master/texmf-dist/doc/latex/mh/mathstyle.pdf and b/Master/texmf-dist/doc/latex/mh/mathstyle.pdf 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 Binary files a/Master/texmf-dist/doc/latex/mh/mathtools.pdf and b/Master/texmf-dist/doc/latex/mh/mathtools.pdf 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 Binary files a/Master/texmf-dist/doc/latex/mh/mhsetup.pdf and b/Master/texmf-dist/doc/latex/mh/mhsetup.pdf 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 Binary files a/Master/texmf-dist/doc/latex/mh/xfrac.pdf and b/Master/texmf-dist/doc/latex/mh/xfrac.pdf 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 +% Copyright (C) 2004-2011 by Morten Hoegholm % % 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 +Copyright (C) 2002-2011 by Morten Hoegholm 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 +% Copyright (C) 2004, 2008-2011 by Morten Hoegholm % % 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 +Copyright (C) 2004, 2008-2011 by Morten Hoegholm 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 +%% Copyright (C) 2002-2011 by Morten Hoegholm %% %% 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 +%% Copyright (C) 2004, 2008-2011 by Morten Hoegholm %% %% 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 -- cgit v1.2.3