![在预定义的额外部分中写入参数的命令/环境](https://linux22.com/image/247348/%E5%9C%A8%E9%A2%84%E5%AE%9A%E4%B9%89%E7%9A%84%E9%A2%9D%E5%A4%96%E9%83%A8%E5%88%86%E4%B8%AD%E5%86%99%E5%85%A5%E5%8F%82%E6%95%B0%E7%9A%84%E5%91%BD%E4%BB%A4%2F%E7%8E%AF%E5%A2%83.png)
我正在编写一个脚本,我想将一些证明放在一个额外的部分中。但是,为了进行编辑,我想将证明放在命题之后。因此,我想要某种命令将输入发送到预定义的部分(例如:将输入附加到该部分的末尾)
我想到的是这样的:
此代码
\section{section}
Hello
\sendtoOtherSection{World}
\section{other section}
Nothing here
生成:
1 节
你好
2 其他部分
这里没有什么
世界
就像这个问题的标题所说的那样,我不关心它\sendtoOtherSection
是命令还是环境。移位文本出现的顺序并不重要。
答案1
由于您只想将文本向前移动,因此您可以调整答案如何保存字符串的运行列表,然后逐个处理它们继续构建这些稍后需要显示的部分。然后,当您希望它们显示时,只需调用\OtherSection
,累积的代码就会在那里排版:
\documentclass{article}
\def\OtherSection{}
\makeatletter
\newcommand{\sendtoOtherSection}[1]{%
\g@addto@macro\OtherSection{{#1}\par\noindent}%
}
\makeatother
\begin{document}
\section{Section One}
\par\noindent
Hello. Hello.
\sendtoOtherSection{Is there anybody out there?}
\section{Section Two}
Goodbye Cruel World.
\sendtoOtherSection{I'm leaving you today.}
\section{Other Section}
\OtherSection
\end{document}