Ohne Minimalbeispiel weiß ich nicht, was genau du gemacht hast, und kann deshalb nur eine sehr allgemeine Antwort auf Basis einer Vermutung geben. Ich wäre dir daher verbunden und es ist auch in deinem Interesse immer ein vollständiges Minimalbeispiel anzugeben.
\newif sollte unbedingt außerhalb irgendwelcher anderer Befehle oder Verzweigungen verwendet werden. Es geht also beispielsweise häufig nicht:
\setkomavar{firsthead}{%
\newif\ifFOO\FOOtrue
\ifFOO … \else … \fi
}
Stattdessen muss es schon
\newif\ifFOO\FOOtrue
\setkomavar{firsthead}{%
\ifFOO … \else … \fi
}
sein. Selbstverständlich kann man \FOOtrue und \FOOfalse an beliebiger Stelle verwenden.
Außerdem gibt es keinen Sicherungsmechanismus, dass \ifFOO nicht bereits anderweitig definiert ist. Man muss also schon selbst aufpassen, dass man für FOO Namen verwendet, die unkritisch sind.
Ohne [mwe][/mwe] weiß ich nicht, was genau du gemacht hast, und kann deshalb nur eine sehr allgemeine Antwort auf Basis einer Vermutung geben. Ich wäre dir daher verbunden und es ist auch in deinem Interesse [b]immer[/b] ein [b]vollständiges[/b] [mwe][/mwe] anzugeben.
[tt]\newif[/tt] sollte unbedingt außerhalb irgendwelcher anderer Befehle oder Verzweigungen verwendet werden. Es geht also beispielsweise häufig nicht:
[code]
\setkomavar{firsthead}{%
\newif\ifFOO\FOOtrue
\ifFOO … \else … \fi
}
[/code]
Stattdessen muss es schon
[code]
\newif\ifFOO\FOOtrue
\setkomavar{firsthead}{%
\ifFOO … \else … \fi
}
[/code]
sein. Selbstverständlich kann man [tt]\FOOtrue[/tt] und [tt]\FOOfalse[/tt] an beliebiger Stelle verwenden.
Außerdem gibt es keinen Sicherungsmechanismus, dass [tt]\ifFOO[/tt] nicht bereits anderweitig definiert ist. Man muss also schon selbst aufpassen, dass man für [tt]FOO[/tt] Namen verwendet, die unkritisch sind.