
LuaLaTeX では、Lua の状態に応じて、ドキュメントの一部を条件付きで評価したいと考えています。
LaTeX で条件付きで部分を評価する方法は、\if \else \fi
コンストラクトです。これを Lua に接続する簡単な方法は次のようになります。
\documentclass{article}
\newcommand{\luaif}[1]{\ifnum1=\directlua{if #1 then tex.sprint(1) else tex.sprint(0) end} }
\directlua{a = 1}
\begin{document}
\luaif{a == 1} true \else false \fi % -> true
\luaif{a == 2} true \else false \fi % -> false
\end{document}
しかし、これはかなりハッキーな感じがします。
代替の(より良い)アプローチは、おそらくすでに組み込まれているでしょうか?