我正在寻找能够将 TeX 源文件部分评估(例如内联定义)为等效的、简化的 TeX 文件且某些参数得到固定的工具或技术。
具体来说,我对实现以下目标的解决方案感兴趣:
消除无法到达的分支
\if
。例如,它应该能够简化\newif\ifbla \blatrue \ifbla GOOD \else BAD \fi
到
GOOD
。内联宏定义。例如转换
\def\bla#1{bla to #1} \begingroup \def\bla#1{blerp at #1} \bla{me}, \endgroup \bla{you}
到
blerp at me, bla to you
内联文件(目的是将其与第 2 点结合起来编译独立的 tex 源)。
这样做的主要困难是可靠性:宏系统会使任何简单的解析器在存在非平凡的宏(重新)定义时很快中断。