我的 LaTeX 工作流程涉及频繁重新编译(AucTeX 中的 Cc Cc)。现在我正在处理一个由多个章节组成的大型文档,每个章节都在一个单独的文件中。我想使用\input{}
或\include{}
机制来编译最终文档,但这需要从序言中删除章节源。
我可以创建一个包含序言和的“主”文件(每个 chapter.tex 都有一个 chapter-main.tex)\include{chapter.tex}
,但这意味着当我编辑单个章节时,我需要切换到不同的文件进行重新编译,这会破坏我的工作流程。
有没有什么方法可以使用该\include{}
机制而不妨碍单独编辑文件?
答案1
我最终使用了以下解决方案:\usepackage{standalone}
结合\usepackage{import}
。这可能不是最通用的解决方案,但对于我的目的而言是最容易实现的。
独立包会忽略单个文件的前言,因此任何\newcommand
或\renewcommand
语句都需要放在 内\begin{document}
,并且单个文件使用的所有包都需要在“主”文件的前言中声明。这些是我需要对我的章节文件进行的唯一更改;之后我只需使用导入包将它们包含到主文件中(这有助于处理相对路径):
\chapter{Introduction}
\import{chapters/introduction/}{introduction}
ETC。
答案2
有几种处理多个文件的解决方案;我更喜欢subfiles
。如果您只想指出哪个文件是“主文件”,请在文件顶部插入以下内容(并根据需要替换“rootfile”):
% Local Variables:
% TeX-master: "rootfile"
答案3
TeXnicCenter 允许通过单个“构建文件”按钮编译“当前”文档(正在编辑的文件)。此外,“构建项目”按钮将编译“主”文件。这允许编辑和编译(比如)章节,而无需切换回“主”文档进行重新编译。希望这能有所帮助,W