From 4f55c9271affed648c1a939790a73083043752f5 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Tue, 7 Mar 2023 03:02:56 +0000 Subject: CTAN sync 202303070302 --- macros/luatex/generic/minim-math/minim-math.tex | 79 ++++++++++++++++++++++--- 1 file changed, 72 insertions(+), 7 deletions(-) (limited to 'macros/luatex/generic/minim-math/minim-math.tex') diff --git a/macros/luatex/generic/minim-math/minim-math.tex b/macros/luatex/generic/minim-math/minim-math.tex index 06fb632a5c..d24a6693dc 100644 --- a/macros/luatex/generic/minim-math/minim-math.tex +++ b/macros/luatex/generic/minim-math/minim-math.tex @@ -77,7 +77,7 @@ \protected\def\mbb#1{{\mathstyle{bb}#1}} \protected\def\frak#1{{\mathstyle{frak}#1}} \protected\def\bffrak#1{{\mathstyle{bffrak}#1}} -\protected\def\scr#1{{\mathstyle{scr}#1}} \let\mcal = \cal +\protected\def\scr#1{{\mathstyle{scr}#1}} \let\mcal = \scr \protected\def\bfscr#1{{\mathstyle{bfscr}#1}} \let\bfcal = \bfscr % 1 Processing the character table @@ -137,8 +137,26 @@ % decimal comma settings \explicitmathchar \comma +\Umathchardef \ordcomma "0"0"2C +\protected\def\smartcomma{% + \futurelet\smartcomma:next\smartcomma:do} +\def\smartcomma:do{\let\smartcomma:c\comma + \ifx0\smartcomma:next\let\smartcomma:c\ordcomma\fi + \ifx1\smartcomma:next\let\smartcomma:c\ordcomma\fi + \ifx2\smartcomma:next\let\smartcomma:c\ordcomma\fi + \ifx3\smartcomma:next\let\smartcomma:c\ordcomma\fi + \ifx4\smartcomma:next\let\smartcomma:c\ordcomma\fi + \ifx5\smartcomma:next\let\smartcomma:c\ordcomma\fi + \ifx6\smartcomma:next\let\smartcomma:c\ordcomma\fi + \ifx7\smartcomma:next\let\smartcomma:c\ordcomma\fi + \ifx8\smartcomma:next\let\smartcomma:c\ordcomma\fi + \ifx9\smartcomma:next\let\smartcomma:c\ordcomma\fi + \smartcomma:c} + \protected\def\decimalcomma {\Umathcode`\, = 0 \Umathcharfam`\, `\,} \protected\def\nodecimalcomma{\Umathcode`\, = 6 \Umathcharfam`\, `\,} +\protected\def\smartdecimalcomma{\mathlet,\smartcomma} + % set the colon to how it used to be \Umathcode`\:="3"0"2236 % \ratio @@ -439,13 +457,18 @@ \def\norm#1{\left\vert#1\right\vert} \let \abs=\norm \def\Norm#1{\left\Vert#1\right\Vert} -% a smaller inverse-function sign -\protected\def\inv{^{\scriptscriptstyle - \mathbin{\setbox0=\hbox{$\scriptscriptstyle-$} - \kern.75\wd0 \pdfextension save +% a slightly smaller unary minus +\def\unaryminus{\mathord{\mathpalette\unaryminus:make{}}} +\def\unaryminus:make#1#2{% + \setbox0 = \hbox{$#1-$} + \kern .75\wd0 + \pdfextension save \pdfextension setmatrix{.75 0 0 1} - \kern-\wd0\box0 \pdfextension restore} - \mkern-2mu 1}} + \kern -\wd0 \box0 + \pdfextension restore} + +% a smaller inverse-function sign +\protected\def\inv{^{\scriptscriptstyle\unaryminus1}}% % upright multiletter symbols \def\mord#1{\mathord{\mathstyle{up}#1}} @@ -504,6 +527,48 @@ \newmathop {End} \newmathop {Aut} \newmathop {Dom} \newmathop {Codom} +% 1 Displayed equations + +\newif\ifdisplay: +\newif\ifdisplay:nr +\newif\ifleftdisplays +\newtoks\setdisplaynr +\newtoks\display:specialnr +\display:specialnr{\the\setdisplaynr} + +% \display +\protected\def\display{\display:true} +% \displaynr {nr} +\protected\def\displaynr{\display:true\display:nrtrue + \nextifcat\bgroup\display:specialnr\relax} + +% \[ ... \] +\protected\def\[{\ifdisplay:\expandafter\startdisplay\else\Ustartmath\fi} +\protected\def\]{\global\expandafter\display:false + \ifdisplay:\expandafter\stopdisplay\else\Ustopmath\fi} + +\protected\def\startdisplay{% + % if the display starts a paragraph, omit baselineskip + % and ensure that the long \beforedisplayskip is used + \ifvmode \nointerlineskip + \noindent \hbox to .5\hsize{\hss}\fi + \Ustartdisplaymath + % for left-aligned equations, force manual placement + \ifleftdisplays\muskip0mu\fi} +\protected\def\stopdisplay{% + \ifleftdisplays + \hskip\displaywidth minus\displaywidth\fi + \global\expandafter\display:nrfalse + \ifdisplay:nr + \eqno\the\display:specialnr + \global\display:specialnr{\the\setdisplay:nr}\fi + \Ustopdisplaymath + \ignorespaces} + +% default equation numbering +\newcount\equationnumber \equationnumber = 0 +\setdisplaynr{\global\advance\eqnr1(\the\equationnumber)} + %  standard mappings -- cgit v1.2.3