summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/medmath/medmath.sty
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/medmath/medmath.sty')
-rw-r--r--macros/latex/contrib/medmath/medmath.sty37
1 files changed, 28 insertions, 9 deletions
diff --git a/macros/latex/contrib/medmath/medmath.sty b/macros/latex/contrib/medmath/medmath.sty
index 7232e01531..fa1810a964 100644
--- a/macros/latex/contrib/medmath/medmath.sty
+++ b/macros/latex/contrib/medmath/medmath.sty
@@ -7,20 +7,18 @@
% aiming to provide more stable and flexible medium-size math commands.
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{medmath}[2024-01-15 v2024D Better medium-size math commands]
+\ProvidesPackage{medmath}[2024-01-20 v2024E Better medium-size math commands]
\RequirePackage{array}
\RequirePackage{etoolbox}
\newbool{mdm@bare} \boolfalse{mdm@bare} % don't define any public commands
\newbool{mdm@base} \boolfalse{mdm@base} % define only basic public commands
-\newbool{mdm@amsfonts} \booltrue{mdm@amsfonts} % use ams symbol fonts
\DeclareKeys{
bare .if = mdm@bare,
base .if = mdm@base,
all .ifnot = mdm@base,
- mdm@amsfonts .if = mdm@amsfonts
}
\ProcessKeyOptions
@@ -187,11 +185,6 @@
\newlength{\@mdm@em}
\setlength{\@mdm@em}{1em}
-\ifmdm@amsfonts
- \def\mdm@op@kern{0.5\@mdm@em}%
-\else
- \def\mdm@op@kern{0.3\@mdm@em}%
-\fi
\newcommand{\mdm@style@unit}[1]{%
\mathchoice{\setlength{\@mdm@em}{1em}#1}{\setlength{\@mdm@em}{1em}#1}
{\setlength{\@mdm@em}{0.5em}#1}{\setlength{\@mdm@em}{0.3em}#1}%
@@ -416,7 +409,33 @@
%%> \section{Activate definitions at the beginning of the document}
%%% --------------------------------------------------------
-\NewDocumentCommand\mdm@activate@base{}{
+%% Current largesymbols font of math version normal is stored in \mv@normal:
+%% ... \getanddefine@fonts \symlargesymbols \OMX/cmex/m/n ...
+
+\def\mdm@get@font@cmd#1\getanddefine@fonts\symlargesymbols#2#3\@mdm@scan@stop{%
+ \expandafter\mdm@get@font@name\string#2\@mdm@scan@stop
+}
+
+\def\mdm@get@font@name#1#2/#3/#4/#5\@mdm@scan@stop{%
+ \def\@mdm@font@name{#3}%
+}
+
+\def\@mdm@intcorr@factor@cmex{0.5} % default largesymbols font
+\def\@mdm@intcorr@factor@mdput{0.3} % [utopia]{mathdesign}
+\def\@mdm@intcorr@factor@mdbch{0.3} % [charter]{mathdesign}, {arevmath}
+
+\NewDocumentCommand\mdm@adjust@intcorr{}{%
+ \expandafter\mdm@get@font@cmd\mv@normal\@mdm@scan@stop
+ \ifcsdef{@mdm@intcorr@factor@\@mdm@font@name}{%
+ \edef\@mdm@intcorr@factor{\csuse{@mdm@intcorr@factor@\@mdm@font@name}}%
+ }{%
+ \def\@mdm@intcorr@factor{0.5}% default value
+ }%
+ \ExpandArgs{No}\def\mdm@op@kern{\@mdm@intcorr@factor\@mdm@em}%
+}
+
+\NewDocumentCommand\mdm@activate@base{}{%
+ \mdm@adjust@intcorr
\let \medmath = \mdm@base@medmath
\let \medop = \mdm@base@medop
\let \medintcorr = \mdm@base@medintcorr