enumitem 枚举列表项的引用格式

enumitem 枚举列表项的引用格式

我有一份公理列表,并用来enumitem标记它们:

\documentclass{article}
\usepackage{enumitem}
\newcommand\fmt[1]{$\mathbf{(#1)}$}
\begin{document}

\begin{enumerate}[format=\fmt]

\item[Ex_1]\label{ax1} The sky is blue.

\item[Egreg_\infty]\label{ax2} Another item.

\end{enumerate}
The first condition is \ref{ax1}
\end{document}

所有\items 都有其可选参数,因为名称不遵循简单的模式。我希望 的格式\ref与标签在列表中的格式完全相同。但似乎当\item给出其可选参数时,它甚至不会发出引用的锚点,更不用说像标签一样格式化引用了。

有没有办法做到这一点?

答案1

使用不同的标记。

\documentclass{article}
\usepackage{enumitem}

\DeclareRobustCommand\fmt[1]{$\mathbf{(#1)}$}
\newenvironment{axioms}
 {\enumerate[format=\fmt]}
 {\endenumerate}
\makeatletter
\newcommand{\axiom}[1]{%
  \def\@currentlabel{\fmt{#1}}\item[#1]%
}
\makeatother


\begin{document}

\begin{axioms}

\axiom{Ex_1}\label{ax1} The sky is blue.

\axiom{Egreg_\infty}\label{ax2} Another item.

\end{axioms}

The first condition is \ref{ax1}, while the second is \ref{ax2}.

\end{document}

在此处输入图片描述

相关内容