现在我在 Windows 10(64 位)上的 MikTeX 上使用 TeXStudio 和 pdflatex。
我正在做的是,我有文件夹的层次结构:
- “根”/项目目录(包含项目特定的
.sty
包)- 子项目 1(包含该子项目的主文档)
- 子项目 1 内容(包含一堆
.tex
带有内容的文件)
- 子项目 1 内容(包含一堆
- 子项目 2(包含该子项目的主文档)
- 子项目 2 内容(包含一堆
.tex
带有内容的文件)
- 子项目 2 内容(包含一堆
- ...
- 子项目 1(包含该子项目的主文档)
现在根据我使用的 Wikibooksubfiles
从子项目的主文档中包含内容文档。主文档还包含项目特定的样式包。
现在当我使用 TeXStudio 时,我必须打开主文档并在查看时编译它以查看我编译的子文档,原因似乎在于相对路径。也就是说,如果我从内容文档编译,我会得到
File `../project1.sty' not found. \usepackage
作为我的错误信息。
由于这(慢慢地)变得令人厌烦,我该如何修复这个错误?
为了您的方便,内容文档模板大致如下:
\documentclass[../master.tex]{subfiles}
\begin{document}
% content goes here
\end{document}
主文档的相关部分如下:
\documentclass[12pt,a4paper]{article}
\usepackage{../project1}
\usepackage{subfiles}
% other packages and some configuration
\begin{document}
\subfile{./tex/part1.tex}
% other includes go here, includes are auto-generated using a macro
\end{document}
上层文档将位于/project1/subproject1/tex/part1.tex
。
下层文档将位于/project1/subproject1/master.tex
。
样式包将位于/project1/project1.sty
。
答案1
TeXStudio 提供了将文件声明为主文件的选项。这可以在“选项 > 根文档”中完成。这在 Texmaker 中也应该有效。