\newcommand 和 \prescript 无法协同工作

\newcommand 和 \prescript 无法协同工作

代码

\newcommand{\AMod}[1]{\prescript{}{#1}\text{Mod}}
\AMod{A}

导致以下错误:

! Argument of \text@ has an extra }.

\prescript当我使用 用普通下标替换下标时,不会发生错误_。我想使用\prescript,因为它看起来更美观。我该如何解决这个问题?

答案1

\prescript命令有三个参数,其中第三个是预脚本应该附加到的内容。因此

\newcommand{\AMod}[1]{\prescript{}{#1}{\text{Mod}}}

应该可以正常工作。

在您尝试时,调用解析\prescript{}{#1}\text{Mod}为,\prescript{}{#1}{\text}{Mod}这意味着第三个参数只是宏\text。当第三个参数被定义使用时\prescript,它会尝试为自己获取一个参数,但\prescript会假设它只是一些数学运算,这会导致错误。

相关内容