使用 cleveref 包来引用不带前缀“item”的枚举项

使用 cleveref 包来引用不带前缀“item”的枚举项

我尝试使用该cleveref包来引用enumerate环境中的特定项目。此外,我还使用该enumitem包按字母 ((a)、(b)、...) 枚举项目。

这是我的 MWE:

\documentclass{article}
\usepackage{enumitem}
\usepackage{cleveref}

\begin{document}

\noindent%
Text.
\begin{enumerate}[label=(\alph*)]
  \item{first}\label{item:list:first}
  \item{second}\label{item:list:second}
  \item{third}\label{item:list:third}
\end{enumerate}
The second item is \cref{item:second}.

\end{document}

...输出如下:

枚举

有没有一种相对简单的方法可以仅引用“(b)”而不引用“item (b)”(即没有前缀“item”)?换句话说,我希望输出如下:

第二项是(b)。

答案1

你问,

有没有一种相对简单的方法可以仅引用“(b)”而不引用“项目(b)”

简短回答:“是”。详细回答:使用\labelcref代替\cref

在此处输入图片描述

\documentclass{article}
\usepackage{enumitem,cleveref}
\begin{document}
\noindent
Text.
\begin{enumerate}[label=(\alph*)]
  \item{first}\label{item:first}
  \item{second}\label{item:second}
  \item{third}\label{item:third}
\end{enumerate}
The second item is \labelcref{item:second}.
\end{document}

以下是该软件包用户指南第 7 页的摘录cleveref,其中包含更多信息\labelcref

在此处输入图片描述

答案2

又快又脏。

\documentclass{article}
\usepackage{enumitem}
\usepackage{cleveref}
\crefname{enumi}{\unskip}{\unskip}
\begin{document}

\noindent%
Text.
\begin{enumerate}[label=(\alph*)]
  \item{first}\label{item:list:first}
  \item{second}\label{item:list:second}
  \item{third}\label{item:list:third}
\end{enumerate}
The second item is \cref{item:list:second}.

\end{document}

在此处输入图片描述

相关内容