我有一个想要参考的条件列表,因此我使用
\begin{enumerate}
\item \label{foo} ...
\item \label{bar} ...
\end{enumerate}
We reference the condition \ref{foo}.
这样,条件就被编号为 1、2、3……但如果我想要一个自定义的“编号”来反映条件之间的某种关系,比如 1、1'、2、3、……,该怎么办?如果我写
\begin{enumerate}
\item \label{foo} ...
\item[1'] \label{bar} ...
\end{enumerate}
引用不起作用,值 1' 与标签栏无关。
答案1
无法将标签与 关联,\item[]
因为相关计数器(enumi
在本例中)根本没有使用——\item[]
明确用于使用item label
可能不是由枚举生成的不同计数器。它可以是字母、另一个符号,或者——经过一些努力——甚至是图形。
重新定义\item
是可能的,但很乏味。
该crossreftools
包提供了\crtcrossreflabel{displayed label value}[labelname]
可以插入的内容。
请注意\item[{\crtcrossreflabel{1'}[bar]}]
必须使用,因为一个可选参数(来自的参数\crtcrossreflabel
)出现在另一个可选参数(来自的参数\item
)中。
\documentclass{article}
\usepackage{hyperref}
\usepackage{crossreftools}
\begin{document}
See \ref{bar}
\begin{enumerate}
\item \label{foo} ...
\item[{\crtcrossreflabel{1'}[bar]}] ...
\end{enumerate}
\end{document}