这就是我想要实现的目标:
{ 2 \pow -(n+4) } --> {2^{-(n+4)}}
这是我所知道的方法:
\def\pow#1#2{{{#1}^{#2}}}
这就是我不喜欢它的地方:
\pow{2}{-(n+4)} is ugly to me.
现在,我知道普通的 TeX 可以做这样的事情,因为:
\over, \choose, \above
然而:
\show\over
“表明这些命令是内部的。”
我已经深入研究了 TeX 书(第 20 章),但没有看到参数如何向左的示例,即我想要类似以下内容:
\def #1\pow #2 {{#1}^{#2}}
然后我尝试了如下方法:
\def \pow #1 \} {^{#1}\}}
但是,这些都不起作用。是否可以定义 pow st
{ 2 \pow -(n+4) } --> {2^{-(n+4)}}
答案1
\newtoks \powtoks
\def \pow {\afterassignment\powhelp \powtoks=\bgroup }
\def \powhelp{^{\the\powtoks} \egroup }