diff options
-rwxr-xr-x | Build/cdbuild/ctan2tds.pl | 5 | ||||
-rwxr-xr-x | Build/tools/tpm-ctan-check | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/mathdots/README | 36 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/mathdots/mathdots.pdf | bin | 0 -> 109664 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/generic/mathdots/mathdots.tex | 106 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/mathdots/mdtest.tex | 52 | ||||
-rw-r--r-- | Master/texmf-dist/source/generic/mathdots/mathdots.dtx | 377 | ||||
-rw-r--r-- | Master/texmf-dist/source/generic/mathdots/mathdots.ins | 35 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/mathdots/mathdots.sty | 90 | ||||
-rw-r--r-- | Master/texmf-dist/tpm/mathdots.tpm | 31 | ||||
-rw-r--r-- | Master/texmf/lists/mathdots | 10 |
11 files changed, 742 insertions, 2 deletions
diff --git a/Build/cdbuild/ctan2tds.pl b/Build/cdbuild/ctan2tds.pl index 369bbe7fad7..31541ab53c0 100755 --- a/Build/cdbuild/ctan2tds.pl +++ b/Build/cdbuild/ctan2tds.pl @@ -378,7 +378,8 @@ $standardfoundry='public'; 'latexmp', 'metapost', 'leawood', 'fonts', 'lfb', 'fonts', - 'latexmp', 'metauml', + 'latexmp', 'metapost', + 'mathdots', 'generic', 'mfpic', 'generic', 'multido', 'generic', 'ofs', 'generic', @@ -411,6 +412,7 @@ $standardsourcefmt='latex'; 'genmisc', 'generic', 'ifxetex', 'generic', 'jadetex', 'jadetex', + 'mathdots', 'generic', 'metatex', 'plain', 'mfpic', 'generic', 'ocherokee', 'lambda', @@ -475,6 +477,7 @@ $standardfmt='latex'; 'leawood', 'fonts', 'lfb', 'fonts', 'lshort-portuguese', 'portuguese', + 'mathdots', 'generic', 'metatex', 'plain', 'metauml', 'metapost', 'mfpic', 'generic', diff --git a/Build/tools/tpm-ctan-check b/Build/tools/tpm-ctan-check index d5f5022b68d..98a71a413e2 100755 --- a/Build/tools/tpm-ctan-check +++ b/Build/tools/tpm-ctan-check @@ -66,7 +66,7 @@ sub main "ltabptch", "ltxmisc", #"malayalam", # missing C sources on CTAN, wrote author 5jun05. #"mathspic", # inside pictex, later - "makecell", "makeplot", "mathmode", "mcaption", + "makecell", "makeplot", "mathdots", "mathmode", "mcaption", "memoir", "metauml", "mfpic", "mhchem", "minitoc", "microtype", "minitoc", "mla-paper", "moderncv", "movie15", "muthesis", diff --git a/Master/texmf-dist/doc/generic/mathdots/README b/Master/texmf-dist/doc/generic/mathdots/README new file mode 100644 index 00000000000..22f4ffadc81 --- /dev/null +++ b/Master/texmf-dist/doc/generic/mathdots/README @@ -0,0 +1,36 @@ +
+This is the mathdots package, version 0.8.
+
+This package changes the basic LaTeX and plain TeX commands \ddots and
+\vdots so that they properly change size when font sizes change, and
+when they are used in superscripts and subscripts. It also adds the
+command \iddots ()for inverse diagonal dots) which slants the opposite
+way from \ddots.
+
+In addition, if it detects AMSLaTeX (or AMSTeX in plain TeX) it defines
+improved versions of the \dddot and \ddddot commands that place three
+and four dots on a math symbol (similar to the math accent commands \dot
+and \ddot). These also are arranged to change size correctly and some
+placement bugs are corrected.
+
+Other (minor) improvements: the commands \vdots, \ddots and \iddots
+select the dot from the math fonts instead of the text fonts, so they
+always match math punctuation dots. The \dddot and \ddddot commands
+select the accent dot (same one placed by \dot).
+
+File list:
+
+mathdots.dtx The code
+mathdots.pdf The manual
+mathdots.ins unpacking script
+mdtest.tex Test file
+README This file
+
+Installation:
+
+Run tex or latex on mathdots.ins to unpack the files. Copy mathdots.tex
+where tex will find it and mathdots.sty where latex will find it. Copy
+the remaining files to your documentation area.
+
+Daniel H. Luecking, \luecking \at \uark \dot \edu
+
diff --git a/Master/texmf-dist/doc/generic/mathdots/mathdots.pdf b/Master/texmf-dist/doc/generic/mathdots/mathdots.pdf Binary files differnew file mode 100644 index 00000000000..2f2caf7e421 --- /dev/null +++ b/Master/texmf-dist/doc/generic/mathdots/mathdots.pdf diff --git a/Master/texmf-dist/doc/generic/mathdots/mathdots.tex b/Master/texmf-dist/doc/generic/mathdots/mathdots.tex new file mode 100644 index 00000000000..25d1f88338d --- /dev/null +++ b/Master/texmf-dist/doc/generic/mathdots/mathdots.tex @@ -0,0 +1,106 @@ +%% +%% This is file `mathdots.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% mathdots.dtx (with options: `tex') +%% +%% ------------------------------------------------------------------- +%% +%% Copyright 2001--2006, Daniel H. Luecking +%% +%% Mathdots may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License, either version 1.3 of this license or (at +%% your option) any later version. The latest version of this license is in +%% <http://www.latex-project.org/lppl.txt> +%% and version 1.3 or later is part of all distributions of LaTeX version +%% 2003/12/01 or later. +%% +%% Mathdots has maintenance status "author-maintained". The Current +%% Maintainer is Daniel H. Luecking. The Base Interpreters associated with +%% mathdots are plain TeX and LaTeX +%% +\def\mathdotsfiledate{2006/03/16}% +\def\mathdotsfileversion{0.8}% +\expandafter +\ifx\csname MathDots\mathdotsfileversion\endcsname\relax +\else + \immediate\write16{Mathdots already loaded.}\expandafter\endinput +\fi +\immediate\write16{Package mathdots, \mathdotsfiledate\space version + \mathdotsfileversion.}% +\expandafter\edef\csname MathDots\mathdotsfileversion\endcsname{% + \catcode`\noexpand\@=\the\catcode`@}% +\catcode`\@=11 +\def\@nameuse#1{\csname#1\endcsname}% +\def\MD@us#1{\@nameuse{#1style}}% +\def\MD@uf#1{\@nameuse{#1font}0}% +\def\MD@t{text}\def\MD@s{script}\def\MD@ss{scriptscript}% +\newdimen\MD@unit \MD@unit\p@ +\def\MD@changestyle#1{\relax\MD@unit0.1\fontdimen6\MD@uf{#1}% + \everymath\expandafter{\the\everymath\MD@us{#1}}}% +\def\MD@dot{$\m@th\ldotp$}% +\def\MD@palette#1{\mathchoice{#1\MD@t}{#1\MD@t}{#1\MD@s}{#1\MD@ss}}% +\def\MD@ddots#1{{\MD@changestyle{#1}% + \mkern1mu\raise7\MD@unit\vbox{\kern7\MD@unit\hbox{\MD@dot}}% + \mkern2mu\raise4\MD@unit\hbox{\MD@dot}% + \mkern2mu\raise \MD@unit\hbox{\MD@dot}\mkern1mu}}% +\def\MD@vdots#1{\vbox{\MD@changestyle{#1}% + \baselineskip4\MD@unit\lineskiplimit\z@ + \kern6\MD@unit\hbox{\MD@dot}\hbox{\MD@dot}\hbox{\MD@dot}}}% +\def\MD@iddots#1{{\MD@changestyle{#1}% + \mkern1mu\raise \MD@unit\hbox{\MD@dot}% + \mkern2mu\raise4\MD@unit\hbox{\MD@dot}% + \mkern2mu\raise7\MD@unit\vbox{\kern7\MD@unit\hbox{\MD@dot}}}}% +\def\fixedvdots{% + \vbox{\baselineskip4\p@ \lineskiplimit\z@ + \kern6\p@\hbox{.}\hbox{.}\hbox{.}}}% +\def\fixedddots{% + \mathinner{\mkern1mu + \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern2mu + \raise4\p@\hbox{.}\mkern2mu + \raise\p@\hbox{.}\mkern1mu}}% +\def\fixediddots{% + \mathinner{\mkern1mu + \raise\p@\hbox{.}\mkern2mu + \raise4\p@\hbox{.}\mkern2mu + \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern1mu}}% +\let\originalddots=\ddots +\let\originalvdots=\vdots +\let\originaliddots=\iddots +\def\ddots{% + \mathinner{\MD@palette\MD@ddots}}% +\def\iddots{% + \mathinner{\MD@palette\MD@iddots}}% +\def\vdots{% + \mathinner{\MD@palette\MD@vdots}}% +\wlog{Mathdots Info: Redefining \string\ddots.}% +\wlog{Mathdots Info: Redefining \string\vdots.}% +\newbox\MD@dotsbox +\newmuskip\MD@prekern +\newmuskip\MD@postkern +\newmuskip\MD@dotkern +\MD@prekern 0mu +\MD@postkern -1mu +\MD@dotkern -1.3mu +\def\MD@dotsaccent#1{\mathpalette{\MD@@dotsaccent{#1}}}% +\def\MD@@dotsaccent#1#2#3{% + {\setbox\MD@dotsbox\hbox{$#2\mkern\MD@prekern#1\mkern\MD@postkern$}% + \mathop{#3\kern\z@}\limits^{% + \text{\vbox to-1.4\ex@{\kern-1.8\ex@\copy\MD@dotsbox\vss}}}}% +}% +\let\originaldddot \dddot +\let\originalddddot\ddddot +\def\amstexfmtname{AmS-TeX}% +\ifx\amstexfmtname\fmtname + \def\MD@D{\mathchar"5F\mkern\MD@dotkern}% + \wlog{Mathdots Info: Redefining \string\dddot.}% + \wlog{Mathdots Info: Redefining \string\ddddot.}% + \def\dddot {\MD@dotsaccent{\MD@D\MD@D\MD@D}}% + \def\ddddot{\MD@dotsaccent{\MD@D\MD@D\MD@D\MD@D}}% +\fi +\csname MathDots\mathdotsfileversion\endcsname +\endinput +%% +%% End of file `mathdots.tex'. diff --git a/Master/texmf-dist/doc/generic/mathdots/mdtest.tex b/Master/texmf-dist/doc/generic/mathdots/mdtest.tex new file mode 100644 index 00000000000..2bb93dd61e7 --- /dev/null +++ b/Master/texmf-dist/doc/generic/mathdots/mdtest.tex @@ -0,0 +1,52 @@ +% All possible sizes of the various mathdots tested +\documentclass{article} +\usepackage{amsmath} +\usepackage{mathdots} + +\newcommand\testdots{% +$\ddots^{\ddots^{\ddots}}$ $\iddots^{\iddots^{\iddots}}$ +$\vdots^{\vdots^{\vdots}}$ +\par +$\dot{X} +\ddot{X} +\dddot{X} +\ddddot{X} +X^{\dot{X}} +X^{\ddot{X}} +X^{\dddot{X}} +X^{\ddddot{X}} +X^{X^{\dot{X}}} +X^{X^{\ddot{X}}} +X^{X^{\dddot{X}}} +X^{X^{\ddddot{X}}}$ +\par\smallskip\hrule\smallskip} + +\setlength\textwidth{6.664in} +\setlength\oddsidemargin{-.082in} +\setlength\parindent{0pt} + +\setlength{\textheight}{8.9in} +\setlength{\topmargin}{0pt} +\addtolength\headheight{3.06pt} +\addtolength\topmargin{-\headheight} +\addtolength\topmargin{-\headsep} + +\begin{document} +\pagestyle{headings} +\tableofcontents +\clearpage + +\section{Testing in headers and TOC: + $\ddots$, $\vdots$, $\iddots$, $\dddot{X}$ and $\ddddot{X}$} + +\tiny tiny \testdots +\scriptsize scriptsize \testdots +\footnotesize footnotesize \testdots +\small small \testdots +\normalsize normalsize \testdots +\large large \testdots +\Large Large \testdots +\huge huge \testdots +\Huge Huge \testdots + +\end{document} diff --git a/Master/texmf-dist/source/generic/mathdots/mathdots.dtx b/Master/texmf-dist/source/generic/mathdots/mathdots.dtx new file mode 100644 index 00000000000..45862da44ff --- /dev/null +++ b/Master/texmf-dist/source/generic/mathdots/mathdots.dtx @@ -0,0 +1,377 @@ +% \iffalse +% ------------------------------------------------------------------- +% +% Copyright 2001--2006, Daniel H. Luecking +% +% Mathdots may be distributed and/or modified under the conditions of the +% LaTeX Project Public License, either version 1.3 of this license or (at +% your option) any later version. The latest version of this license is in +% <http://www.latex-project.org/lppl.txt> +% and version 1.3 or later is part of all distributions of LaTeX version +% 2003/12/01 or later. +% +% Mathdots has maintenance status "author-maintained". The Current +% Maintainer is Daniel H. Luecking. The Base Interpreters associated with +% mathdots are TeX and LaTeX. +% +%<*sty|tex> +%<*driver> +\ProvidesFile{mathdots.dtx}% +%</driver> +%<sty>\ifx\documentclass\UndEfInEd\input mathdots \expandafter\endinput\fi +%<sty>\ProvidesPackage{mathdots} +%<*sty> +[2006/03/16 v0.8 Improve and add various macros for dots in math.]% +%</sty> +%<tex>\def\mathdotsfiledate{2006/03/16}% +%<tex>\def\mathdotsfileversion{0.8}% +%<*driver> +\documentclass[draft]{ltxdoc} + +\addtolength{\textwidth}{.5878pt} + +\def\mytt{\upshape\mdseries\ttfamily} +\renewcommand\marg[1]{{\mytt \{#1\}}} +\renewcommand\oarg[1]{{\mytt [#1]}} +\renewcommand\parg[1]{{\mytt (#1)}} +\renewcommand\arg[1]{{\mytt\##1}} +\renewcommand{\meta}[1]{{$\langle$\rmfamily\itshape#1\/$\rangle$}} +\DeclareRobustCommand\cs[1]{{\mytt\char`\\#1}} +\def\prog#1{{\mdseries\scshape #1}} +\def\opt#1{{\sffamily\upshape#1}} +\def\mtt#1{{\mytt#1}} +\let\env\mtt +\let\file\mtt +\def\MD{\prog{mathdots}} +\renewcommand\{{\mtt{\char`\{}} +\renewcommand\}{\mtt{\char`\}}} +\renewcommand\|{${}\mathrel{|}{}$} + +\makeatletter +\newcommand\bsl{{\mytt\@backslashchar}} +% Stupid lists! +\def\@listi{\leftmargin\leftmargini + \parsep \z@ \@plus\p@ \@minus\z@ + \topsep 4\p@ \@plus\p@ \@minus2\p@ + \itemsep\parsep} +\let\@listI\@listi \@listi +\renewcommand\labelitemi{\normalfont\bfseries \textendash} +\renewcommand\labelitemii{\textasteriskcentered} +\renewcommand\labelitemiii{\textperiodcentered} +\leftmargini\parindent +% Stupid index! +\def\usage#1{\textrm{#1}} +\def\index@prologue{\section*{Index}\markboth{Index}{Index}% + Numbers refer to the page where the corresponding entry is described. +} +\def\IndexParms{% + \parindent \z@ \columnsep 15pt + \parskip 0pt plus 1pt + \rightskip 5pt plus2em \mathsurround \z@ + \parfillskip-5pt \small + % less hanging: + \def\@idxitem{\par\hangindent 20pt}% + \def\subitem{\@idxitem\hspace*{15pt}}% + \def\subsubitem{\@idxitem\hspace*{25pt}}% + \def\indexspace{\par\vspace{10pt plus 2pt minus 3pt}}} +\makeatother + +\title{The \MD{} package\thanks{This file has version number + \fileversion, last revised \filedate.}} +\author{Dan Luecking} +\date{\filedate} +\DisableCrossrefs +\CodelineIndex +\AlsoImplementation + +\begin{document} + \DeleteShortVerb{\|} + \DocInput{mathdots.dtx} +\end{document} +%</driver> +%\fi +% \CheckSum{327} +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \catcode`\_=12 +% \GetFileInfo{mathdots.dtx} +% \maketitle +% +% \begin{abstract} +% This package provides vertical dots and diagonal dots in math, slanting +% in either direction. It should work equally well in \LaTeX{} or plain +% \TeX{}. It improves on the default definitions of plain \TeX{} and +% \LaTeX{}. Similar improvements are provided for the triple and +% quadruple dot accents of AMS\TeX{}/\LaTeX{}. +% \end{abstract} +% +% \StopEventually{\PrintIndex} +% +% \section{Introduction} +% +% Running \LaTeX{} or \TeX{} on \file{mathdots.ins} generates +% \file{mathdots.sty}, a \LaTeX{} package, and \file{mathdots.tex} a plain +% \TeX{} input file. If one puts \verb"\input mathdots.sty" in a plain +% \TeX{} file, it will cause \file{mathdots.tex} to be input. This is for +% backward compatibility. +% +% Unlike the commands \cs{vdots} and \cs{ddots} provided by \LaTeX{}, +% the versions defined by \MD{} change size with \LaTeX{} size +% changing commands, as well as in \{sub[sub]\|super[super]\}scripts. +% After \MD{} is loaded, \verb"\Large$\ddots$" will be larger and +% \verb"\small$\ddots$" will be smaller than \verb"$\ddots$". Moreover, +% \verb"$2^{2^\ddots}$" will also produce a smaller symbol. This last +% example is very unlikely to be needed, but the version with the +% opposite slant is very common. +% +% The default \LaTeX{} (and plain \TeX) definition changes the size of the +% dots, and the horizontal dimensions, but not the vertical dimensions. +% Using the default version in 'scripts produces symbols identical to +% those produced elsewhere. Finally, the default takes the dots from the +% current text font, whereas the \MD{} package takes them from the +% current math symbol font, so they should match other dots in math mode. +% This is only really a concern in \mtt{17pt} sizes or larger where +% \file{cmr17} is scaled to get text dots, but \file{cmsy12} is scaled to +% get math dots. +% +% \cs{iddots} is similar to \cs{ddots}, except it produces the other +% diagonal. This command is not provided in basic \TeX{} or \LaTeX{}. +% +% \cs{vdots} produces vertical dots (as in standard \TeX{} or \LaTeX{}), +% but again, the \MD{} version will change size with size +% changing commands. +% +% The old behavior is stored in \cs{fixedddots} and \cs{fixedvdots}. +% If you wish \cs{iddots} to behave similarly then use \cs{fixediddots}. +% +% The \cs{fixed...} versions try to maintain the (awful) default behavior, +% which is to let the horizontal dimensions change size, as well as the +% dots themselves, but hard code unchanging vertical dimensions. +% +% On the chance that some other package changes the behavior before \MD{} +% is loaded, use \cs{originalddots}, \cs{originalvdots}, and +% \cs{originaliddots} to obtain the versions in force before the \MD{} is +% loaded. +% +% If the \LaTeX{} and the \prog{amsmath} package are detected, the +% commands \cs{dddot} and \cs{ddddot} are modified to get the same +% size changing behavior in 'scripts. They also correct a positioning bug +% in the \prog{amsmath} code. The correction requires the command +% \cs{text}, and so is only applied if \prog{amsmath} has been loaded +% \emph{before} \MD{}. The old amsmath commands are saved +% in \cs{originaldddot} and \cs{originalddddot}. Similar comments apply +% to plain \TeX{} with regard to \file{amstex.tex}. +% +% In \LaTeX{}, all these commands have been made robust as of version 0.6. +% +% \section{The implementation} +% +% We define the version and date for plain\TeX{}. The file +% \file{mathdots.sty} immediately switches to \file{mathdots.tex} if +% \LaTeX{} is not being used. +% \iffalse +%<*dtx> +% \fi +% \begin{macrocode} +%<tex>\def\mathdotsfiledate{2006/02/07}% +%<tex>\def\mathdotsfileversion{0.7}% +%<sty>\ifx\documentclass\UndEfInEd\input mathdots \expandafter\endinput\fi +% \end{macrocode} +% \iffalse +%</dtx> +% \fi +% +% The following are commands for plain \TeX{} that prevent double loading, +% announce the package name, and change/restore the category of \mtt{@}. +% \begin{macrocode} +%<*tex> +\expandafter +\ifx\csname MathDots\mathdotsfileversion\endcsname\relax +\else + \immediate\write16{Mathdots already loaded.}\expandafter\endinput +\fi +\immediate\write16{Package mathdots, \mathdotsfiledate\space version + \mathdotsfileversion.}% +\expandafter\edef\csname MathDots\mathdotsfileversion\endcsname{% + \catcode`\noexpand\@=\the\catcode`@}% +\catcode`\@=11 +\def\@nameuse#1{\csname#1\endcsname}% +%</tex> +% \end{macrocode} +% +% Now various shorthands. For example `\cs{MD@us}\cs{MD@t}' becomes +% `\cs{textstyle}' and `\cs{MD@uf}\cs{MD@ss}' produces +% `\cs{scriptscriptfont 0}'. +% \begin{macrocode} +\def\MD@us#1{\@nameuse{#1style}}% +\def\MD@uf#1{\@nameuse{#1font}0}% +\def\MD@t{text}\def\MD@s{script}\def\MD@ss{scriptscript}% +\newdimen\MD@unit \MD@unit\p@ +% \end{macrocode} +% +% The following are the main utility macros to implement changes of style. +% Since most of our symbols are built with boxes, they have to exit math +% mode and need \cs{mathchoice} so we know the current style (i.e., size) +% when we re-enter math mode. +% +% We detect differences in sizes (for example, after \cs{large}) by +% examining the appropriate \cs{fontdimen} of family 0. Instead of the +% hard coded \mtt{1pt}, we use \mtt{0.1em} from this family. +% +% We pass along the current style via \cs{everymath}. +% +% In \cs{MD@palette}, \arg1 is a command which we feed the current +% style name. For example, \cs{MD@palette}\cs{MD@ddots} will be our +% definition of \cs{ddots}. Then \cs{MD@ddots} will see the current style +% as its first argument. +% \begin{macrocode} +\def\MD@changestyle#1{\relax\MD@unit0.1\fontdimen6\MD@uf{#1}% + \everymath\expandafter{\the\everymath\MD@us{#1}}}% +\def\MD@dot{$\m@th\ldotp$}% +\def\MD@palette#1{\mathchoice{#1\MD@t}{#1\MD@t}{#1\MD@s}{#1\MD@ss}}% +% \end{macrocode} +% +% In the following commands, \arg1 is the current style (supplied via +% \cs{MD@palette}). Except for the change in the unit used and the dot +% used, the first two definitions are essentially the same as plain's +% \cs{ddots} and \cs{vdots}, and the third is the same as the first with +% the oxes reversed. +% \begin{macrocode} +\def\MD@ddots#1{{\MD@changestyle{#1}% + \mkern1mu\raise7\MD@unit\vbox{\kern7\MD@unit\hbox{\MD@dot}}% + \mkern2mu\raise4\MD@unit\hbox{\MD@dot}% + \mkern2mu\raise \MD@unit\hbox{\MD@dot}\mkern1mu}}% +\def\MD@vdots#1{\vbox{\MD@changestyle{#1}% + \baselineskip4\MD@unit\lineskiplimit\z@ + \kern6\MD@unit\hbox{\MD@dot}\hbox{\MD@dot}\hbox{\MD@dot}}}% +\def\MD@iddots#1{{\MD@changestyle{#1}% + \mkern1mu\raise \MD@unit\hbox{\MD@dot}% + \mkern2mu\raise4\MD@unit\hbox{\MD@dot}% + \mkern2mu\raise7\MD@unit\vbox{\kern7\MD@unit\hbox{\MD@dot}}}}% +% \end{macrocode} +% +% \DescribeMacro{\fixedddots} +% \DescribeMacro{\fixedvdots} +% We include current (2005/12/01) \LaTeX{}/plain\TeX{} definitions +% so a user can choose them. \LaTeX{} and plain\TeX{} don't have the other +% diagonal, so we provide a \DescribeMacro{fixediddots}\cs{fixediddots} +% which is just \cs{fixedddots} with the boxes reversed. +% +% \DescribeMacro{\originalvdots} +% \DescribeMacro{\originalddots} +% We save the versions at load time so user can use them in case he +% loads \MD{} for its other features. Chances are the original +% \DescribeMacro{\originaliddots}\cs{iddots} is undefined. +% \begin{macrocode} +%<sty>\DeclareRobustCommand\fixedvdots{% +%<tex>\def\fixedvdots{% + \vbox{\baselineskip4\p@ \lineskiplimit\z@ + \kern6\p@\hbox{.}\hbox{.}\hbox{.}}}% +%<sty>\DeclareRobustCommand\fixedddots{% +%<tex>\def\fixedddots{% + \mathinner{\mkern1mu + \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern2mu + \raise4\p@\hbox{.}\mkern2mu + \raise\p@\hbox{.}\mkern1mu}}% +%<sty>\DeclareRobustCommand\fixediddots{% +%<tex>\def\fixediddots{% + \mathinner{\mkern1mu + \raise\p@\hbox{.}\mkern2mu + \raise4\p@\hbox{.}\mkern2mu + \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern1mu}}% +\let\originalddots=\ddots +\let\originalvdots=\vdots +\let\originaliddots=\iddots +% \end{macrocode} +% +% \DescribeMacro{\ddots} +% \DescribeMacro{\vdots} +% \DescribeMacro{\iddots} +% Here are the actual (re)definitions of these three commands. The +% plain\TeX{} version emits messages similar to that produced by +% \LaTeX{}'s \cs{DeclareRobustCommand}. +% \begin{macrocode} +%<sty>\DeclareRobustCommand\ddots{% +%<tex>\def\ddots{% + \mathinner{\MD@palette\MD@ddots}}% +%<sty>\DeclareRobustCommand\iddots{% +%<tex>\def\iddots{% + \mathinner{\MD@palette\MD@iddots}}% +%<sty>\DeclareRobustCommand\vdots{% +%<tex>\def\vdots{% + \mathinner{\MD@palette\MD@vdots}}% +%<tex>\wlog{Mathdots Info: Redefining \string\ddots.}% +%<tex>\wlog{Mathdots Info: Redefining \string\vdots.}% +% \end{macrocode} +% +% Now we try to get AMS \cs{dddot} and \cs{ddddot} accents to behave. +% +% \DescribeMacro{\dddot} +% \DescribeMacro{\ddddot} +% We add a \verb"\kern\z@" to prevent \TeX{} from vertically centering +% \arg1. I don't know if the \cs{text} command is necessary, but it +% doesn't seem to hurt. I included it in the original version because that +% one used text dots and needed the text to change size. Now I use a math +% symbol (the dot accent) and mathpalette to implement the change. +% Still, I don't really understand how \cs{ex@} works in the AMS packages, +% so I leave it in. For possible tuning, I have used two macros that +% represent the math spacing placed before and after the sequence of +% dots (\cs{MD@prekern} and \cs{MD@postkern}). Also, the actual dot is in +% the definition of \cs{MD@D} where another spacing command follows the +% dot (\cs{MD@dotkern}). In fact, by redefining \cs{MD@D} and possibly the +% spacing, one can define other double accent commands. +% +% \DescribeMacro{\originaldddot} +% \DescribeMacro{\originalddddot} +% We also save the original \prog{amsmath} versions. +% \begin{macrocode} +\newbox\MD@dotsbox +\newmuskip\MD@prekern +\newmuskip\MD@postkern +\newmuskip\MD@dotkern +\MD@prekern 0mu +\MD@postkern -1mu +\MD@dotkern -1.3mu +\def\MD@dotsaccent#1{\mathpalette{\MD@@dotsaccent{#1}}}% +\def\MD@@dotsaccent#1#2#3{% + {\setbox\MD@dotsbox\hbox{$#2\mkern\MD@prekern#1\mkern\MD@postkern$}% + \mathop{#3\kern\z@}\limits^{% + \text{\vbox to-1.4\ex@{\kern-1.8\ex@\copy\MD@dotsbox\vss}}}}% +}% +\let\originaldddot \dddot +\let\originalddddot\ddddot +%<*sty> +\@ifpackageloaded{amsmath}{% + \def\MD@D{\mathchar"5F\mkern\MD@dotkern}% + \DeclareRobustCommand\dddot {\MD@dotsaccent{\MD@D\MD@D\MD@D}}% + \DeclareRobustCommand\ddddot{\MD@dotsaccent{\MD@D\MD@D\MD@D\MD@D}}% +}{}% +%</sty> +%<*tex> +\def\amstexfmtname{AmS-TeX}% +\ifx\amstexfmtname\fmtname + \def\MD@D{\mathchar"5F\mkern\MD@dotkern}% + \wlog{Mathdots Info: Redefining \string\dddot.}% + \wlog{Mathdots Info: Redefining \string\ddddot.}% + \def\dddot {\MD@dotsaccent{\MD@D\MD@D\MD@D}}% + \def\ddddot{\MD@dotsaccent{\MD@D\MD@D\MD@D\MD@D}}% +\fi +\csname MathDots\mathdotsfileversion\endcsname +%</tex> +%</sty|tex> +% \end{macrocode} +%\Finale diff --git a/Master/texmf-dist/source/generic/mathdots/mathdots.ins b/Master/texmf-dist/source/generic/mathdots/mathdots.ins new file mode 100644 index 00000000000..dfdbda4cd90 --- /dev/null +++ b/Master/texmf-dist/source/generic/mathdots/mathdots.ins @@ -0,0 +1,35 @@ +\input docstrip
+\keepsilent
+\preamble
+
+-------------------------------------------------------------------
+
+Copyright 2001--2006, Daniel H. Luecking
+
+Mathdots may be distributed and/or modified under the conditions of the
+LaTeX Project Public License, either version 1.3 of this license or (at
+your option) any later version. The latest version of this license is in
+ <http://www.latex-project.org/lppl.txt>
+and version 1.3 or later is part of all distributions of LaTeX version
+2003/12/01 or later.
+
+Mathdots has maintenance status "author-maintained". The Current
+Maintainer is Daniel H. Luecking. The Base Interpreters associated with
+mathdots are plain TeX and LaTeX
+
+\endpreamble
+\askforoverwritefalse
+
+\generate{\file{mathdots.tex}{\from{mathdots.dtx}{tex}}
+ \file{mathdots.sty}{\from{mathdots.dtx}{sty}}}
+
+\immediate\write16{%
+^^J*******************************************************************
+^^J
+^^J To finish the installation, copy the files mathdots.tex and
+^^J mathdots.sty to a location where TeX and LaTeX will find them.
+^^J For example, the directory TEXMF/tex/generic/mathdots/ .
+^^J
+^^J*******************************************************************}
+
+\endbatchfile
diff --git a/Master/texmf-dist/tex/generic/mathdots/mathdots.sty b/Master/texmf-dist/tex/generic/mathdots/mathdots.sty new file mode 100644 index 00000000000..6bc3ec5b05e --- /dev/null +++ b/Master/texmf-dist/tex/generic/mathdots/mathdots.sty @@ -0,0 +1,90 @@ +%% +%% This is file `mathdots.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% mathdots.dtx (with options: `sty') +%% +%% ------------------------------------------------------------------- +%% +%% Copyright 2001--2006, Daniel H. Luecking +%% +%% Mathdots may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License, either version 1.3 of this license or (at +%% your option) any later version. The latest version of this license is in +%% <http://www.latex-project.org/lppl.txt> +%% and version 1.3 or later is part of all distributions of LaTeX version +%% 2003/12/01 or later. +%% +%% Mathdots has maintenance status "author-maintained". The Current +%% Maintainer is Daniel H. Luecking. The Base Interpreters associated with +%% mathdots are plain TeX and LaTeX +%% +\ifx\documentclass\UndEfInEd\input mathdots \expandafter\endinput\fi +\ProvidesPackage{mathdots} +[2006/03/16 v0.8 Improve and add various macros for dots in math.]% +\def\MD@us#1{\@nameuse{#1style}}% +\def\MD@uf#1{\@nameuse{#1font}0}% +\def\MD@t{text}\def\MD@s{script}\def\MD@ss{scriptscript}% +\newdimen\MD@unit \MD@unit\p@ +\def\MD@changestyle#1{\relax\MD@unit0.1\fontdimen6\MD@uf{#1}% + \everymath\expandafter{\the\everymath\MD@us{#1}}}% +\def\MD@dot{$\m@th\ldotp$}% +\def\MD@palette#1{\mathchoice{#1\MD@t}{#1\MD@t}{#1\MD@s}{#1\MD@ss}}% +\def\MD@ddots#1{{\MD@changestyle{#1}% + \mkern1mu\raise7\MD@unit\vbox{\kern7\MD@unit\hbox{\MD@dot}}% + \mkern2mu\raise4\MD@unit\hbox{\MD@dot}% + \mkern2mu\raise \MD@unit\hbox{\MD@dot}\mkern1mu}}% +\def\MD@vdots#1{\vbox{\MD@changestyle{#1}% + \baselineskip4\MD@unit\lineskiplimit\z@ + \kern6\MD@unit\hbox{\MD@dot}\hbox{\MD@dot}\hbox{\MD@dot}}}% +\def\MD@iddots#1{{\MD@changestyle{#1}% + \mkern1mu\raise \MD@unit\hbox{\MD@dot}% + \mkern2mu\raise4\MD@unit\hbox{\MD@dot}% + \mkern2mu\raise7\MD@unit\vbox{\kern7\MD@unit\hbox{\MD@dot}}}}% +\DeclareRobustCommand\fixedvdots{% + \vbox{\baselineskip4\p@ \lineskiplimit\z@ + \kern6\p@\hbox{.}\hbox{.}\hbox{.}}}% +\DeclareRobustCommand\fixedddots{% + \mathinner{\mkern1mu + \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern2mu + \raise4\p@\hbox{.}\mkern2mu + \raise\p@\hbox{.}\mkern1mu}}% +\DeclareRobustCommand\fixediddots{% + \mathinner{\mkern1mu + \raise\p@\hbox{.}\mkern2mu + \raise4\p@\hbox{.}\mkern2mu + \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern1mu}}% +\let\originalddots=\ddots +\let\originalvdots=\vdots +\let\originaliddots=\iddots +\DeclareRobustCommand\ddots{% + \mathinner{\MD@palette\MD@ddots}}% +\DeclareRobustCommand\iddots{% + \mathinner{\MD@palette\MD@iddots}}% +\DeclareRobustCommand\vdots{% + \mathinner{\MD@palette\MD@vdots}}% +\newbox\MD@dotsbox +\newmuskip\MD@prekern +\newmuskip\MD@postkern +\newmuskip\MD@dotkern +\MD@prekern 0mu +\MD@postkern -1mu +\MD@dotkern -1.3mu +\def\MD@dotsaccent#1{\mathpalette{\MD@@dotsaccent{#1}}}% +\def\MD@@dotsaccent#1#2#3{% + {\setbox\MD@dotsbox\hbox{$#2\mkern\MD@prekern#1\mkern\MD@postkern$}% + \mathop{#3\kern\z@}\limits^{% + \text{\vbox to-1.4\ex@{\kern-1.8\ex@\copy\MD@dotsbox\vss}}}}% +}% +\let\originaldddot \dddot +\let\originalddddot\ddddot +\@ifpackageloaded{amsmath}{% + \def\MD@D{\mathchar"5F\mkern\MD@dotkern}% + \DeclareRobustCommand\dddot {\MD@dotsaccent{\MD@D\MD@D\MD@D}}% + \DeclareRobustCommand\ddddot{\MD@dotsaccent{\MD@D\MD@D\MD@D\MD@D}}% +}{}% +\endinput +%% +%% End of file `mathdots.sty'. diff --git a/Master/texmf-dist/tpm/mathdots.tpm b/Master/texmf-dist/tpm/mathdots.tpm new file mode 100644 index 00000000000..6f5b18f7eda --- /dev/null +++ b/Master/texmf-dist/tpm/mathdots.tpm @@ -0,0 +1,31 @@ +<!DOCTYPE rdf:RDF SYSTEM "../../support/tpm.dtd"> +<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:TPM="http://texlive.dante.de/"> + <rdf:Description about="http://texlive.dante.de/texlive/Package/mathdots.zip"> + <TPM:Name>mathdots</TPM:Name> + <TPM:Type>Package</TPM:Type> + <TPM:Date>2006/07/16 18:40:53</TPM:Date> + <TPM:Version></TPM:Version> + <TPM:Creator>karl</TPM:Creator> + <TPM:Title>The mathdots package.</TPM:Title> + <TPM:Description></TPM:Description> + <TPM:Author></TPM:Author> + <TPM:Size>135485</TPM:Size> + <TPM:Build/> + <TPM:RunFiles size="4473"> +texmf-dist/tex/generic/mathdots/mathdots.sty +texmf-dist/tpm/mathdots.tpm + </TPM:RunFiles> + <TPM:DocFiles size="115964"> +texmf-dist/doc/generic/mathdots/README +texmf-dist/doc/generic/mathdots/mathdots.pdf +texmf-dist/doc/generic/mathdots/mathdots.tex +texmf-dist/doc/generic/mathdots/mdtest.tex + </TPM:DocFiles> + <TPM:SourceFiles size="16179"> +texmf-dist/source/generic/mathdots/mathdots.dtx +texmf-dist/source/generic/mathdots/mathdots.ins + </TPM:SourceFiles> + <TPM:Provides>Package/mathdots</TPM:Provides> + </rdf:Description> +</rdf:RDF> + diff --git a/Master/texmf/lists/mathdots b/Master/texmf/lists/mathdots new file mode 100644 index 00000000000..4fd899bdee5 --- /dev/null +++ b/Master/texmf/lists/mathdots @@ -0,0 +1,10 @@ +texmf-dist/doc/generic/mathdots/README +texmf-dist/doc/generic/mathdots/mathdots.pdf +texmf-dist/doc/generic/mathdots/mathdots.tex +texmf-dist/doc/generic/mathdots/mdtest.tex +texmf-dist/source/generic/mathdots/mathdots.dtx +texmf-dist/source/generic/mathdots/mathdots.ins +texmf-dist/tex/generic/mathdots/mathdots.sty +texmf-dist/tpm/mathdots.tpm + +texmf/lists/mathdots |