論文を簡潔にまとめるためにしばしば計算の詳細を省いたりするけれど、後で読みなおした時にはたいてい細部を忘れてしまっていて、とても読みづらい。だから出版用と自分用の二種類を作っておきたい。ひとつのソースファイルで二種類の PDF を作るにはどうすればよいか。出版用を publish.pdf 自分用を private.pdf という名前にするとき、ソースファイル名は publish.tex として、そのプリアンブルに
\newif\ifdetail
\ifx\DETAIL\DUMMY\else\detailtrue\fi
と書いておく。このとき publish.tex をコンパイルすると \else の前の空文が実行されて(なぜなら \DETAIL も \DUMMY もともに定義されておらず、その意味で「等しい」と判断されるから)\detailtrue は実行されない。したがって本文中で
\ifdetail
自分用の文章
\else
出版用の文章
\fi
と書いたところでは「出版用の文章」がコンパイルされる。これとは別に
\def\DETAIL{detail}
\input{publish.tex}
とだけ書いたソースファイル private.tex を用意しておく。今度は \DETAIL が detail と定義されたことで \DUMMY とは異なるから、コンパイル時には \detailtrue が実行されて、したがって本文中の分岐では「自分用の文章」が選ばれる。