使用 \texttt 時缺少插入的 { / }

使用 \texttt 時缺少插入的 { / }

我最近不得不重新安裝我的tex環境(windows下的texlive),然後我得到了很多“Missing { [or }] insert”錯誤。我設法將原因追溯到下標中使用 \texttt 。更準確地說,在以下最小範例中使用 pdflatex

\documentclass{beamer}
\begin{document}
    $A_\texttt{a}$
\end{document}

給我以下錯誤:

Missing { inserted. $A_\texttt
Missing } inserted. $A_\texttt{a}$

我猜字體一定出了問題,但我不知道是什麼。

順便說一下,對於這個小例子,pdf 檔案被正確創建,但對於較大的檔案 pdflatex 會中止。

有什麼建議麼?

答案1

建議是使用

$A_{\mathtt{a}}$

或者,如果你真的喜歡的話,

$A_{\texttt{a}}$

但請注意,在斜體上下文中,後者將以斜體列印下標。

您收到的錯誤特定於beamer,因為它會與字體混合以獲得盡可能多的無襯線字體。它不會與article或其他文檔類別一起出現。

無論如何,文法A_\texttt{a}絕不已得到官方支持,並且複雜的下標應始終用大括號括起來。

一些例子是

A_\sqrt{2}
A_\frac{1}{2}
A_\notin

最後一個例子表明,甚至沒有一個令牌是安全的。您可以安全地使用不含花括號的單字母或數字,而無需格式化說明。對於符號,使用大括號就可以了。因此

A_{\mathrm{a}}

很好,而A_\mathrm{a}是壞的,即使出現上班。

相關內容