Yoo*_*Yoo 9 latex substitution
如何用他们的定义替换所有出现的用户定义的乳胶宏?
例如,给定此文件
old.tex
\newcommand{\blah}[2]{#1 \to #2}
...
foo \blah{egg}{spam} bar
...
Run Code Online (Sandbox Code Playgroud)
如何以自动方式生成下面的文件
new.tex
...
foo egg \to spam bar
...
Run Code Online (Sandbox Code Playgroud)
而不是用perl重新实现乳胶宏逻辑,我可以使用latex或tex引擎来做到这一点吗?
从来没有见过这样做,但有两个不成熟的想法:
如果您想要内联展开所有这些宏的原因是为了调试,那么\tracingmacros=1在文档中进行设置将展开所有宏,但输出将保存到日志文件中。
CTAN存档提供了一个包,您可以使用它在定义中进行内联扩展(但不是 newcommand),但我不知道您是否可以看一下,看看修改以执行 \newcommand 的内联扩展可能是多么痛苦的\def。