默认为直立小写字母 $\pi$

默认为直立小写字母 $\pi$

这个问题帮助我为自己的包创建了一个命令(更多是我定义的命令列表)来强制直立小写\pi,因此在我的包中我有以下代码: \renewcommand{\pi}{\text{$\mathup{π}$}}

我不想在这里包含我的整个包,因为它太大了。因此,举一个更简单的例子,当我运行以下代码(在 LuaLaTeX 中)时,它运行良好,并且 pi 变得直立:

\documentclass{article}
\usepackage{unicode-math}
\usepackage{amsmath}
\setmathfont{xits-math.otf}    %I use MinionMath-Regular.otf but should work the same
\begin{document}

 \renewcommand{\pi}{\text{$\mathup{π}$}}
 \verb|\pi| = \pi $\pi$       
 %I put both \pi and $\pi$ here just to show that it can work in and out of math mode.

\end{document}

但是,它只显示该行的大写 pi!如果我转到文档中的另一个位置并尝试$\pi$,它会恢复为斜体!由于我不想每次都输入$\mathup{\pi}$$\mathrm{\pi}$,有没有办法强制将此命令作为默认反而?

下面是我想要的默认设置(左)和我希望避免的设置(右)的屏幕截图:

直立 pi 与斜体 pi

答案1

我会遵循 egreg 的评论,全部使用斜体,或者全部使用直立。如果是特殊场合,则不要重新定义,\pi而是定义另一个命令。

\documentclass{scrartcl}
\usepackage{mathtools}
\usepackage{unicode-math}
\setmainfont{Minion Pro}
\setmonofont{Consolas}[Scale=MatchLowercase]
\setmathfont[Scale=MatchLowercase]{TGPagellaMath}
\AtBeginDocument{\renewcommand*\pi{\mathup{π}}}
\begin{document}
\begin{tabular}{rl}
  \verb|\pi|:            & $\pi$                 \\
  \verb|π|:              & $π$                   \\
  \verb|π| in text mode: & π \emph{π} \textbf{π} \\
\end{tabular}
\end{document}

在此处输入图片描述

相关内容