隔离 Latex 环境

隔离 Latex 环境

我想建立一个用于共享 Latex 数学练习的框架。当我尝试将不同作者的练习组合成一个“家庭作业”时,我遇到了一个问题。我该如何处理它们不同的宏和设置?有没有办法做这样的事情:

在此处输入图片描述

我考虑过预览和小页面包,但我不知道它们如何完成这项工作。

重要的是,练习 1 和 2 可能有冲突的宏,因此环境必须完全隔离且自成一体。此外,练习应该是可分页的。

有人知道如何解决这个问题吗?

编辑:伪代码示例

\documentclass[preview]{standalone}

\begin{document}

\beginex

\documentclass[preview, varwidth=500]{standalone} 
\usepackage{amsmath} 
\newenvironment{LAmatrix}{\begin{bmatrix}}{\end{bmatrix}}

...Something

\endex

...

\end{document}

由于这显然不起作用,我可能会使用解析器来删除文档类并将包移动到标题并用来\begingroup ... \endgroup隔离其余部分。

答案1

这是一个带有tcblisting内容的命题,它非常强大,但我限制了它的基本用法——它可以通过很多选项轻松扩展。

确保使用listing only环境选项,否则尝试排版代码及其 LaTeX 输出。当然,如果出现诸如、、 之tcolorbox类的情况,这肯定会失败。\documentclass\usepackage{...}\begin{document}...\end{document}

2nd论点是为了指定任务,该3rd论点旨在表明版权。

更好的方法:使用\DeclareTotalTColorBox和相关命令。

\documentclass{article}

\usepackage{etoolbox}
\usepackage[most]{tcolorbox}

\newtcblisting[auto counter,number within=section]{texexercise}[3][]{listing only,listing options={language={TeX}}, colback=white!40!yellow, enhanced jigsaw, sharp corners, title={\TeX\ exercise \thetcbcounter\ #2\notblank{#3}{\hfill \textcopyright #3}{}},coltitle={black},colbacktitle={blue!20!white},#1}
\begin{document}

\section{Easy stuff}


\begin{texexercise}{Find the errors in this task}{By me!}
  \begin{document}
  \usepackage{foo}
  \end{document}
\end{texexercise}


\begin{texexercise}{Complete and/or correct the following code}{}
  \documentclass
  \usepackage[}{graphicx}
  \begin{document}
  \includegraphics{scale=17}[foo.gif]
  \end{document}
\end{texexercise}


\end{document}

在此处输入图片描述

由于问题本身不明确:排版问题和解决方案的可能性有很多,tcolorbox并且具有其recording特征。

相关内容