Переключение между различными версиями выходных данных, скомпилированными из одного и того же исходного кода LaTeX

Переключение между различными версиями выходных данных, скомпилированными из одного и того же исходного кода LaTeX

При программировании на языке C довольно часто переключение между созданием отладочной и релизной версий осуществляется путем передачи компилятору аргумента командной строки.

Хотелось бы что-то подобное для pdflatex. Оптимально, чтобы в исходном файле LaTeX были условные части, зависящие от некоторой переменной, а затем переключение между версиями можно было бы сделать, как-то установив эту переменную при вызове командной строки pdflatex.

Возможно ли достичь чего-то подобного? Какой самый простой/чистый способ?

решение1

Следующий код

\documentclass{article} 
\usepackage{ifthen}

\newcommand{\foo}[1]{%
    \ifthenelse{\equal{#1}{True}}{gagagag}{blablabla}% 
}

\begin{document} 
\foo{\val} 
\end{document}

дает gagagagпри компиляции с

pdflatex '\def\val{True}\input' file.tex

и blablablaпри компиляции с

pdflatex '\def\val{something else}\input' temp.tex

(Благодарность Дэвиду Карлайлу, см. комментарии.)

Связанный контент