使用自定义标签时,如何增加枚举中的枚举数?

使用自定义标签时,如何增加枚举中的枚举数?

我正在使用枚举列表,有时我想替换显示的标签而不影响底层计数和引用机制。我知道如何逐个使用\addtocounter来恢复后续项目的编号,但这还不足以引用。此外,\addtocounter逐个使用会增加负担,我想一一指定行为。我正在使用它enumitem来定义我自己的枚举启发列表。

有没有什么办法可以改变默认的计数行为,而不用逐个修改\addtocounter

\documentclass{article}

\begin{document}
\begin{enumerate}
\item A
\item[x] B
\item C (The label should be 3, but displays 2)
\end{enumerate}

\begin{enumerate}
\item A
\addtocounter{enumi}{1}
\item[x] \label{two} B \ref{two} (The ref should be 2 but displays 1)
\item \label{three} C \ref{three} (The label and the ref are 3 as desired)
\end{enumerate}
\end{document}

答案1

尝试使用\refstepcounter而不是\addtocounter并创建一个新命令,例如\myitem,以自动执行该步骤:

\documentclass{article}

\newcommand\myitem[1][]{\item[#1]\refstepcounter{enumi}}

\begin{document}
\begin{enumerate}
    \item    A
    \item[x] B
    \item    C (The label should be 3, but displays 2)
\end{enumerate}

\begin{enumerate}
    \item      A 
    \myitem[x] \label{two} B \ref{two} (The ref should be 2 but displays 1)
    \item      \label{three} C \ref{three} (The label and the ref are 3 as desired)
\end{enumerate}
\end{document}

在此处输入图片描述

相关内容