
Beim Programmieren in C ist es durchaus üblich, zwischen der Erstellung von Debug- und Release-Versionen zu wechseln, indem man dem Compiler ein Befehlszeilenargument übergibt.
Ich hätte gerne etwas Ähnliches für pdflatex
. Optimalerweise gäbe es in der LaTeX-Quelldatei bedingte Teile, die von einer Variablen abhängen, und dann könnte das Umschalten zwischen den Versionen erfolgen, indem diese Variable beim Befehlszeilenaufruf von irgendwie festgelegt wird pdflatex
.
Ist es möglich, so etwas zu erreichen? Was ist der einfachste/sauberste Weg?
Antwort1
Der folgende Code
\documentclass{article}
\usepackage{ifthen}
\newcommand{\foo}[1]{%
\ifthenelse{\equal{#1}{True}}{gagagag}{blablabla}%
}
\begin{document}
\foo{\val}
\end{document}
ergibt gagagag
bei Kompilierung mit
pdflatex '\def\val{True}\input' file.tex
und blablabla
wenn kompiliert mit
pdflatex '\def\val{something else}\input' temp.tex
(Mit freundlicher Genehmigung von David Carlisle, siehe Kommentare.)