Compile duas vezes com booleano definido como verdadeiro primeiro e depois falso

Compile duas vezes com booleano definido como verdadeiro primeiro e depois falso

Acabei de receber alguns arquivos tex onde existe um booleano definido no início do documento com o pacote etoolbox. Alterar o booleano produz um pdf ligeiramente diferente. Para produzir a outra versão do documento, tenho que copiar o primeiro pdf para não sobrescrevê-lo ao compilar novamente, alterar o booleano e depois compilar uma segunda vez. Existe uma maneira de compilar o documento duas vezes com o booleano definido como verdadeiro e falso separadamente e receber dois PDFs?

Muito obrigado!

Responder1

No meu ambiente tenho algo semelhante, por isso uso dois arquivos .tex, um como

\documentclass[a4paper,twoside,DIV12,BCOR1.5cm]{scrbook}
%
\osversiontrue
\input{main.tex}

e um como

\documentclass[a4paper,twoside,DIV12,BCOR1.5cm]{scrbook}
%
\input{main.tex}

e um main.tex que contém todo o resto, tudo começando \begin{document}e terminando com \end{document}.

Quando compilo os dois arquivos wrapper, dois documentos PDF são criados. As diferenças entre os dois documentos são abordadas pelo booleano osversion.

Responder2

Veja tambémaquicomo passar argumentos para o arquivo tex. É apenas uma solução diferente.

No entanto, você terá que compilar duas vezes, pois uma chamada para pdflatex/.. criará apenas um único PDF.

Criar as duas versões de uma só vez, resultando em um PDF e dividi-lo no 'meio' provavelmente não é mais conveniente.

A última opção que consigo pensar é verificar a existência de um arquivo para determinar o booleano e criar/excluir esse arquivo entre as duas execuções do pdflatex.

informação relacionada