cleveref 包只打印第一个引用,其余的只是问号

cleveref 包只打印第一个引用,其余的只是问号

我想在一个地方交叉引用多个方程式,我发现该 cleveref包正是我所需要的。但我发现 cleveref 无法正常工作:它只能正确打印第一个方程式引用。

MWE如下:

\documentclass{article}
\usepackage{cleveref}

\begin{document}

 \begin{equation}\label{eq1}
   a = b+c
 \end{equation}
 \begin{equation}\label{eq2}
   e = mc^2
 \end{equation}

 \begin{equation}\label{eq3}
    r = d +e
 \end{equation}

 \begin{equation}\label{eq4}
   f = j + m
 \end{equation}

 \begin{equation}\label{eq5}
    s = p +b
 \end{equation}

   See~\cref{eq1, eq2, eq3, eq4, eq5} for more information.
 \end{document} 

上面的代码产生如下结果: 在此处输入图片描述

只有一个方程式引用被正确打印。问题是什么?

答案1

Cleveref 对标签中的空格很敏感,因此逗号后不能有空格。它试图找到引用,' eq2'而不是'eq2''使空格突出)。

这是修复版本:

\documentclass{article}
\usepackage{cleveref}

\begin{document}
\begin{equation}\label{eq1}
  a = b+c
\end{equation}
\begin{equation}\label{eq2}
  e = mc^2
\end{equation}
\begin{equation}\label{eq3}
  r = d +e
\end{equation}
\begin{equation}\label{eq4}
  f = j + m
\end{equation}
\begin{equation}\label{eq5}
  s = p +b
\end{equation}

See \cref{eq1,eq2,eq3,eq4,eq5} for more information.
\end{document}

输出

相关内容