跳转到内容

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
华夏公益教科书