用枚举替换任务

用枚举替换任务

我正在尝试重新格式化单独的 tex 文件,而无需更改源文件。我在这里要做的是将任务环境转换为更简单的枚举环境。它应该简单一点——用“enumerate”替换“tasks”,用“\item”替换“\task”。

我尝试了下面 MWE 主题的许多变体,但都无济于事。我确信我只是没有理解一些非常简单的语法。提前感谢您的帮助!

\documentclass[openany]{book}
\usepackage[most]{tcolorbox}

\newcommand{\task}{\item}
\newenvironment{tasks}[2]{\begin{enumerate} #2}{\end{enumerate}}

\begin{document}

\begin{tasks}(3)
    \task $\pi$
    \task $e^{\pi}$
    \task etc
\end{tasks}

\end{document}

答案1

像这样?

\documentclass{book}

\newcommand{\task}{\item}
\NewDocumentEnvironment{tasks}{od()}{\enumerate}{\endenumerate}

\begin{document}

\begin{tasks}(3)
  \task $\pi$
  \task $e^{\pi}$
  \task etc
\end{tasks}

\end{document}

在此处输入图片描述

使用 无法(或只能使用一些技巧)定义带括号的可选参数\newenvironment。但使用 相当容易\NewDocumentEnvironment。该命令的详细信息在xparse手册中有说明:https://ctan.org/pkg/l3packages但它是最新 LaTeX 内核的一部分。

相关内容