当主要部分和组件部分之间存在不同文件夹级别时,子文件不起作用

当主要部分和组件部分之间存在不同文件夹级别时,子文件不起作用

我有以下文件夹结构

Project
 | 00Main
 |  |
 |  | Main.tex
 | 01Components
 |  | IntroFolder
 |  |  | Introduction.tex
 |  | DataChapterFolder
 |  |  | Data.tex
 |  | TexVariablesFolder
 |  |  | MacrosAndVariables.tex

等等。

在“Main.tex”文件中,我使用 subfiles 包将我的数据和 intro.tex 文件包含在 begin{document} 中

但是我使用 \inpnut 来包含文档内容之前的宏和变量。

\input{../01Components/TexVariablesFolder/MacrosAndVariables.tex}

\begin{document}
  \subfile{../01Components/IntroFolder/Introduction.tex}
\end{document}

这很有效。太棒了。

但。

如果我尝试仅编译“Introduction.tex”文件(以节省时间),我会收到要求提供“MacrosAndVariables.tex”文件的错误。

我不知道我是否可以解释,但是在编译简介时,它要向上移动两个文件夹级别 (../../)。但是“输入”命令只能向上移动一个。

如果我将 \input 改为

\input{../../01Components/TexVariablesFolder/MacrosAndVariables.tex}

当我在简介文件夹中进行编译时。然后它就可以工作了。

但是当我回去编译“主”文档时,我必须从 \input 中删除多余的 ../。

我猜想相对路径是相对于您正在编译的内容而言的,而不是相对于找到它们的文件而言的。

有没有办法来解决这个问题?

我不知道如何给出 MWE,因为它非常依赖硬盘结构。

相关内容