当包含独立文件时,如何保持章节编号独立?

当包含独立文件时,如何保持章节编号独立?

假设我有一个文件test2.tex,其中包含另一个文件的内容test1.tex

这两个文件都是独立文档(即我希望能够test.tex自行编译)。

test1.tex包含以下内容:

\documentclass{article}
\begin{document}
\section{Section X}
\end{document}

编译后,它会产生

1 第十节

test2.tex包含以下内容:

\documentclass{article}
\usepackage{standalone}

\begin{document}
\section{Section 1}
\input{test1}
\section{Section 2}
\end{document}

编译后,它会产生:

1 第 1 节

2 第十节

3 第 2 节

但我是:

1 第 1 节

1 第十节

2 第 2 节

如何将包含的文件限制在其自己的“环境”中(我不知道在 latex 中这叫什么 - 我只是在学习)。重申一下,我想确保它test1.tex本身仍然是一个可编译的文件,如果可能的话,我宁愿不修改它。

答案1

据我所知,standalone它不保留计数器值,它只是将glues文件放在一起(当然由于包裹\begin{document}...\end{document}等采取了一些预防措施)

特殊环境在这里没有帮助,因为LaTeX计数器不是群体安全的。

该包xassoccnt提供了\BackupCounterValues{section,...}命令,用于存储列表中给出的计数器的值并重置计数器。之后用于\RestoreAllCounterValues恢复值。

(我是的作者xassoccnt,我想提供“备份”列表,即预定义的计数器列表,可以交给宏\BackupCounterValues。在当前版本中,这还不可能)

test1.tex

\documentclass{article}
\begin{document}
\section{Section X}
\end{document}

驱动文件

\documentclass{article}
\usepackage{standalone}
\usepackage{xassoccnt}

\begin{document}
\section{Section 1}
\BackupCounterValues{section,figure,table} % and perhaps other counters
\input{test1}
\RestoreAllCounterValues
\section{Section 2}
\end{document}

在此处输入图片描述

相关内容