diff options
Diffstat (limited to 'macros/latex/contrib/unicode-math-input/unicode-math-input.sty')
-rw-r--r-- | macros/latex/contrib/unicode-math-input/unicode-math-input.sty | 42 |
1 files changed, 20 insertions, 22 deletions
diff --git a/macros/latex/contrib/unicode-math-input/unicode-math-input.sty b/macros/latex/contrib/unicode-math-input/unicode-math-input.sty index b9696c3a32..6d5a014c23 100644 --- a/macros/latex/contrib/unicode-math-input/unicode-math-input.sty +++ b/macros/latex/contrib/unicode-math-input/unicode-math-input.sty @@ -14,7 +14,7 @@ \RequirePackage{expl3} \RequirePackage{iftex} -\ProvidesExplPackage{unicode-math-input}{2024-01-18}{0.1.0}{Allow entering Unicode symbols in math formulas} +\ProvidesExplPackage{unicode-math-input}{2024-01-25}{0.1.1}{Allow entering Unicode symbols in math formulas} \makeatletter \AtBeginDocument{ @@ -357,36 +357,34 @@ \cs_new_eq:NN \umiFrac \frac % ======== after the superscript collection, \umiPrime\umiPrime... should be replaced with \dprime etc. smartly -\cs_new_protected:Npn \umiPrime{ \__umi_prime } % indirection layer for fast meaning-equality checking +\cs_new_protected:Npn \umiPrime{ \__umi_prime 1 } % note. Keep this short for fast meaning-equality checking \cs_new_eq:NN \umiPrimeNormalDefinition \umiPrime -\cs_new_protected:Npn \__umi_prime { - \peek_meaning_collect_inline:Nn \umiPrime { - % note that ##1 misses one \prime as expands to this current function - \int_case:nnF { \tl_count:n {##1} } { - 1 {\__umi_alternatives_iisafe \dprime {\prime\prime}} - 2 {\__umi_alternatives_iisafe \trprime{\prime\prime\prime}} - 3 {\__umi_alternatives_iisafe \qprime {\prime\prime\prime\prime}} +\cs_new_protected:Npn \__umi_prime #1 { + \peek_meaning_remove:NTF \umiPrime { + \exp_args:Nf \__umi_prime {\int_eval:n{#1+1}} + } { + \int_case:nnF { #1 } { + 2 {\__umi_alternatives_iisafe \dprime {\prime\prime}} + 3 {\__umi_alternatives_iisafe \trprime{\prime\prime\prime}} + 4 {\__umi_alternatives_iisafe \qprime {\prime\prime\prime\prime}} } { - % complicated way to repeat '\prime' <count #1> times - \cs_gset_eq:NN \umiPrime \prime - \prime ##1 - \cs_gset_eq:NN \umiPrime \umiPrimeNormalDefinition + \prg_replicate:nn {#1} {\prime} } } } % similar for backprime -\cs_new_protected:Npn \umiBackprime{ \__umi_backprime } +\cs_new_protected:Npn \umiBackprime{ \__umi_backprime 1 } \cs_new_eq:NN \umiBackprimeNormalDefinition \umiBackprime -\cs_new_protected:Npn \__umi_backprime { - \peek_meaning_collect_inline:Nn \umiBackprime { - \int_case:nnF { \tl_count:n {##1} } { - 1 {\__umi_alternatives_iisafe \backdprime {\backprime\backprime}} - 2 {\__umi_alternatives_iisafe \backtrprime {\backprime\backprime\backprime}} +\cs_new_protected:Npn \__umi_backprime #1 { + \peek_meaning_remove:NTF \umiBackprime { + \exp_args:Nf \__umi_backprime {\int_eval:n{#1+1}} + } { + \int_case:nnF { #1 } { + 2 {\__umi_alternatives_iisafe \backdprime {\backprime\backprime}} + 3 {\__umi_alternatives_iisafe \backtrprime {\backprime\backprime\backprime}} } { - \cs_gset_eq:NN \umiBackprime \backprime - \backprime ##1 - \cs_gset_eq:NN \umiBackprime \umiBackprimeNormalDefinition + \prg_replicate:nn {#1} {\backprime} } } } |