Wie lässt sich der Wert eines Umschalters (aus dem Etoolbox-Paket) mit der Befehlszeile festlegen?
Ich möchte eine Befehlsdatei erstellen, um eine Latex-Datei mit unterschiedlichen Umschaltwerten zu kompilieren (d. h. ein Befehlsfeld wird mit dem auf „true“ gesetzten Umschaltwert „foo“ kompiliert und eine andere Befehlsdatei wird mit dem auf „false“ gesetzten Umschaltwert „foo“ kompiliert).
Antwort1
Es ist möglich
pdflatex.exe -jobname=prof "\AtBeginDocument{\toggletrue{prof}} \input{main}"
oder
echo \AtBeginDocument{\toggletrue{prof}} > _temp.tex
echo \input{main} >> _temp.tex
pdflatex.exe -jobname=prof _temp.tex
del _temp.tex
pause
Antwort2
Habe die Lösung gefunden, von der ich zuvor gelesen habe:https://en.wikibooks.org/wiki/LaTeX/Makros#Befehlszeilen_LaTeX
Wenn Sie auf einem Unix-ähnlichen Betriebssystem arbeiten, verwenden Sie möglicherweise Makefiles oder beliebige Skripte, um Ihre LaTeX-Projekte zu erstellen. In diesem Zusammenhang könnte es interessant sein, verschiedene Versionen desselben Dokuments zu erstellen, indem Sie LaTeX mit Befehlszeilenparametern aufrufen. Wenn Sie Ihrem Dokument die folgende Struktur hinzufügen:
% default value. \providecommand\blackandwhite{false} %... \ifthenelse{ \equal{\blackandwhite}{true} }{ % "black and white" mode; do something.. }{ % "color" mode; do something different.. }
Nun können Sie LaTeX folgendermaßen aufrufen:
latex '\providecommand{\blackandwhite}{true}\input{test.tex}'
Zuerst wird der Befehl \blackandwhite definiert und dann die eigentliche Datei mit Eingabe gelesen. Durch das Setzen von \blackandwhite auf false wird die Farbversion des Dokuments erstellt.