Kann mir jemand sagen, welchen Fehler ich bei der folgenden Codierung gemacht habe:
\documentclass{book}
\usepackage[nonumberlist]{glossaries}
\makeglossaries
\begin{document}
Test \gls{$\sum$} or \gls{$\prod$}
\end{document}
Der Fehler ist:
! Missing \endcsname inserted.
<to be read again>
\DOTSB
l.7 Test \gls{$\sum$}
or \gls{$\prod$}
?
Bitte sagen Sie mir, was bei meiner Codierung schiefgelaufen ist …
Antwort1
Ich glaube, Sie haben die Funktionsweise des glossaries
Pakets missverstanden. Sie müssen zuerst die Begriffe (oder Symbole oder was auch immer) definieren. Jeder Begriff wird durch ein eindeutiges Label identifiziert, das keine Sonderzeichen enthalten darf. Dieses Label wird als Referenz in Befehlen wie diesen verwendet \gls
:
\documentclass{book}
\usepackage[nonumberlist]{glossaries}
\makeglossaries
\newglossaryentry{sum}{name={$\sum$},text={\sum},description={summation}}
\newglossaryentry{prod}{name={$\prod$},text={\prod},description={product}}
\begin{document}
Test $\gls{sum}$ or $\gls{prod}$.
\printglossaries
\end{document}
Alternative:
\documentclass{book}
\usepackage[nonumberlist]{glossaries}
\makeglossaries
\newglossaryentry{sum}{name={\ensuremath{\sum}},description={summation}}
\newglossaryentry{prod}{name={\ensuremath{\prod}},description={product}}
\begin{document}
Test \gls{sum} or \gls{prod}.
\printglossaries
\end{document}
Beide Methoden erzeugen: