LaTeX-Teile bedingt auswerten, abhängig vom Lua-Zustand

LaTeX-Teile bedingt auswerten, abhängig vom Lua-Zustand

In LuaLaTeX möchte ich Teile des Dokuments bedingt auswerten, abhängig vom Lua-Status.

Eine Möglichkeit, Teile in LaTeX bedingt auszuwerten, ist ein \if \else \fiKonstrukt. Ein einfacher Ansatz, dies mit Lua zu verbinden, wäre:

\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}

Das fühlt sich allerdings ziemlich abgehackt an.

Gibt es alternative (bessere) Ansätze, vielleicht bereits integriert?

verwandte Informationen