我有许多方程式,其中需要使用特殊字符\dot
\bar
和希腊字母,例如\tau
。在方程式中,一切都运行良好,但是当我尝试编写描述时,\mathgloss
我收到错误:
Missing \endcsname inserted \mathgloss{$\dot{b}$}{bbb}{BBB}
您可以在下面找到我的代码,我尝试使用$ $
和\ensuremath{ }
梅威瑟:
\documentclass{report}
\usepackage{enumitem}
\usepackage{glossaries}
\makeglossaries
\newcommand{\mathgloss}[3]{%
\newglossaryentry{#1}{name={#1},description={#2},symbol={#3}}%
\begin{description}[labelwidth=3em]%
\item[\gls{#1}]#2 (\textbf{#3})%
\end{description}%
}
\begin{document}
\begin{equation}
a = \dot{b} *c(\tau)
\end{equation}
in which
\mathgloss{$\dot{b}$}{bbb}{BBB}
\mathgloss{ensuremath{c(\tau)}}{ccc}{CCC}
\printglossary[style=index]
\end{document}
答案1
词汇表标签中不能包含活动字符。您需要一个额外的参数来提供标签:
\documentclass{report}
\usepackage{enumitem}
\usepackage{glossaries}
\makeglossaries
\newcommand{\mathgloss}[4]{%
\newglossaryentry{#1}{name={#2},description={#3},symbol={#4}}%
\begin{description}[labelwidth=3em]%
\item[\gls{#1}]#3 (\textbf{#4})%
\end{description}%
}
\begin{document}
\begin{equation}
a = \dot{b} *c(\tau)
\end{equation}
in which
\mathgloss{dotb}{$\dot{b}$}{bbb}{BBB}
\mathgloss{ctau}{$c(\tau)$}{ccc}{CCC}
\printglossary[style=index]
\end{document}
生成: