考虑示例1:
hello%
world
\bye
在示例2与示例 1 相比,在o
和之间添加了一个空格:w
hello%
\magnification\magstep0
world
\bye
(看起来,^M
宏参数之后的空格(从中出现)不会被吞噬。这是一般规则吗?)
在示例3与示例 1 相比,在o
和之间添加了一个小的字距:w
hello%
\magnification\magstep0%
world
\bye
为什么会出现这些不需要的空格以及如何删除它们?
答案1
\magstep
是一个宏,它接受一个参数。因此\magstep0
或\magstep{0}
用作参数。后面留有一个空格,因为它根本0
没有被触及。\magstep0
之间有一个隐含的字距调整ow
。它们稍微一起移动了一点。示例 3 破坏了这种隐含的字距调整,因为它在它们之间插入了不可扩展的内容(赋值\magnification
)。因此,应避免在单词中间出现这种情况。