Lua 상태에 따라 LaTeX 부분을 조건부로 평가합니다.

Lua 상태에 따라 LaTeX 부분을 조건부로 평가합니다.

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}

하지만 이것은 꽤 해키적인 느낌입니다.

대체(더 나은) 접근 방식이 있습니까? 이미 내장되어 있을 수도 있습니다.

관련 정보