![在任务包中将计数器增加 2](https://linux22.com/image/465266/%E5%9C%A8%E4%BB%BB%E5%8A%A1%E5%8C%85%E4%B8%AD%E5%B0%86%E8%AE%A1%E6%95%B0%E5%99%A8%E5%A2%9E%E5%8A%A0%202.png)
我正在使用任务包来布局练习答案。但是练习的编号为 1、3、5、7 等。任务当然要增加 1 才能得到 1、2、3、4 等。有没有办法为任务设置增量值?
\documentclass{article}
\usepackage{tasks}
\begin{document}
\begin{tasks}[label=\arabic*](3)
\task $x^2$
\task $y^5$
\task $a^5$
\task $b^5$
\task $c^5$
\task $d^5$
\end{tasks}
\end{document}
答案1
当 的值label
具有以下形式时\foo*
,tasks
将应用于\foo
默认计数器。定义一个使用计数器值进行简单算术运算的命令。
\documentclass{article}
\usepackage{tasks}
\NewExpandableDocumentCommand{\makeodd}{m}{%
\inteval{2*\value{#1}-1}%
}
\begin{document}
\begin{tasks}[label=\makeodd*](3)
\task $x^2$
\task $y^5$
\task $a^5$
\task $b^5$
\task $c^5$
\task $d^5$
\end{tasks}
\end{document}
答案2
使用 Circada 在其评论中提出的计步器想法,我们得到了想要的结果。这比使用 \task[number] 手动添加数字更好。添加新条目更容易,无需手动重新编号所有内容。
\documentclass{article}
\usepackage{tasks}
\begin{document}
\begin{tasks}[label=\arabic*](3)
\task $x^2$
\task $y^5$ \stepcounter{task}
\task $a^5$ \stepcounter{task}
\task $b^5$ \stepcounter{task}
\task $c^5$ \stepcounter{task}
\task $d^5$ \stepcounter{task}
\end{tasks}
\end{document}
答案3
沉思算术,
平均能量损失
\documentclass{article}
\usepackage{tasks}
\ExplSyntaxOn
\NewDocumentCommand { \makeodd } { m } {
\int_set:Nn \l_tmpa_int { \value{#1} }
\int_eval:n {
\l_tmpa_int + \l_tmpa_int -1
}
}
\ExplSyntaxOff
\begin{document}
Since the set of natual numbers is infinite, and the set of odd numbers is also infinite, one can be mapped to the other (in this case, via $n*2-1$) to display odd-numbered labels in the `enumerate`-style task list without needing to change the actual task number.
For the case where the start value for the list numbering is `1`, the calculation \texttt{\textbackslash makeodd}, in expl3 syntax
\begin{quotation}\noindent
\begin{verbatim}
\NewDocumentCommand { \makeodd } { m } {
\int_set:Nn \l_tmpa_int { \value{#1} }
\int_eval:n {
\l_tmpa_int + \l_tmpa_int -1
}
}
\end{verbatim}
\end{quotation}
and called via the \verb|tasks| environment's \verb|label=| option,
\begin{quotation}\noindent
\verb|label={(\makeodd*)},|
\end{quotation}
gives:
\begin{tasks}[%
style=enumerate,
label={(\makeodd*)},
label-width=4ex,
% start = {20},
](3)
\task $xx^2$
\task $xy^5$
\task $xa^5$
\task $xb^5$
\task $xc^5$
\task $xd^5$
\end{tasks}
\end{document}