\parindent 和 \noindent 会互相抵消吗?

\parindent 和 \noindent 会互相抵消吗?

我正在阅读\maketitle默认类提供的命令article.cls,它有以下代码:

\newcommand\maketitle{\par
    \begingroup
      \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
      \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
      \long\def\@makefntext##1{\parindent 1em\noindent
              \hb@[email protected]{%
                \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
      \if@twocolumn
        \ifnum \col@number=\@ne
          \@maketitle
        \else
          \twocolumn[\@maketitle]%
        \fi
      \else
      \newpage
        \global\@topnum\z@   % Prevents figures from going at top of page.
        \@maketitle
      \fi
      \thispagestyle{plain}\@thanks
    \endgroup
    \setcounter{footnote}{0}%
    \global\let\thanks\relax
    \global\let\maketitle\relax
    \global\let\@maketitle\relax
    \global\let\@thanks\@empty
    \global\let\@author\@empty
    \global\let\@date\@empty
    \global\let\@title\@empty
    \global\let\title\relax
    \global\let\author\relax
    \global\let\date\relax
    \global\let\and\relax
  }

我特别感兴趣的是这一行:

\long\def\@makefntext##1{\parindent 1em\noindent

据我了解,latex 命令\noindent会删除应用于当前段落的任何缩进,因此\noindent在这种情况下该命令不会立即删除\parindent 1em吗?

答案1

\noindent如果位于段落开头,则仅在该位置执行抑制缩进的操作,而其他地方不执行任何操作。

\parindent 1em设置当前范围内所有段落的缩进。

因此,此处的多段脚注将有一个不缩进的第一段和缩进 1em 的后续段落。

相关内容