在字体命令中使用新命令会产生错误

在字体命令中使用新命令会产生错误

我已将新命令定义为宏,如下所示:

\newcommand{\Sel}[3]{S_{#1}^{#2, #3}}

我希望此命令的每次调用都包含 teletypefont( \texttt),因此我尝试将宏更改为:

\newcommand{\Sel}[3]{\texttt{S_{#1}^{#2, #3}}}

\Sel这导致我的 Tex 文件中使用的行出现以下错误:

  • Missing $ inserted.
  • Extra }, or forgotten $.

尝试在 Tex 文件中执行以下操作也会出现类似的错误:

$\texttt{\Sel{x}{y}{z}}$

我希望这是我误解了命令内部命令的用法。

任何帮助,将不胜感激。

谢谢。

答案1

\documentclass{article}

\begin{document}

Let us change your

\verb+\newcommand{\Sel}[3]{\texttt{S_{#1}^{#2, #3}}}+

into

\newcommand{\Sel}[3]{\mathtt{S_{#1}^{#2, #3}}}

${\Sel{x}{y}{z}}$

\end{document}

在此处输入图片描述

正如您所看到的,\texttt变成了\mathtt,它在数学模式下表现正常。

相关内容