\renewenvironment{文档}

\renewenvironment{文档}

我想\usepackage{filecontents}稍后使用 \write18 将我的文档的另一个版本写入文件并进行编译。

我的问题是:如何创建一个自定义文件\begin{document}来处理我的文件的写入template1.tex并在稍后将其包括在内?

我想要这样的东西:

\documentclass{beamer}
\begin{customdocument}
//frames
\end{customdocument}

意图:我的自定义文档环境将自定义文档的内容写入第二个 tex 文件并使用不同的选项对其进行编译。

输出:两个文件 (一个有注释,一个没有注释),但只有一个工作文件。

我尝试创建一个新的环境,但随后出现了缺失的错误\begin{document}


最小示例:

\documentclass{beamer}
    \usepackage{filecontents}
    \usepackage{docmute}
\begin{filecontents*}{template1.tex}
\documentclass{beamer}
\begin{document}
\begin{frame}{A frame}
    Foo
\end{frame}
\end{document}
\end{filecontents*}
\immediate\write18{pdflatex -jobname=\jobname _notes\space template1}
\begin{document}
\input{template1}
\end{document}

答案1

我不清楚该文件的用途是什么template1.tex。但语法可以修复。filecontents可以加载包 \documentclass通过\RequirePackage

\RequirePackage{filecontents}
\begin{filecontents*}{template1.tex}
\documentclass{beamer}
\begin{document}
\begin{frame}{A frame}
    Foo
\end{frame}
\end{document}
\end{filecontents*}
\immediate\write18{pdflatex -jobname=\jobname _notes\space template1}
\input{template1}

document那么就不需要重新定义环境。

相关内容