diff options
author | Karl Berry <karl@freefriends.org> | 2014-06-18 23:12:46 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2014-06-18 23:12:46 +0000 |
commit | 67262a49138e713fca67ad2ec494f718c2dda821 (patch) | |
tree | 05ffd4d79c792e1d9fc2c58d5df01c439c4550ed /Master | |
parent | 9bcc2a43de07bbee297852fd1ebf40634fa590b7 (diff) |
mathdots (12jun14)
git-svn-id: svn://tug.org/texlive/trunk@34301 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/generic/mathdots/README | 90 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/mathdots/mathdots.pdf | bin | 109664 -> 258547 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/generic/mathdots/mdotest.pdf | bin | 0 -> 159693 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/generic/mathdots/mdotest.tex (renamed from Master/texmf-dist/doc/generic/mathdots/mdtest.tex) | 11 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/mathdots/plmdotest.tex | 88 | ||||
-rw-r--r-- | Master/texmf-dist/source/generic/mathdots/mathdots.dtx | 379 | ||||
-rw-r--r-- | Master/texmf-dist/source/generic/mathdots/mathdots.ins | 70 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/mathdots/mathdots.sty | 93 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/mathdots/mathdots.tex | 105 |
9 files changed, 551 insertions, 285 deletions
diff --git a/Master/texmf-dist/doc/generic/mathdots/README b/Master/texmf-dist/doc/generic/mathdots/README index 22f4ffadc81..071d123576d 100644 --- a/Master/texmf-dist/doc/generic/mathdots/README +++ b/Master/texmf-dist/doc/generic/mathdots/README @@ -1,36 +1,54 @@ -
-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
-
+This is the mathdots package, version 0.9. +Copyright 2001--2014, Daniel H. Luecking + +License: +======= +Mathdots may be distributed and/or modified under the conditions of the +LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX dated +2008/05/04 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 + +Purpose: +======= +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 amsmath in LaTeX (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: + +README This file +mathdots.dtx The code +mathdots.pdf The manual +mathdots.ins unpacking script +mdotest.tex LaTeX test file +plmdotest.tex Plain TeX test file (requires loading amstex.tex and the + and something to define the commands \eightpoint, + \ninepoint, \tenpoint and \twelvepoint) + +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 differindex 2f2caf7e421..fa68a0143b6 100644 --- a/Master/texmf-dist/doc/generic/mathdots/mathdots.pdf +++ b/Master/texmf-dist/doc/generic/mathdots/mathdots.pdf diff --git a/Master/texmf-dist/doc/generic/mathdots/mdotest.pdf b/Master/texmf-dist/doc/generic/mathdots/mdotest.pdf Binary files differnew file mode 100644 index 00000000000..fdee95981e4 --- /dev/null +++ b/Master/texmf-dist/doc/generic/mathdots/mdotest.pdf diff --git a/Master/texmf-dist/doc/generic/mathdots/mdtest.tex b/Master/texmf-dist/doc/generic/mathdots/mdotest.tex index 2bb93dd61e7..0e61f711dc7 100644 --- a/Master/texmf-dist/doc/generic/mathdots/mdtest.tex +++ b/Master/texmf-dist/doc/generic/mathdots/mdotest.tex @@ -1,8 +1,17 @@ % All possible sizes of the various mathdots tested \documentclass{article} +%\usepackage{mathptmx} \usepackage{amsmath} \usepackage{mathdots} - +% +% \dddot and \ddddot are wider in mathptmx package. +% Since there is no way to get a measure of the actual separation +% between dots in the 2-dot accent, I have made the spacing +% commands available to the user. The following seem to work well +% for mathptmx: +%\MDodotkern=-2mu +%\MDoprekern=-1mu +%\MDopostkern=0mu \newcommand\testdots{% $\ddots^{\ddots^{\ddots}}$ $\iddots^{\iddots^{\iddots}}$ $\vdots^{\vdots^{\vdots}}$ diff --git a/Master/texmf-dist/doc/generic/mathdots/plmdotest.tex b/Master/texmf-dist/doc/generic/mathdots/plmdotest.tex new file mode 100644 index 00000000000..2396647bbd2 --- /dev/null +++ b/Master/texmf-dist/doc/generic/mathdots/plmdotest.tex @@ -0,0 +1,88 @@ +\input amstex +\input mathdots + +\eightpoint +eightpoint +$\ddots^{\ddots^{\ddots}}$ $\iddots^{\iddots^{\iddots}}$ +$\vdots^{\vdots^{\vdots}}$ + +$\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}}}$ + +\smallskip +\hrule +\smallskip +\ninepoint +ninepoint +$\ddots^{\ddots^{\ddots}}$ $\iddots^{\iddots^{\iddots}}$ +$\vdots^{\vdots^{\vdots}}$ + +$\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}}}$ + +\smallskip +\hrule +\smallskip +\tenpoint +tenpoint +$\ddots^{\ddots^{\ddots}}$ $\iddots^{\iddots^{\iddots}}$ +$\vdots^{\vdots^{\vdots}}$ + +$\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}}}$ + +\smallskip +\hrule +\smallskip +\twelvepoint +twelvepoint +$\ddots^{\ddots^{\ddots}}$ $\iddots^{\iddots^{\iddots}}$ +$\vdots^{\vdots^{\vdots}}$ + +$\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}}}$ + +\smallskip +\hrule +\smallskip +\enddocument\end diff --git a/Master/texmf-dist/source/generic/mathdots/mathdots.dtx b/Master/texmf-dist/source/generic/mathdots/mathdots.dtx index 45862da44ff..d5ace76661b 100644 --- a/Master/texmf-dist/source/generic/mathdots/mathdots.dtx +++ b/Master/texmf-dist/source/generic/mathdots/mathdots.dtx @@ -4,11 +4,11 @@ % 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 +% LaTeX Project Public License, either version 1.3c 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. +% and version 1.3c or later is part of all distributions of LaTeX version +% 2008/05/04 or later. % % Mathdots has maintenance status "author-maintained". The Current % Maintainer is Daniel H. Luecking. The Base Interpreters associated with @@ -21,13 +21,14 @@ %<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.]% +[2014/06/11 v0.9 Improve and add various macros for dots in math.]% %</sty> -%<tex>\def\mathdotsfiledate{2006/03/16}% -%<tex>\def\mathdotsfileversion{0.8}% +%<tex>\def\mathdotsfiledate{2014/06/11}% +%<tex>\def\mathdotsfileversion{0.9}% %<*driver> -\documentclass[draft]{ltxdoc} - +\documentclass{ltxdoc} +\usepackage{amsmath} +\usepackage{mathdots} \addtolength{\textwidth}{.5878pt} \def\mytt{\upshape\mdseries\ttfamily} @@ -62,7 +63,7 @@ % 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. + Numbers refer to the page(s) where the corresponding entry is described. } \def\IndexParms{% \parindent \z@ \columnsep 15pt @@ -83,14 +84,13 @@ \DisableCrossrefs \CodelineIndex \AlsoImplementation - \begin{document} \DeleteShortVerb{\|} \DocInput{mathdots.dtx} \end{document} %</driver> %\fi -% \CheckSum{327} +% \CheckSum{364} % \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 @@ -116,85 +116,182 @@ % 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{}. +% quadruple dot accents of AMS\TeX{}/AMS\LaTeX{}. % \end{abstract} % % \StopEventually{\PrintIndex} % % \section{Introduction} % -% Running \LaTeX{} or \TeX{} on \file{mathdots.ins} generates +% 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{}, +% Unlike the commands \cs{ddots} and \cs{vdots} 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. +% After \MD{} is loaded, \verb"{\large$\ddots$}" will be larger and +% \verb"{\small$\ddots$}" will be smaller than \verb"$\ddots$" at normal +% size. 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 (and is provided by \MD{}). +% +% The \prog{amsmath} accents \cs{dddot} and \cs{ddddot} have similar +% problems that \MD{} attempts to correct when \prog{amsmath} is loaded. +% +% See Table~\ref{examples} for examples of the \MD{} commands at +% different sizes and in exponents. See Table~\ref{compare} for +% comparison, showing the results without \MD{}. +% +% \def\dott#1{$#1$} +% \def\dotts#1{$2^{#1}\quad 2^{2^{#1}}$} +% \begin{table}[htbp] +% \centering \renewcommand\arraystretch{1.4} +% \begin{tabular}{c|cccc} +% \multicolumn{1}{l}{\large With \MD{}:}\\[4pt] +% \multicolumn{1}{c}{\textbf{Command}}% +% &\textbf{Large} &\textbf{normal} &\textbf{scriptsize} +% &\textbf{in exponents}\\ +% \hline +% \verb$\ddots$ & \Large\dott{\ddots} & \dott{\ddots} & \scriptsize\dott{\ddots} +% & \dotts{\ddots}\\ +% \verb$\vdots$ & \Large\dott{\vdots} & \dott{\vdots} & \scriptsize\dott{\vdots} +% & \dotts{\vdots}\\ +% \verb$\iddots$ & \Large\dott{\iddots} & \dott{\iddots} & \scriptsize\dott{\iddots} +% & \dotts{\iddots}\\ +% \verb$\dddot{X}$ & \Large\dott{\dddot{X}} & \dott{\dddot{X}} & \scriptsize\dott{\dddot{X}} +% & \dotts{\dddot{X}}\\ +% \verb$\ddddot{X}$& \Large\dott{\ddddot{X}}& \dott{\ddddot{X}}& \scriptsize\dott{\ddddot{X}} +% & \dotts{\ddddot{X}} +% \end{tabular} +% \caption{Dots at different sizes and in exponents.} +% \label{examples} +% \end{table} +% +% \begin{table}[htbp] +% \centering \renewcommand\arraystretch{1.4} +% \begin{tabular}{c|cccc} +% \multicolumn{1}{l}{\large Without \MD{}:}\\[4pt] +% \multicolumn{1}{c}{\textbf{Command}}% +% &\textbf{Large} &\textbf{normal} &\textbf{scriptsize} +% &\textbf{in exponents}\\ +% \hline +% \verb$\ddots$ & \Large\dott{\originalddots} & \dott{\originalddots} & \scriptsize\dott{\originalddots} +% & \dotts{\originalddots}\\ +% \verb$\vdots$ & \Large\dott{\originalvdots} & \dott{\originalvdots} & \scriptsize\dott{\originalvdots} +% & \dotts{\originalvdots}\\ +% \verb$\dddot{X}$ & \Large\dott{\originaldddot{X}} & \dott{\originaldddot{X}} & \scriptsize\dott{\originaldddot{X}} +% & \dotts{\originaldddot{X}}\\ +% \verb$\ddddot{X}$& \Large\dott{\originalddddot{X}} & \dott{\originalddddot{X}}& \scriptsize\dott{\originalddddot{X}} +% & \dotts{\originalddddot{X}} +% \end{tabular} +% \caption{Dots without \MD{}.} +% \label{compare} +% \end{table} % +% \DescribeMacro{\ddots} % 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{}. +% dots, and the horizontal dimensions, but not the vertical dimensions, +% giving them different slants at different sizes. Also, 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. +% +% \DescribeMacro{\iddots} +% \MD{} supplies also \cs{iddots}, with behavior similar to \cs{ddots}, +% except it produces the other diagonal. This command is not provided in +% basic \TeX{} or \LaTeX{}. % +% \DescribeMacro{\vdots} % \cs{vdots} produces vertical dots (as in standard \TeX{} or \LaTeX{}), % but again, the \MD{} version will change size with size % changing commands. % +% \DescribeMacro{\fixedddots} +% \DescribeMacro{\fixedvdots} +% \DescribeMacro{\fixediddots} % 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. +% dots themselves, but hard code unchanging vertical dimensions. The +% `fixed' part of the name does not mean `corrected', but rather +% `unchanging' or `frozen'. % +% \DescribeMacro{\originalddots} +% \DescribeMacro{\originalvdots} +% \DescribeMacro{\originaliddots} % 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 +% \cs{originaliddots} to obtain the versions in force before \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}. +% \DescribeMacro{\dddot} +% \DescribeMacro{\ddddot} +% If the \prog{amsmath} package is detected in \LaTeX{}, 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. Compare the old and new versions and the 2-dot accent +% (from basic \LaTeX{}): $\originaldddot{X},\dddot{X},\ddot{X}$. I have +% also taken the liberty of changing the spacing between dots to match +% that in the 2-dot accent. % +% \DescribeMacro{\originaldddot} +% \DescribeMacro{\originalddddot} +% Some of the changes to \cs{dddot} and \cs{ddddot} require 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}. +% +% \DescribeMacro{\MDoprekern} +% \DescribeMacro{\MDodotkern} +% \DescribeMacro{\MDopostkern} +% Different math fonts have different metrics for the \cs{dot} and +% \cs{ddot} accents. If you use a math font family other than the CM +% fonts, you can adjust the positioning and spacing of the the dots in +% \cs{dddot} and \cs{ddddot} to better match the spacing in \cs{ddot} +% with the following length commands: \cs{MDoprekern}, \cs{MDodotkern} and +% \cs{MDopostkern}. These adjust the space before the first dot, between +% the dots and after the last dot, respectively. They are in units of +% \texttt{mu}, which is $1/3$ the size of the space made by \cs{,}. +% Reducing the first and/or increasing the last one cause the dots to be +% shifted left. Reducing the middle one causes the dots to be closer +% together. As there is usually a bit of white on either side of the dot +% character, these usually have to be given negative values (so ``reduce'' +% means ``make more negative''). The defaults for the CM fonts are +% accomplished by the commands +% \begin{verbatim} +% \MDoprekern=0mu +% \MDodotkern=-1.3mu +% \MDopostkern=-1mu \end{verbatim} +% I have found that the \prog{mathptmx} package (Times fonts in text and +% math) benefits from changing these via the following commands +% \begin{verbatim} +% \MDoprekern=-1mu +% \MDodotkern=-2mu +% \MDopostkern=0mu \end{verbatim} +% \cs{MDoprekern}, \cs{MDodotkern}, and \cs{MDopostkern} were made +% user-accessible commands in version 0.9. +% +% \DescribeMacro{\MDoddots} +% \DescribeMacro{\MDovdots} +% \DescribeMacro{\MDoiddots} +% \DescribeMacro{\MDodddot} +% \DescribeMacro{\MDoddddot} % In \LaTeX{}, all these commands have been made robust as of version 0.6. +% On the chance that some later loaded package changes things, the \MD{} +% versions can be obtained with \cs{MDoddots}, \cs{MDovdots}, +% \cs{MDoiddots}, \cs{MDodddot} and \cs{MDoddddot} (as of version 0.9). % % \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} @@ -213,14 +310,14 @@ %</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}'. +% Now various shorthands. For example `\cs{MDo@us}\cs{MDo@t}' becomes +% `\cs{textstyle}' and `\cs{MDo@uf}\cs{MDo@ss}' produces +% `\cs{scriptscriptfont0}'. % \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@ +\def\MDo@us#1{\@nameuse{#1style}}% +\def\MDo@uf#1{\@nameuse{#1font}0}% +\def\MDo@t{text}\def\MDo@s{script}\def\MDo@ss{scriptscript}% +\newdimen\MDo@unit \MDo@unit\p@ % \end{macrocode} % % The following are the main utility macros to implement changes of style. @@ -234,39 +331,39 @@ % % 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 +% In \cs{MDo@palette}, \arg1 is a command which we feed the current +% style name. For example, \cs{MDo@palette}\cs{MDo@ddots} will be our +% definition of \cs{ddots}. Then \cs{MDo@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}}% +\def\MDo@changestyle#1{\relax\MDo@unit0.1\fontdimen6\MDo@uf{#1}% + \everymath\expandafter{\the\everymath\MDo@us{#1}}}% +\def\MDo@dot{$\m@th\ldotp$}% +\def\MDo@palette#1{\mathchoice{#1\MDo@t}{#1\MDo@t}{#1\MDo@s}{#1\MDo@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 +% \cs{MDo@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. +% the boxes 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}}}}% +\def\MDo@ddots#1{{\MDo@changestyle{#1}% + \mkern1mu\raise7\MDo@unit\vbox{\kern7\MDo@unit\hbox{\MDo@dot}}% + \mkern2mu\raise4\MDo@unit\hbox{\MDo@dot}% + \mkern2mu\raise \MDo@unit\hbox{\MDo@dot}\mkern1mu}}% +\def\MDo@vdots#1{\vbox{\MDo@changestyle{#1}% + \baselineskip4\MDo@unit\lineskiplimit\z@ + \kern6\MDo@unit\hbox{\MDo@dot}\hbox{\MDo@dot}\hbox{\MDo@dot}}}% +\def\MDo@iddots#1{{\MDo@changestyle{#1}% + \mkern1mu\raise \MDo@unit\hbox{\MDo@dot}% + \mkern2mu\raise4\MDo@unit\hbox{\MDo@dot}% + \mkern2mu\raise7\MDo@unit\vbox{\kern7\MDo@unit\hbox{\MDo@dot}}}}% % \end{macrocode} % % \DescribeMacro{\fixedddots} % \DescribeMacro{\fixedvdots} -% We include current (2005/12/01) \LaTeX{}/plain\TeX{} definitions +% We include current (as of 2014/06/11) \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. @@ -304,21 +401,33 @@ % 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}. +% +% Since \cs{ddots} et al.\ are defined in \LaTeX{} with +% \cs{DeclareRobustCommand}, saving the original definition with +% \verb$\let\originalddots\ddots$ will not work unless the internal +% command ``\verb*$\ddots $'' is unchanged. Thus we can't use +% \verb$\DeclareRobustCommand\ddots$ directly because it changes that +% internal. Instead we define \cs{MDoddots} and then do +% \verb$\let\ddots\MDoddots$ % \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}}% +%<sty>\DeclareRobustCommand\MDoddots{% +%<tex>\def\MDoddots{% + \mathinner{\MDo@palette\MDo@ddots}}% +%<sty>\DeclareRobustCommand\MDoiddots{% +%<tex>\def\MDoiddots{% + \mathinner{\MDo@palette\MDo@iddots}}% +%<sty>\DeclareRobustCommand\MDovdots{% +%<tex>\def\MDovdots{% + \mathinner{\MDo@palette\MDo@vdots}}% %<tex>\wlog{Mathdots Info: Redefining \string\ddots.}% %<tex>\wlog{Mathdots Info: Redefining \string\vdots.}% +\let\ddots \MDoddots +\let\iddots\MDoiddots +\let\vdots \MDovdots % \end{macrocode} % -% Now we try to get AMS \cs{dddot} and \cs{ddddot} accents to behave. +% Now we try to get AMS \cs{dddot} and \cs{ddddot} accents to behave +% nicely. % % \DescribeMacro{\dddot} % \DescribeMacro{\ddddot} @@ -326,49 +435,75 @@ % \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. +% symbol (the dot accent) and \cs{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 +% so I leave it in. +% \DescribeMacro{MDoprekern} +% \DescribeMacro{MDodotkern} +% \DescribeMacro{MDopostkern} +% For possible fine 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. +% dots (\cs{MDoprekern} and \cs{MDopostkern}). Also, the actual dot is in +% the definition of \cs{MDo@D} where another spacing command follows the +% dot (\cs{MDodotkern}). In fact, by redefining \cs{MDo@D} and changing +% the spacing, one can define other multiple ``dot'' 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}}}}% -}% +\newbox\MDo@dotsbox +\newmuskip\MDoprekern +\newmuskip\MDopostkern +\newmuskip\MDodotkern +\MDoprekern 0mu +\MDopostkern -1mu +\MDodotkern -1.3 mu +\def\MDo@dotsaccent#1{\mathpalette{\MDo@@dotsaccent{#1}}}% \let\originaldddot \dddot \let\originalddddot\ddddot %<*sty> +\def\MDo@@dotsaccent#1#2#3{% + {\setbox\MDo@dotsbox\hbox{$#2\mkern\MDoprekern#1\mkern\MDopostkern$}% + \mathop{#3\kern\z@}\limits^{% + \text{\vbox to-1.4\ex@{\kern-1.8\ex@\copy\MDo@dotsbox\vss}}}}% +}% \@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}}% + \def\MDo@D{\mathchar"5F\mkern\MDodotkern}% + \DeclareRobustCommand\MDodddot {% + \MDo@dotsaccent{\MDo@D\MDo@D\MDo@D}}% + \DeclareRobustCommand\MDoddddot{% + \MDo@dotsaccent{\MDo@D\MDo@D\MDo@D\MDo@D}}% + \let\dddot \MDodddot + \let\ddddot\MDoddddot }{}% %</sty> +% \end{macrocode} +% +% For plain tex + amstex: \cs{ex@} is set in \file{amstex.tex} to +% \texttt{.2326ex}, so its value depends on the value of \texttt{ex} when +% \prog{amstex} is loaded. Unlike \prog{amsmath}, it doesn't seem to be +% recalculated with size changes. Thus, in plain TeX we add a reset. +% \begin{macrocode} %<*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}}% +\def\MDo@@dotsaccent#1#2#3{% +{% + \setbox\MDo@dotsbox\hbox{$#2\mkern\MDoprekern#1\mkern\MDopostkern$}% + \mathop{#3\kern\z@}\limits^{\text{\ex@.2326ex + \vbox to-1.4\ex@{\kern-1.8\ex@\copy\MDo@dotsbox\vss}}}% +}}% +\ifx\amstexloaded@\relax % true if amstex has been loaded + % A backup test in case \amstexloaded@ became \relax by accident: + \ifx\ddddot\UndEfInEd + \else + \def\MDo@D{\mathchar"5F\mkern\MDodotkern}% + \wlog{Mathdots Info: Redefining \string\dddot.}% + \wlog{Mathdots Info: Redefining \string\ddddot.}% + \def\MDodddot {\MDo@dotsaccent{\MDo@D\MDo@D\MDo@D}}% + \def\MDoddddot{\MDo@dotsaccent{\MDo@D\MDo@D\MDo@D\MDo@D}}% + \let\dddot \MDodddot + \let\ddddot\MDoddddot + \fi \fi \csname MathDots\mathdotsfileversion\endcsname %</tex> diff --git a/Master/texmf-dist/source/generic/mathdots/mathdots.ins b/Master/texmf-dist/source/generic/mathdots/mathdots.ins index dfdbda4cd90..521c93bca73 100644 --- a/Master/texmf-dist/source/generic/mathdots/mathdots.ins +++ b/Master/texmf-dist/source/generic/mathdots/mathdots.ins @@ -1,35 +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
+\input docstrip +\keepsilent +\preamble + +------------------------------------------------------------------- + +Copyright 2001--2014, 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 index 6bc3ec5b05e..4d50d782890 100644 --- a/Master/texmf-dist/tex/generic/mathdots/mathdots.sty +++ b/Master/texmf-dist/tex/generic/mathdots/mathdots.sty @@ -8,7 +8,7 @@ %% %% ------------------------------------------------------------------- %% -%% Copyright 2001--2006, Daniel H. Luecking +%% Copyright 2001--2014, 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 @@ -23,26 +23,26 @@ %% \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}}}}% +[2014/06/11 v0.9 Improve and add various macros for dots in math.]% +\def\MDo@us#1{\@nameuse{#1style}}% +\def\MDo@uf#1{\@nameuse{#1font}0}% +\def\MDo@t{text}\def\MDo@s{script}\def\MDo@ss{scriptscript}% +\newdimen\MDo@unit \MDo@unit\p@ +\def\MDo@changestyle#1{\relax\MDo@unit0.1\fontdimen6\MDo@uf{#1}% + \everymath\expandafter{\the\everymath\MDo@us{#1}}}% +\def\MDo@dot{$\m@th\ldotp$}% +\def\MDo@palette#1{\mathchoice{#1\MDo@t}{#1\MDo@t}{#1\MDo@s}{#1\MDo@ss}}% +\def\MDo@ddots#1{{\MDo@changestyle{#1}% + \mkern1mu\raise7\MDo@unit\vbox{\kern7\MDo@unit\hbox{\MDo@dot}}% + \mkern2mu\raise4\MDo@unit\hbox{\MDo@dot}% + \mkern2mu\raise \MDo@unit\hbox{\MDo@dot}\mkern1mu}}% +\def\MDo@vdots#1{\vbox{\MDo@changestyle{#1}% + \baselineskip4\MDo@unit\lineskiplimit\z@ + \kern6\MDo@unit\hbox{\MDo@dot}\hbox{\MDo@dot}\hbox{\MDo@dot}}}% +\def\MDo@iddots#1{{\MDo@changestyle{#1}% + \mkern1mu\raise \MDo@unit\hbox{\MDo@dot}% + \mkern2mu\raise4\MDo@unit\hbox{\MDo@dot}% + \mkern2mu\raise7\MDo@unit\vbox{\kern7\MDo@unit\hbox{\MDo@dot}}}}% \DeclareRobustCommand\fixedvdots{% \vbox{\baselineskip4\p@ \lineskiplimit\z@ \kern6\p@\hbox{.}\hbox{.}\hbox{.}}}% @@ -59,31 +59,38 @@ \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}}}}% -}% +\DeclareRobustCommand\MDoddots{% + \mathinner{\MDo@palette\MDo@ddots}}% +\DeclareRobustCommand\MDoiddots{% + \mathinner{\MDo@palette\MDo@iddots}}% +\DeclareRobustCommand\MDovdots{% + \mathinner{\MDo@palette\MDo@vdots}}% +\let\ddots \MDoddots +\let\iddots\MDoiddots +\let\vdots \MDovdots +\newbox\MDo@dotsbox +\newmuskip\MDoprekern +\newmuskip\MDopostkern +\newmuskip\MDodotkern +\MDoprekern 0mu +\MDopostkern -1mu +\MDodotkern -1.3 mu +\def\MDo@dotsaccent#1{\mathpalette{\MDo@@dotsaccent{#1}}}% \let\originaldddot \dddot \let\originalddddot\ddddot +\def\MDo@@dotsaccent#1#2#3{% + {\setbox\MDo@dotsbox\hbox{$#2\mkern\MDoprekern#1\mkern\MDopostkern$}% + \mathop{#3\kern\z@}\limits^{% + \text{\vbox to-1.4\ex@{\kern-1.8\ex@\copy\MDo@dotsbox\vss}}}}% +}% \@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}}% + \def\MDo@D{\mathchar"5F\mkern\MDodotkern}% + \DeclareRobustCommand\MDodddot {% + \MDo@dotsaccent{\MDo@D\MDo@D\MDo@D}}% + \DeclareRobustCommand\MDoddddot{% + \MDo@dotsaccent{\MDo@D\MDo@D\MDo@D\MDo@D}}% + \let\dddot \MDodddot + \let\ddddot\MDoddddot }{}% \endinput %% diff --git a/Master/texmf-dist/tex/generic/mathdots/mathdots.tex b/Master/texmf-dist/tex/generic/mathdots/mathdots.tex index 25d1f88338d..dfd4cfc2514 100644 --- a/Master/texmf-dist/tex/generic/mathdots/mathdots.tex +++ b/Master/texmf-dist/tex/generic/mathdots/mathdots.tex @@ -8,7 +8,7 @@ %% %% ------------------------------------------------------------------- %% -%% Copyright 2001--2006, Daniel H. Luecking +%% Copyright 2001--2014, 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 @@ -21,8 +21,8 @@ %% 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}% +\def\mathdotsfiledate{2014/06/11}% +\def\mathdotsfileversion{0.9}% \expandafter \ifx\csname MathDots\mathdotsfileversion\endcsname\relax \else @@ -34,25 +34,25 @@ \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\MDo@us#1{\@nameuse{#1style}}% +\def\MDo@uf#1{\@nameuse{#1font}0}% +\def\MDo@t{text}\def\MDo@s{script}\def\MDo@ss{scriptscript}% +\newdimen\MDo@unit \MDo@unit\p@ +\def\MDo@changestyle#1{\relax\MDo@unit0.1\fontdimen6\MDo@uf{#1}% + \everymath\expandafter{\the\everymath\MDo@us{#1}}}% +\def\MDo@dot{$\m@th\ldotp$}% +\def\MDo@palette#1{\mathchoice{#1\MDo@t}{#1\MDo@t}{#1\MDo@s}{#1\MDo@ss}}% +\def\MDo@ddots#1{{\MDo@changestyle{#1}% + \mkern1mu\raise7\MDo@unit\vbox{\kern7\MDo@unit\hbox{\MDo@dot}}% + \mkern2mu\raise4\MDo@unit\hbox{\MDo@dot}% + \mkern2mu\raise \MDo@unit\hbox{\MDo@dot}\mkern1mu}}% +\def\MDo@vdots#1{\vbox{\MDo@changestyle{#1}% + \baselineskip4\MDo@unit\lineskiplimit\z@ + \kern6\MDo@unit\hbox{\MDo@dot}\hbox{\MDo@dot}\hbox{\MDo@dot}}}% +\def\MDo@iddots#1{{\MDo@changestyle{#1}% + \mkern1mu\raise \MDo@unit\hbox{\MDo@dot}% + \mkern2mu\raise4\MDo@unit\hbox{\MDo@dot}% + \mkern2mu\raise7\MDo@unit\vbox{\kern7\MDo@unit\hbox{\MDo@dot}}}}% \def\fixedvdots{% \vbox{\baselineskip4\p@ \lineskiplimit\z@ \kern6\p@\hbox{.}\hbox{.}\hbox{.}}}% @@ -69,36 +69,45 @@ \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}}% +\def\MDoddots{% + \mathinner{\MDo@palette\MDo@ddots}}% +\def\MDoiddots{% + \mathinner{\MDo@palette\MDo@iddots}}% +\def\MDovdots{% + \mathinner{\MDo@palette\MDo@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\ddots \MDoddots +\let\iddots\MDoiddots +\let\vdots \MDovdots +\newbox\MDo@dotsbox +\newmuskip\MDoprekern +\newmuskip\MDopostkern +\newmuskip\MDodotkern +\MDoprekern 0mu +\MDopostkern -1mu +\MDodotkern -1.3 mu +\def\MDo@dotsaccent#1{\mathpalette{\MDo@@dotsaccent{#1}}}% \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}}% +\def\MDo@@dotsaccent#1#2#3{% +{% + \setbox\MDo@dotsbox\hbox{$#2\mkern\MDoprekern#1\mkern\MDopostkern$}% + \mathop{#3\kern\z@}\limits^{\text{\ex@.2326ex + \vbox to-1.4\ex@{\kern-1.8\ex@\copy\MDo@dotsbox\vss}}}% +}}% +\ifx\amstexloaded@\relax % true if amstex has been loaded + % A backup test in case \amstexloaded@ became \relax by accident: + \ifx\ddddot\UndEfInEd + \else + \def\MDo@D{\mathchar"5F\mkern\MDodotkern}% + \wlog{Mathdots Info: Redefining \string\dddot.}% + \wlog{Mathdots Info: Redefining \string\ddddot.}% + \def\MDodddot {\MDo@dotsaccent{\MDo@D\MDo@D\MDo@D}}% + \def\MDoddddot{\MDo@dotsaccent{\MDo@D\MDo@D\MDo@D\MDo@D}}% + \let\dddot \MDodddot + \let\ddddot\MDoddddot + \fi \fi \csname MathDots\mathdotsfileversion\endcsname \endinput |