暂时更改 LaTeX 中的文档类别/重置 pdfLaTeX

暂时更改 LaTeX 中的文档类别/重置 pdfLaTeX

我怎样才能暂时让 pdfLaTeX 忘记我告诉它的所有内容并从一个新的文档类开始?

我修改了 lshort 文档中的示例环境:

\newwrite\examplesx@out
\newenvironment{示例x}{%
  \begingroup%让我们保持本地变化
    \@bsphack
    \immediate\openout \examplesx@out \jobname.exa
    \let\do\@makeother\dospecials\catcode`\^^M\active
    \def\verbatim@processline{%
      \immediate\write\examplesx@out{\the\verbatim@line}}%
    \逐字@开始
  }{%
  \immediate\closeout\examplesx@out\@esphack\endgroup%
  \noindent\makebox[\textwidth][l]{%
    \begin{minipage}[c]{0.45\textwidth}%
      \small\verbatiminput{\jobname.exa}
    \结束{迷你页面}%
    \hspace*{0.1\textwidth}%
    \framebox{%
      \开始{minipage}{0.45\textwidth}%
        \small\input{\jobname.exa}%
      \end{迷你页面}
    }%
  }\vspace*{\parskip}%
}

它基本上可以工作,但我希望能够做类似的事情

\begin{示例}
\section{部分}
\结束{示例}

并让它显示为框中的一个部分。我还希望它使用标准article样式排版列表,即使我在beamer

答案1

你不能。LaTeX 大多数情况下都假设全局操作。

对于你试图解决的问题,我不知道思考有没有“固定”的工作流程可以做到这一点。我的一般方法是

  1. 将示例写到辅助文件中(包括一些预先准备好的序言),
  2. 使用预览包单独编译辅助文件以获取裁剪图像,然后
  3. 将生成的图像插入其中。

您可以在 fontspec 文档的源代码中找到一个稍微复杂的例子(字体规格.dtx) 从以 开始的行开始\newenvironment{Fexample}。它用于fancyvrb逐字写入,并使用 '即时' 完成编译\immediate\write18。(否则,您可以使用 shell 脚本。)

相关内容