Unterdateipaket - Unterdatei wird nicht kompiliert, wenn der Hauptdateiname Leerzeichen enthält

Unterdateipaket - Unterdatei wird nicht kompiliert, wenn der Hauptdateiname Leerzeichen enthält

Ich versuche, einige Notizen zur linearen Algebra zu machen, die aus einer Hauptdatei bestehen, die Unterdateien für jedes Kapitel lädt. Alle meine Dateien haben Leerzeichen in den Dateinamen, was für die meisten Dinge gut funktioniert hat. Ich kann sogar die Hauptdatei kompilieren und anzeigen, während sowohl in den Unterdateien als auch in den Hauptdateinamen Leerzeichen vorhanden sind. Es scheint jedoch, dass Leerzeichen im Hauptdateinamen Probleme beim Kompilieren und Anzeigen der Unterdateien verursachen (ich bin ziemlich sicher, dass es mit Leerzeichen im Namen der Hauptdatei zu tun hat, da ich versucht habe, die Hauptdatei in ein Werk umzubenennen, und ich die Unterdateien kompilieren konnte).

Mein Problem ist also: Ich möchte die Möglichkeit haben, Leerzeichen im Hauptdateinamen beizubehalten und die Unterdateien trotzdem separat zu kompilieren.

Hier ist beispielsweise eine Unterdatei

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

wobei der Unterdateiname "Introduction - Linear Algebra Notes" und der Hauptdateiname "Main - Linear Algebra Notes" ist. Der Fehler, den ich bekomme, ist

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

und wie ich oben sagte, erhalte ich diesen Fehler nicht, wenn ich die Hauptdatei beispielsweise einfach in „main“ (also mit einem Wort) umbenenne.

PS: Ich verwende TeXstudio 2.12.14.

Antwort1

Vermeiden Sie am besten Leerzeichen in LaTeX-Dateinamen!

Aber wie so oft gibt es einen schmutzigen Workaround. Definieren Sie den Dateinamen als Befehl:

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

Dass Sie etwas tun können, bedeutet allerdings nicht, dass Sie es auch tun sollten.Bitte nicht!

verwandte Informationen