定义捕获整个段落的自定义命令

定义捕获整个段落的自定义命令

我正在使用考试文件类。它具有\question在环境内运行的命令,例如questions。在文档中,您可以编写类似

\begin{questions}
\question Here is the text of the question.
\end{questions}

我已经\mquestion在其中为数学考试定义了一个自定义命令,它添加了一些额外的功能,例如自动缩放答案的空间并以我想要的格式打印分数:

\newcommand{\mquestion}[2]{\question[#1] #2
\begin{solution}[\stretch{#1}]
\end{solution}
    
\hfill \fillin
    
\droppoints
}

我通过输入类似以下内容来使用它\mquestion{3}{Text of the question.}

有没有办法可以定义一个自定义命令,其工作方式与原始\question命令一样,并且不需要问题文本放在括号中?

一般而言,我希望能够定义如下命令

\newcommand{\test}[1]{A#1B}
\test abc

这会生成输出 AabcB 而不是 AaB bc。默认行为似乎是,如果省略括号,该命令仅“捕获”一个字符。我希望它一直捕获到段落末尾。我注意到在环境\item\itemize是这样工作的,所以也许这与环境有关。

相关内容