Ich bastele seit heute morgen 8 Uhr an diesem Problem:
Ich möchte eine Header-Datei haben, in der meine Standard-Präambel, mein Standard-Code rund um \begin{document}, und mein Standard-Code rund um \end{document} übersichtlich zusammen sind.
Hier ein abgespecktes Code-Beispiel, welches den Fehler zeigt, der mich gerade in die Verzweiflung treibt:
\begin{filecontents*}{myTest.tex}
\ifdefined\aHeader%
\let\aHeader\undefined%
\documentclass{scrartcl}
\usepackage{xinttools}
\makeatletter
\newcommand\myCheck[2]{%
\xintFor*##1 in{#1}:
{%
\in@{##1}{#2}%
\unless\ifin@\expandafter\xintBreakFor\fi
}%
\ifin@\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
}
\makeatother
\fi
\end{filecontents*}
\def\aHeader{}
\input{myTest.tex}
\input{myTest.tex} % Führt zu Fehler Too many }'s
\begin{document}
Hallo, Welt!
\end{document}
Wenn ich die viertletzte Zeile (das doppelte \input...) lösche, funktioniert es wie beabsichtigt.
Mit dem doppelten \input gibt es einen Fehler "Too many }'s" in meinem \myCheck.
1. Da sind nicht zu viele { oder } - die sind sauber gepaart …
2. Wieso wird das überhaupt ein zweites Mal ausgeführt???
Hilfe …
Gruß vom Rolli
Edit: Wenn ich den Code in myTest.tex in die Hauptdatei packe, anstatt es auszulagern, klappt alles wunderbar ...

