TeX/ignorespaces
外观
< TeX
< TeX
\ignorespaces
使 TeX 忽略紧随其后的输入中的空格。这通常用于在宏中抑制紧随其后的空格,就像它是一个没有参数的宏一样。但是,由于宏和占位符调用会将输入视为直接包含这些文本,因此它们也会受到影响。请参阅下面的示例。
随机地忽略包含一段运行文本的宏中的空格通常不是用户的预期。另一方面,在宏用于特殊位置的情况下,例如定义图形或创建 LaTeX 列表或其项目,使用 \ignorespaces 有时很有用,以允许更多空格,以便输入更具可读性。
% in macro definition
\def\test#1{(#1)}
\test{a} b % Generate "(a) b" with space
\def\test#1{(#1)\ignorespaces}
\test{a} b % Generate "(a)b" without space (space ignored after a command)
% in macro invocation
\def\test{ a}
(\test)b % Generate "( a)b" with space
(\ignorespaces \test)b % Generate "(a)b" without space
% Placeholder invocations
\def\test#1{(#1)}
\test{ a}b % Generate "( a)b" with space
\def\test#1{(\ignorespaces #1)}
\test{ a}b % Generate "(a)b" without space