Fehlende {/} eingefügt, wenn \ texttt verwendet wird

Sep 02 2020

Ich musste kürzlich meine Tex-Umgebung neu installieren (Texlive unter Windows), und danach bekam ich viele "Fehlende {[oder}] eingefügte" Fehler. Ich habe es geschafft, die Ursache bis zur Verwendung von \ texttt im Index aufzuspüren. Genauer gesagt, verwenden Sie pdflatex im folgenden minimalen Beispiel

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

gibt mir folgende Fehler:

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

Ich denke, mit den Schriftarten muss etwas schief gelaufen sein, aber ich kann nicht herausfinden, was.

Übrigens wird für dieses kleine Beispiel die PDF-Datei korrekt erstellt, für größere Dateien wird pdflatex jedoch abgebrochen.

Irgendwelche Vorschläge?

Antworten

2 egreg Sep 02 2020 at 04:46

Der Vorschlag ist zu verwenden

$A_{\mathtt{a}}$

oder, wenn Sie es wirklich vorziehen,

$A_{\texttt{a}}$

Beachten Sie jedoch, dass in einem kursiven Kontext der Index kursiv gedruckt wird.

Der Fehler, den Sie erhalten, ist spezifisch beamer, da er mit Schriftarten jongliert, um so viel serifenlose Schrift wie möglich zu erhalten. Es würde nicht mit articleoder anderen Dokumentklassen angezeigt.

Wie auch immer, die Syntax A_\texttt{a}wurde nie offiziell unterstützt und komplexe Indizes sollten immer in Klammern gesetzt werden.

Einige Beispiele sind

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

Das letzte Beispiel zeigt, dass nicht einmal ein einziges Token sicher ist. Sie können einen einzelnen Buchstaben oder eine einzelne Ziffer ohne Formatierungsanweisung sicher ohne Klammern verwenden. Verwenden Sie für Symbole geschweifte Klammern, und Sie sind in Ordnung. Daher

A_{\mathrm{a}}

ist gut, während A_\mathrm{a}es schlecht ist, auch wenn es zu funktionieren scheint .