我正在尝试定义一个(新的)环境,比如“锻炼”,带有一个可选参数和一个命令 \repeat,其工作方式如下:
首先我在文档中写了一个练习:
\begin{exercise}{hello}
bla bla
\end{exercise}
然后,我想在文档的后面重复这个练习:
\repeat{hello}
显然,输出应该重现练习。我实际上可以使用标准命令做到这一点(参见下面的代码),但我真的希望它是一个实际的环境,可以很好地与 option+click 功能配合使用,该功能可以将我带到我单击的确切位置。
可以运行但不令人满意的代码:
\newcommand\exercise[2]{%
\expandafter\gdef\csname exercise#1\endcsname{#2}%
\label{#1}#2}
\newcommand\repeat[1]{\csname exercise#1\endcsname}