子檔包 - 當主檔名有空格時不編譯子文件

子檔包 - 當主檔名有空格時不編譯子文件

我正在嘗試做一些線性代數筆記,這些筆記將由一個主文件加載每章的子文件組成。我的所有檔案的檔案名稱中都有空格,這對於大多數情況來說都運作得很好。我甚至可以編譯和查看主文件,同時子文件和主文件名中都有空格。然而,主文件名中的空格似乎會導致編譯和查看子文件時出現問題(我很確定這與主文件名中的空格有關,因為我嘗試將主文件重命名為工作,我能夠編譯子文件) 。

所以我的問題是:我希望能夠在主檔案名稱中保留空格,並且仍然單獨編譯子檔案。

例如,這是一個子文件

%!TeX root = Introduction - Linear Algebra Notes
\documentclass[Main - Linear Algebra Notes.tex]{subfiles}
\begin{document}
BLAH BLAH BLAH
\end{document}

其中子檔案名稱為“簡介 - 線性代數筆記”,主檔案名稱為“主要 - 線性代數筆記”。我得到的錯誤是

File `Main-LinearAlgebraNotes.tex' not found. \subimport{\filename@area}{\filename@base}

正如我上面所說,如果我將主檔案重命名為“main”(即只有一個單字)之類的名稱,我就不會收到此錯誤。

PS:我使用TeXstudio 2.12.14。

答案1

最好避免 LaTeX 檔案名稱中出現空格!

但通常有一個骯髒的解決方法。將檔案名稱定義為命令:

\newcommand{\mainfile}{"Main - Linear Algebra Notes.tex"}
\documentclass[\mainfile]{subfiles}
\begin{document}
BLAH BLAH BLAH
\end{document}

但你能做一件事並不意味著你應該做它。請不要!

相關內容