使用计数器跳过数字

使用计数器跳过数字

我的文档中有几个计数器,定义如下:

\newcounter{koala} \newcommand*\koala[1][]{\refstepcounter{koala}\textbf{\thekoala #1} } \setcounter{koala}{0}

我知道我可以使用该命令以我喜欢的任意数字启动计数器\setcounter

但是,在我的文档中,我需要跳过一系列数字。例如,我将从 1、2、3、4 开始,但然后需要跳转到 23、24、25 等。

是否有一个简单的命令可以将特定的数字添加到计数器中以实现这一点?

答案1

如果计数器仅通过宏增加\koala,则可以将跳过放在那里:

\newcommand*\koala[1][]{%
  \ifnum4=\value{koala}%
    \addtocounter{koala}{18}%
  \fi
  \refstepcounter{koala}%
  \textbf{\thekoala #1}%
}

另一种方法是在格式化级别操作计数器:

\makeatletter
\renewcommand*{\thekoala}{%
  \ifnum\value{koala}>4 %
    \@arabic{\numexpr\value{koala} + 18\relax}%
  \else
    \arabic{koala}%
  \fi
}
\makeatother

采用这种方法,\value{koala}会不断递增,但\thekoala会跳跃。

相关内容