Latex 和文件管理:链式 \include{...} 和对活动目录的引用

Latex 和文件管理:链式 \include{...} 和对活动目录的引用

对于我正在编写的文档的每一章,我都有一个单独的文件夹,并且所有文件夹都包含在一个公共超级文件夹中,并附带一个main.tex将它们放在一起的文件。理想情况下,可以单独编译每一章,以节省编译和调试的时间。我希望以一种高效灵活的方式连接所有文件。

所以我通过使用standalone主文件中的包来实现这一点,而且效果很好。最好我还能够在每个章节文件中引用其他章节的章节/公式/...,方法是包括它们的辅助文件并使用该xr包进行交叉引用。但我在文件管理方面有点吃力。

这是一个最小main.tex文件:

\documentclass[a4paper, twoside]{report}
\usepackage{standalone}

\begin{document}

\include{./Chapter1/Chapter1}
\include{./Chapter2/Chapter2}

\end{document}

这是一个最小Chapter1.tex文件

\documentclass[a4paper, twoside]{report}
\usepackage{xr}
\externaldocument{../main}

\begin{document}
\chapter{Chapter 1}
\begin{equation}\label{eq1}
a^2 + b^2 = c^2
\end{equation}
\end{document}

对于 也类似Chapter2.tex。但是,当我编译Chapter2.tex对第 1 章的引用时,它不起作用,并且我收到警告

Package xr Warning:
No file ./Chapter1/Chapter1.aux
LABELS NOT IMPORTED.

我推测这是因为当通过 包含主文件时\externaldocument{../main},对活动目录的所有引用./仍根据当前正在编译的文件的目录进行解释,即Chapter2.tex。有什么优雅的方法可以解决这个问题,而不必诉诸绝对文件目录?我在 Linux 系统上工作。

相关内容