summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/pm-isomath
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-05-19 19:59:58 +0000
committerKarl Berry <karl@freefriends.org>2021-05-19 19:59:58 +0000
commite3bf523e628a1e9ff7b3ba31de512c0b08406147 (patch)
tree0854bd0b8524e0f64d82f13fcc9ea3cc1446e222 /Master/texmf-dist/tex/latex/pm-isomath
parent9779dc3d6af91c41ab3e004e56912cfb35d59b16 (diff)
pm-isomath (19may21)
git-svn-id: svn://tug.org/texlive/trunk@59269 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/pm-isomath')
-rw-r--r--Master/texmf-dist/tex/latex/pm-isomath/pm-isomath.sty80
1 files changed, 51 insertions, 29 deletions
diff --git a/Master/texmf-dist/tex/latex/pm-isomath/pm-isomath.sty b/Master/texmf-dist/tex/latex/pm-isomath/pm-isomath.sty
index 1caf8015fd5..3946ad56967 100644
--- a/Master/texmf-dist/tex/latex/pm-isomath/pm-isomath.sty
+++ b/Master/texmf-dist/tex/latex/pm-isomath/pm-isomath.sty
@@ -12,9 +12,9 @@
%%
%% License information appended
%%
-\NeedsTeXFormat{LaTeX2e}[2017/01/01]
+\NeedsTeXFormat{LaTeX2e}[2019/01/01]
\ProvidesPackage{pm-isomath}[%
- 2021/05/03 v.1.1.01
+ 2021/05/15 v.1.1.07
Poor man package for typesetting ISO compliant math when using pdfLaTeX]
@@ -47,16 +47,17 @@ Poor man package for typesetting ISO compliant math when using pdfLaTeX]
\ProcessOptions*\relax
\@ifpackageloaded{amsmath}{}{\RequirePackage{amsmath}}
\@ifpackageloaded{etoolbox}{}{\RequirePackage{etoolbox}}
-\RequirePackage{xparse,xfp}
-\@ifpackageloaded{graphicx}{}{\RequirePackage{graphicx}}
+\RequirePackage{xparse}
\newcommand\switchvarsymbols[1]{%
\letcs{\tempA}{#1}\csletcs{#1}{var#1}\cslet{var#1}{\tempA}}
%%%%
+\newcommand\switchvarlowercasegreekletters{%
\switchvarsymbols{epsilon}
\switchvarsymbols{theta}
\switchvarsymbols{rho}
-\switchvarsymbols{phi}
-%%%%%
+\switchvarsymbols{phi}}
+%%%%
+\newcommand\switchvaruppercasegreekletters{%
\switchvarsymbols{Gamma}
\switchvarsymbols{Delta}
\switchvarsymbols{Theta}
@@ -67,17 +68,20 @@ Poor man package for typesetting ISO compliant math when using pdfLaTeX]
\switchvarsymbols{Upsilon}
\switchvarsymbols{Phi}
\switchvarsymbols{Psi}
-\switchvarsymbols{Omega}
+\switchvarsymbols{Omega}}
+%%%%%
+\switchvarlowercasegreekletters
+\switchvaruppercasegreekletters
\@ifpackageloaded{alphabeta}{}{\RequirePackage{alphabeta}}
\def\ISOfam{lmr}\def\ISOser{m}\def\ISOsha{n}
-\NewDocumentCommand\MathLatin{m gO{m}D(){it}}{\bgroup
-\edef\y{\IfNoValueTF{#2}{\ISOfam}{#2}}%
-\edef\x{\noexpand\egroup\noexpand\MLatin{\noexpand#1}{\y}}\x{#3}{#4}}
+\NewDocumentCommand\MathLatin{m g O{m} D(){it}}{%
+ \bgroup\edef\y{\IfNoValueTF{#2}{\ISOfam}{#2}}%
+ \edef\x{\noexpand\egroup\noexpand\MLatin{\noexpand#1}{\y}}\x{#3}{#4}%
+}
-\providecommand\MLatin[4]{\text{%
-\def\ISOfam{#2}\def\ISOser{#3}\def\ISOsha{#4}%
-\ifcsstring{math@version}{bold}{\def\ISOser{bx}}{}%
+\providecommand\MLatin[4]{\text{\def\ISOfam{#2}\def\ISOsha{#4}%
+\ifcsstring{math@version}{bold}{\def\ISOser{bx}}{\def\ISOser{#3}}%
\usefont{T1}{\ISOfam}{\ISOser}{\ISOsha}#1}}
\NewDocumentCommand\MathGreek{ m g O{m} d()}{%
@@ -85,9 +89,8 @@ Poor man package for typesetting ISO compliant math when using pdfLaTeX]
\edef\x{\IfNoValueTF{#4}{\ISOsha}{#4}}%
\MGreek{#1}{\y}{#3}{\x}}
-\newcommand{\MGreek}[4]{\text{%
-\def\ISOfam{#2}\def\ISOser{#3}\def\ISOsha{#4}%
-\ifcsstring{math@version}{bold}{\def\ISOser{bx}}{}%
+\newcommand{\MGreek}[4]{\text{\def\ISOfam{#2}\def\ISOsha{#4}%
+\ifcsstring{math@version}{bold}{\def\ISOser{bx}}{\def\ISOser{#3}}%
{\usefont{LGR}{\ISOfam}{\ISOser}{\ISOsha}#1}}}
\newcommand\ISOalpha{\MathGreek{\alpha}}
@@ -140,13 +143,31 @@ Poor man package for typesetting ISO compliant math when using pdfLaTeX]
\def\ISOsha{it}\expandafter\use@mathgroup
\csname M@OT1\endcsname{9}}
\AtBeginDocument{%
-\providecommand\mathbfit[1]{\MathLatin{#1}{lmr}[bx](it)}
-\providecommand\mathsfit[1]{\MathLatin{#1}{lmss}[m](sl)}
-\providecommand\mathsfbfit[1]{\MathLatin{#1}{lmss}[bx](sl)}}
+ \providecommand\mathrmbf[1]{\MathLatin{#1}{lmr}[bx](n)}
+ \providecommand\mathbfit[1]{\MathLatin{#1}{lmr}[bx](it)}
+ \providecommand\mathsfit[1]{\MathLatin{#1}{lmss}[m](sl)}
+ \providecommand\mathsfbfit[1]{\MathLatin{#1}{lmss}[bx](sl)}
+ \providecommand\mathsfbf[1]{\MathLatin{#1}{lmss}[bx](n)}
+}
\AtBeginDocument{%
-\let\vectorsymbol\mathbfit
-\let\matrixsymbol\mathbfit
-\let\tensorsymbol\mathsfbfit}
+ \unless\ifdefined\vectorsymbol
+ \NewDocumentCommand\vectorsymbol{s m}{%
+ \ifnum 9<1#2\relax
+ \mathrmbf{#2}%
+ \else
+ \IfBooleanTF{#1}{\!}{}\mathbfit{#2\/}%
+ \fi}%
+ \fi
+ \unless\ifdefined\matrixsymbol\let\matrixsymbol\vectorsymbol\fi
+ \unless\ifdefined\tensorsymbol
+ \NewDocumentCommand\tensorsymbol{s m}{%
+ \ifnum 9<1#2\relax
+ \mathsfbf{#2}%
+ \else
+ \IfBooleanT{#1}{\!}\mathsfbfit{#2\/}%
+ \fi}%
+ \fi
+}
\newcommand\iunit{\MathLatin{i}(n)}
\newcommand\junit{\MathLatin{j}(n)}
\ifengineer
@@ -160,14 +181,15 @@ Poor man package for typesetting ISO compliant math when using pdfLaTeX]
\renewcommand\uppi{\ISOpi(n)}
\providecommand*\diff{}
\renewcommand*\diff{\ensuremath{\mathop{}\!\MathLatin{d}(n)}}
-\newbox{\PMpartial}
+\newbox{\PMpartialbox}
\AtBeginDocument{%
-\@ifdefinable{\uppartial}%
- {\NewDocumentCommand\uppartial{O{22}}{\setbox\PMpartial\hbox{$\partial$}%
- \setbox\PMpartial=\hbox{%
- \scalebox{1}[\fpeval{cosd #1}]{\rotatebox[origin=br]{#1}{\box\PMpartial}}%
- }\raisebox{0.35ex}{\box\PMpartial}\mkern-1.25mu}}%
-}
+\unless\ifdefined\uppartial%
+ \NewDocumentCommand\uppartial{O{0.25}}{\bgroup%
+ \setbox\PMpartialbox\hbox{%
+ $\mkern1mu\partial$}\hspace{1.3\wd\PMpartialbox}%
+ \pdfsave\pdfsetmatrix{1 0 -#1 1}\llap{\box\PMpartialbox}\pdfrestore
+ \mkern-1.5mu\egroup}
+\fi}
\providecommand*\micro{}
\AtBeginDocument{\@ifpackageloaded{textcomp}%
{\renewcommand*\micro{\textormath{\textmu}{\ISOmu(rs)}}}%