コマンドラインでトグルの値(etoolbox パッケージから)を設定するにはどうすればいいですか?
異なるトグル値を持つ LaTeX ファイルをコンパイルするための cmd ファイルを作成したいと思います (つまり、1 つの cmd ファイルはトグル foo を true に設定してコンパイルし、別の cmd ファイルはトグル foo を false に設定してコンパイルします)。
答え1
それは可能です
pdflatex.exe -jobname=prof "\AtBeginDocument{\toggletrue{prof}} \input{main}"
または
echo \AtBeginDocument{\toggletrue{prof}} > _temp.tex
echo \input{main} >> _temp.tex
pdflatex.exe -jobname=prof _temp.tex
del _temp.tex
pause
答え2
以前読んだ解決策を見つけました:https://en.wikibooks.org/wiki/LaTeX/マクロ#コマンドラインLaTeX
Unix 系 OS で作業している場合、LaTeX プロジェクトをビルドするために Makefile または何らかのスクリプトを使用している可能性があります。その関連で、コマンドライン パラメータを使用して LaTeX を呼び出すことで、同じドキュメントの異なるバージョンを作成すると興味深いかもしれません。次の構造をドキュメントに追加します。
% default value. \providecommand\blackandwhite{false} %... \ifthenelse{ \equal{\blackandwhite}{true} }{ % "black and white" mode; do something.. }{ % "color" mode; do something different.. }
これで、LaTeX を次のように呼び出すことができます。
latex '\providecommand{\blackandwhite}{true}\input{test.tex}'
まず、コマンド \blackandwhite が定義され、次に実際のファイルが入力とともに読み込まれます。\blackandwhite を false に設定すると、ドキュメントのカラー バージョンが生成されます。