任务环境中的自定义计数器

任务环境中的自定义计数器

\NewTasksEnvironment我正在使用自定义计数器来生成(v.1.1a 包)中的标签tasks。这是我选择的方法,因为我在其他地方也使用了这个计数器(我需要增加和减少它的值以用于其他目的)。

老实说,我并不介意使用内置计数器tasks,但我实际上不知道它的名字,而且我不确定在其余代码中摆弄它是否会引起问题。

问题 1\NewTasksEnvironment如果我使用默认值,使用的内置计数器名称是什么label=\alph*)

问题2请参阅下面的 MWE 代码。我使用的选项\refstepcounter似乎会导致计数器增加label=\NewTasksEnvironment两次在每个标签处(参见下面的代码后的输出)。添加第 14 个项目会导致错误,Counter too large因为它超出了可用的 26 个字母值。如果我删除\refstepcounter,计数器的值将始终保持为 0,因此看起来好像代码label=(...)被“调用”了两次。我该如何修复此行为以确保计数器仅增加一次?

顺便说一句,这个(下面的代码)曾经与软件包 v0.9 一起使用tasks(所以在去年的 v1.0 更新之前)。

代码

\documentclass{article}

\usepackage{tasks}

\newcounter{subquest}
\setcounter{subquest}{0}
\renewcommand{\thesubquest}{\alph{subquest})}

\NewTasksEnvironment%
  [%
      label = \refstepcounter{subquest}\thesubquest,%
  ]%
  {lsubquestions}[\squest](1)

\begin{document}

\begin{lsubquestions}
  \squest Subquestion 1
  \squest Subquestion 2
  \squest Subquestion 3
  \squest Subquestion 4
  \squest Subquestion 5
  \squest Subquestion 6
  \squest Subquestion 7
  \squest Subquestion 8
  \squest Subquestion 9
  \squest Subquestion 10
  \squest Subquestion 11
  \squest Subquestion 12
  \squest Subquestion 13
  %\squest Subquestion 14
\end{lsubquestions}

\end{document}

输出

b) Subquestion 1
d) Subquestion 2
f) Subquestion 3
h) Subquestion 4
j) Subquestion 5
l) Subquestion 6
n) Subquestion 7
p) Subquestion 8
r) Subquestion 9
t) Subquestion 10
v) Subquestion 11
x) Subquestion 12
z) Subquestion 13

答案1

我的直觉告诉我,这可能是XY问题但我还是要回答。


在 v1.2 中,有两种方法可以使用与默认计数器不同的计数器:

\documentclass{article}

\usepackage{tasks}[2020/03/21]
\usepackage{multicol}
\newcounter{test}

% first version:
\NewTasksEnvironment[
  label = \tasksifmeasuringF{\refstepcounter{test}}A\thetest ,
  label-width = 13pt
]{testa}

% second version:
\NewTasksEnvironment[
  counter = test ,
  label = B\arabic* ,
  label-width = 13pt
]{testb}

\begin{document}

\begin{multicols}{2}
\begin{testa}
  \task one
  \task two\label{testa}
  \task three
  \task four
\end{testa}

\begin{testb}
  \task one
  \task two
  \task three\label{testb}
  \task four
\end{testb}
\end{multicols}

See \ref{testa} and \ref{testb}

\end{document}

在此处输入图片描述

相关内容