summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/esdiff/esdiff.sty
blob: 1d647b413e5c8565968f65f6019f6125506cd29b (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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
%%
%% This is file `esdiff.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% esdiff.dtx  (with options: `package')
%% 
%% Package for the notation of derivatives.
%% Eddie Saudrais, 08/09/1999.
%% Version 1.1
%% 
%% If you found any bug, please contact me at
%% eddie.saudrais@wanadoo.fr.
%% Maybe there is a new version at
%% http://perso.wanadoo.fr/eddie.saudrais/latex/latex.html
%% 
%% Run LaTeX on esdiff.ins to generate esdiff.sty
%% 
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{esdiff}
\newcommand*{\ES@taille}[1]{\displaystyle{#1}}
\newcommand*{\ES@difint}{\mkern 0mu}
\newcommand*{\ES@derpint}{\mkern 0mu}
\newcommand*{\ES@croisint}{\mkern 0mu}
\newcommand*{\ES@dop}{\mathrm{d}}
\DeclareOption{display}{\renewcommand*{\ES@taille}[1]{\displaystyle{#1}}}
\DeclareOption{text}{\renewcommand*{\ES@taille}[1]{\textstyle{#1}}}
\DeclareOption{roman}{\renewcommand*{\ES@dop}{\ensuremath{\mathrm{d}}}}
\DeclareOption{italic}{\renewcommand*{\ES@dop}{\ensuremath{d}}}
\DeclareOption{thin}{\renewcommand*{\ES@difint}{\ensuremath{\,}}}
\DeclareOption{med}{\renewcommand*{\ES@difint}{\ensuremath{\;}}}
\DeclareOption{big}{\renewcommand*{\ES@difint}{\ensuremath{\:}}}
\DeclareOption{thinp}{\renewcommand*{\ES@derpint}{\ensuremath{\,}}}
\DeclareOption{medp}{\renewcommand*{\ES@derpint}{\ensuremath{\;}}}
\DeclareOption{bigp}{\renewcommand*{\ES@derpint}{\ensuremath{\:}}}
\DeclareOption{thinc}{\renewcommand*{\ES@croisint}{\ensuremath{\,}}}
\DeclareOption{medc}{\renewcommand*{\ES@croisint}{\ensuremath{\;}}}
\DeclareOption{bigc}{\renewcommand*{\ES@croisint}{\ensuremath{\:}}}
\ProcessOptions\relax
\newcommand*{\diff}{}
\def\diff{\@ifstar{\ES@diffstar}{\ES@diffnostar}}
\def\ES@diffstar{\@ifnextchar[{\ES@diffstar@i}{\ES@diffstar@ii}}
\def\ES@diffstar@i[#1]#2#3#4{%
\mathchoice{%
\left(\frac{\ES@dop^{#1}\ES@difint#2}%
{\ES@dop\ES@difint#3^{#1}}\right)_{\mkern-7mu#4}}%
{\ES@taille{\left(\frac{\ES@dop^{#1}\ES@difint#2}%
{\ES@dop\ES@difint#3^{#1}}\right)_{\mkern-7mu#4}}}%
{\scriptstyle{\left(\frac{\ES@dop^{#1}\ES@difint#2}%
{\ES@dop\ES@difint#3^{#1}}\right)_{\mkern-7mu#4}}}%
{\scriptstyle{\left(\frac{\ES@dop^{#1}\ES@difint#2}%
{\ES@dop\ES@difint#3^{#1}}\right)_{\mkern-7mu#4}}}}
\def\ES@diffstar@ii#1#2#3{%
\mathchoice{\left(\frac{\ES@dop\ES@difint#1}%
{\ES@dop\ES@difint#2}\right)_{\mkern-7mu#3}}%
{\ES@taille{\left(\frac{\ES@dop\ES@difint#1}{\ES@dop\ES@difint#2}%
\right)_{\mkern-7mu#3}}}{\scriptstyle{\left(%
\frac{\ES@dop\ES@difint#1}{\ES@dop\ES@difint#2}\right)%
_{\mkern-7mu#3}}}%
{\scriptstyle{\left(\frac{\ES@dop\ES@difint#1}{\ES@dop\ES@difint#2}\right)%
_{\mkern-7mu#3}}}}
\def\ES@diffnostar{\@ifnextchar[{\ES@diffnostar@i}{\ES@diffnostar@ii}}
\def\ES@diffnostar@i[#1]#2#3{\mathchoice{\frac{\ES@dop^{#1}\ES@difint#2}%
{\ES@dop\ES@difint#3^{#1}}}%
{\ES@taille{\frac{\ES@dop^{#1}\ES@difint#2}{\ES@dop\ES@difint#3^{#1}}}}%
{\scriptstyle{\frac{\ES@dop^{#1}\ES@difint#2}{\ES@dop\ES@difint#3^{#1}}}}%
{\scriptstyle{\frac{\ES@dop^{#1}\ES@difint#2}{\ES@dop\ES@difint#3^{#1}}}}}
\def\ES@diffnostar@ii#1#2{\mathchoice%
{\frac{\ES@dop\ES@difint#1}{\ES@dop\ES@difint#2}}%
{\ES@taille{\frac{\ES@dop\ES@difint#1}{\ES@dop\ES@difint#2}}}%
{\scriptstyle{\frac{\ES@dop\ES@difint#1}{\ES@dop\ES@difint#2}}}%
{\scriptstyle{\frac{\ES@dop\ES@difint#1}{\ES@dop\ES@difint#2}}}}
\newcommand*{\diffp}{}
\def\diffp{\@ifstar{\ES@diffpstar}{\ES@diffpnostar}}
\def\ES@diffpstar{\@ifnextchar[{\ES@diffpstar@i}{\ES@diffpstar@ii}}
\def\ES@diffpstar@i[#1]#2#3#4{%
\mathchoice{\left(\frac{\partial^{#1}%
\ES@derpint#2}{\partial\ER@derpint#3^{#1}}\right)_{\mkern-7mu#4}}%
{\ES@taille{\left(\frac{\partial^{#1}\ES@derpint#2}{\partial\ES@derpint#3^{#1}}%
\right)_{\mkern-7mu#4}}}%
{\scriptstyle{\left(\frac{\partial^{#1}\ES@derpint#2}%
{\partial\ES@derpint#3^{#1}}%
\right)_{\mkern-7mu#4}}}%
{\scriptstyle{\left(\frac{\partial^{#1}\ES@derpint#2}%
{\partial\ES@derpint#3^{#1}}%
\right)_{\mkern-7mu#4}}}}
\def\ES@diffpstar@ii#1#2#3{\mathchoice{\left({\begingroup
            \toks0={}\count0=0
            \ES@degree #2\ES@degree
            \frac{\partial\ifnum\count0>1^{\the\count0 }\fi\ES@derpint#1}%
            {\the\toks0}%
            \endgroup}\right)_{\mkern-7mu#3}}%
            {\ES@taille{\left({\begingroup
            \toks0={}\count0=0
            \ES@degree #2\ES@degree
            \frac{\partial\ifnum\count0>1^{\the\count0 }\fi\ES@derpint#1}%
            {\the\toks0}%
            \endgroup}\right)_{\mkern-7mu#3}}}%
            {\scriptstyle{\left({\begingroup
            \toks0={}\count0=0
            \ES@degree #2\ES@degree
            \frac{\partial\ifnum\count0>1^{\the\count0 }\fi\ES@derpint#1}%
            {\the\toks0}%
            \endgroup}\right)_{\mkern-7mu#3}}}%
            {\scriptstyle{\left({\begingroup
            \toks0={}\count0=0
            \ES@degree #2\ES@degree
            \frac{\partial\ifnum\count0>1^{\the\count0 }\fi\ES@derpint#1}%
            {\the\toks0}%
            \endgroup}\right)_{\mkern-7mu#3}}}}
\def\ES@diffpnostar{\@ifnextchar[{\ES@diffpnostar@i}{\ES@diffpnostar@ii}}
\def\ES@diffpnostar@i[#1]#2#3{%
\mathchoice{\frac{\partial^{#1}\ES@derpint#2}%
{\partial\ES@derpint#3^{#1}}}%
{\ES@taille{\frac{\partial^{#1}\ES@derpint#2}{\partial\ES@derpint#3^{#1}}}}%
{\scriptstyle{\frac{\partial^{#1}\ES@derpint#2}{\partial\ES@derpint#3^{#1}}}}%
{\scriptstyle{\frac{\partial^{#1}\ES@derpint#2}{\partial\ES@derpint#3^{#1}}}}}
\def\ES@diffpnostar@ii#1#2{\mathchoice{\begingroup
            \toks0={}\count0=0
            \ES@degree #2\ES@degree
            \frac{\partial\ifnum\count0>1^{\the\count0 }\fi\ES@derpint#1}%
            {\the\toks0}%
            \endgroup}%
            {\ES@taille{\begingroup
            \toks0={}\count0=0
            \ES@degree #2\ES@degree
            \frac{\partial\ifnum\count0>1^{\the\count0 }\fi\ES@derpint#1}%
            {\the\toks0}%
            \endgroup}}%
            {\scriptstyle{\begingroup
            \toks0={}\count0=0
            \ES@degree #2\ES@degree
            \frac{\partial\ifnum\count0>1^{\the\count0 }\fi\ES@derpint#1}%
            {\the\toks0}%
            \endgroup}}%
            {\scriptstyle{\begingroup
            \toks0={}\count0=0
            \ES@degree #2\ES@degree
            \frac{\partial\ifnum\count0>1^{\the\count0 }\fi\ES@derpint#1}%
            {\the\toks0}%
            \endgroup}}}
\def\ES@degree #1{\ifx #1\ES@degree \expandafter\ES@stopd
                      \else \expandafter\ES@addd \fi #1^1$#1\ES@addd}
\def\ES@stopd #1\ES@addd{}
\def\ES@addd #1^#2#3$#4\ES@addd{\advance\count0 #2
                          \toks0=\expandafter{\the\toks0%
                           {\partial\ES@derpint #4}%
                          \ES@croisint}\ES@degree}
\endinput
%%
%% End of file `esdiff.sty'.