如何从数学模式引用数学模式中的标签

如何从数学模式引用数学模式中的标签

如果您从其他数学模式事件中引用以数学模式编写的项目标签,则会出现错误。我猜这是因为它会导致嵌套数学模式。有什么方法可以避免这些错误吗?

下面是一个示例,在数学模式下引用第一个标签会出现一个错误,而引用第二个标签则会出现另一个错误:

\documentclass{article}

\usepackage{enumitem}
\usepackage{fixltx2e}% For the label with \( \) to work

\begin{document}

\begin{enumerate}[label=$e'_{\arabic*}$]
\item Bla bla bla\label{e1}
\end{enumerate}

\begin{enumerate}[label=\(e'_{\arabic*}\)]
\item Bla bla bla\label{vare1}
\end{enumerate}

\(h \mid \ref{e1}\)

\(h \mid \ref{vare1}\)

\end{document}

答案1

您应该能够使用ensuremath它来帮助您。以下内容为我编译。我用ensuremath环境替换了美元符号。

\begin{enumerate}[label=\ensuremath{e'_{\arabic*}}]
\item Bla bla bla\label{e1}
\end{enumerate}

\ref{e1}
\(h \mid \ref{e1}\)

或者你可以使用mbox

\begin{enumerate}[label=$e'_{\arabic*}$]
\item Bla bla bla\label{e1}
\end{enumerate}

\ref{e1}
\(h \mid \mbox{\ref{e1}}\)

相关内容