恢复之前的状态(全局/局部变量)

恢复之前的状态(全局/局部变量)

我制作了一个缓存内容的包(robust-externalize),现在我的目标是自动将许多图像编译成一个文档,以节省第一次编译时序言的加载时间。所以我打算在一个文件中写入类似以下内容的内容:

\documentclass[varwidth,margin=5mm]{standalone}
\usepackage{tikz}
\usepackage{amsmath}
\NewDocumentEnvironment{robExtNewPage}{}{}{}
\standaloneenv{robExtNewPage}
\begin{document}

\begin{robExtNewPage}
  \gdef\test{I should be removed after this page}
  \begin{minipage}{1.0\linewidth}
    \begin{align}
      1+1
    \end{align}   
  \end{minipage}
\end{robExtNewPage}

\begin{robExtNewPage}
  This should give an error:
  \test

  See, equations are also not correctly numbered (I want to reset the number):\\
  
  \fbox{\begin{minipage}{1.0\linewidth}
    \begin{align}
      1+3
    \end{align}   
  \end{minipage}}
\end{robExtNewPage}

\end{document}

其中每个图像都在 内robExtNewPage。这应该或多或少可以按预期工作,但我希望尽可能地加强纯度,特别是我不希望图像 1 中的内容泄漏到图像 2,否则我会得到不确定的结果。那么是否可以在 的末尾保存状态\begin{document},并在任何 的开头恢复它robExtNewPage,这样(或多或少)就不可能在图像之间发送信号了?我猜局部变量会自动重置,所以我想我的问题与全局变量/宏有关。

相关内容