summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/mathdots/mathdots.sty
blob: 6bc3ec5b05e94a0e70b7907cecffec59812c38b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
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'.