diff options
Diffstat (limited to 'Master/texmf-dist/tex/context/base/math-int.mkiv')
-rw-r--r-- | Master/texmf-dist/tex/context/base/math-int.mkiv | 145 |
1 files changed, 78 insertions, 67 deletions
diff --git a/Master/texmf-dist/tex/context/base/math-int.mkiv b/Master/texmf-dist/tex/context/base/math-int.mkiv index 84c51cb2477..6b480961b6a 100644 --- a/Master/texmf-dist/tex/context/base/math-int.mkiv +++ b/Master/texmf-dist/tex/context/base/math-int.mkiv @@ -19,12 +19,10 @@ %D $\int _a^b f(x) dx $ and also %D $\iint _a^b f(x,y) dxdy$, %D $\iiint _a^b f(x,y) dxdy$, -%D $\iiiint _a^b f(x) dx $. %D \startformula %D \int _a^b f(x) dx \quad %D \iint _a^b f(x) dx \quad %D \iiint _a^b f(x) dx \quad -%D \iiiint _a^b f(x) dx \quad %D \stopformula %D \stopbuffer %D @@ -38,7 +36,7 @@ \installcorenamespace{mathintegral} -\newconstant\mathintlimitmode % 0 nolimits 1 displaylimits 2 limits +\newconstant\mathintlimitmode \def\intlimits % also used elsewhere {\ifcase\mathintlimitmode @@ -47,84 +45,97 @@ \displaylimits \or \limits + \or + % auto + \ifcase\normalmathstyle\displaylimits\or\displaylimits\else\limits\fi + % \ifnum\attribute\mathmodeattribute=\plusone % we need a proper flag + % \displaylimits + % \else + % \limits + % \fi + \else + % none \fi} \letvalue{\??mathintegral nolimits}\zerocount \letvalue{\??mathintegral displaylimits}\plusone \letvalue{\??mathintegral limits}\plustwo +\letvalue{\??mathintegral autolimits}\plusthree +\letvalue{\??mathintegral none}\plusfour \appendtoks \mathintlimitmode\executeifdefined{\??mathintegral\mathematicsparameter\s!integral}\zerocount \to \everyswitchmathematics \setupmathematics - [\v!integral=nolimits] +% [\v!integral=nolimits] + [\v!integral=autolimits] %D The following code is used for fallbacks and might become obsolete once %D we have enough \OPENTYPE\ math fonts. -\def\math_repeated_integal_i - {\int} - -\def\math_repeated_integal_ii - {\math_repeated_integal_i - \math_repeated_integral_kern - \math_repeated_integal_i - \math_repeat_integral_finish - \intlimits} - -\def\math_repeated_integal_iii - {\math_repeated_integal_i - \math_repeated_integral_kern - \math_repeated_integal_ii} - -\def\math_repeated_integal_iiii - {\math_repeated_integal_i - \math_repeated_integral_kern - \math_repeated_integal_iii} - -\unexpanded\def\math_repeat_integral#1% - {\let\math_repeat_integral_finish\donothing - \iffontchar\textfont\zerocount#1\relax - \expandafter\math_repeat_integral_real - \else - \expandafter\math_repeat_integral_fake - \fi} - -\def\math_repeat_integral_fake#1#2% - {\let\math_repeat_integral_fake_symbol#2% - \futurelet\next\math_repeat_integral_fake_indeed} - -\def\math_repeat_integral_real#1#2% - {#1} - -\definemathcommand [iint] {\math_repeat_integral{"0222C}\normalint \math_repeated_integal_ii } % double -\definemathcommand [iiint] {\math_repeat_integral{"0222D}\normaliint \math_repeated_integal_iii } % tripple -\definemathcommand [iiiint] {\math_repeat_integral{"FFFFF}\normaliiint\math_repeated_integal_iiii} % quadruple - -\def\math_repeated_integral_kern - {\mkern-6mu\mathchoice{\mkern-3mu}{}{}{}} - -\def\math_repeat_integral_fake_indeed - {\ifx\next\limits - \math_repeated_integral_correction - \else\ifx\next\displaylimits - \math_repeated_integral_correction - \else\ifx\next\nolimits - % nothing - \else\ifcase\mathintlimitmode - % nothing - \else - \math_repeated_integral_correction - \fi\fi\fi\fi - \math_repeat_integral_fake_symbol} - -\def\math_repeated_integral_correction - {\mkern-7mu\mathchoice{\mkern-2mu}{}{}{}% - \mathop\bgroup\mkern7mu\mathchoice{\mkern2mu}{}{}{}\let\math_repeat_integral_finish\egroup} - -%D If the \type{\limits} option is used after \type {\iint}, use \type -%D {\mathop} and fudge the left hand space a bit to make the subscript -%D visually centered. +% \def\math_repeated_integal_i +% {\int} + +% \def\math_repeated_integal_ii +% {\math_repeated_integal_i +% \math_repeated_integral_kern +% \math_repeated_integal_i +% \math_repeat_integral_finish +% \intlimits} + +% \def\math_repeated_integal_iii +% {\math_repeated_integal_i +% \math_repeated_integral_kern +% \math_repeated_integal_ii} +% +% \def\math_repeated_integal_iiii +% {\math_repeated_integal_i +% \math_repeated_integral_kern +% \math_repeated_integal_iii} +% +% \unexpanded\def\math_repeat_integral#1% +% {\let\math_repeat_integral_finish\donothing +% \iffontchar\textfont\zerocount#1\relax +% \expandafter\math_repeat_integral_real +% \else +% \expandafter\math_repeat_integral_fake +% \fi} +% +% \def\math_repeat_integral_fake#1#2% +% {\let\math_repeat_integral_fake_symbol#2% +% \futurelet\next\math_repeat_integral_fake_indeed} +% +% \def\math_repeat_integral_real#1#2% +% {#1} +% +% \definemathcommand [iint] {\math_repeat_integral{"0222C}\normalint \math_repeated_integal_ii } % double +% \definemathcommand [iiint] {\math_repeat_integral{"0222D}\normaliint \math_repeated_integal_iii } % tripple +% \definemathcommand [iiiint] {\math_repeat_integral{"FFFFF}\normaliiint\math_repeated_integal_iiii} % quadruple +% +% \def\math_repeated_integral_kern +% {\mkern-6mu\mathchoice{\mkern-3mu}{}{}{}} +% +% \def\math_repeat_integral_fake_indeed +% {\ifx\next\limits +% \math_repeated_integral_correction +% \else\ifx\next\displaylimits +% \math_repeated_integral_correction +% \else\ifx\next\nolimits +% % nothing +% \else\ifcase\mathintlimitmode +% % nothing +% \else +% \math_repeated_integral_correction +% \fi\fi\fi\fi +% \math_repeat_integral_fake_symbol} +% +% \def\math_repeated_integral_correction +% {\mkern-7mu\mathchoice{\mkern-2mu}{}{}{}% +% \mathop\bgroup\mkern7mu\mathchoice{\mkern2mu}{}{}{}\let\math_repeat_integral_finish\egroup} +% +% %D If the \type{\limits} option is used after \type {\iint}, use \type +% %D {\mathop} and fudge the left hand space a bit to make the subscript +% %D visually centered. \protect \endinput |