\noindent 表示整个文档,无需 \parindent=0

\noindent 表示整个文档,无需 \parindent=0

我正在编写一个包含大量公式的 Cheatsheet,段落缩进只会浪费空间,而且看起来一点也不好看,所以我想禁用自动缩进。但有时我在某些情况下仍需要缩进(这种情况并不罕见,但仍然比我\noindent没有任何更改的情况下输入的情况少)。

到目前为止我发现这个问题,在两个答案中都说要使用

\setlength{\parindent}{0pt}

但这会阻止我\indent在需要时使用它。所以实际的问题是。有没有办法让 latex 默认\noindent然后\indent在需要时使用?

编辑:我还想补充一点,我对排版还很陌生,所以如果我要求的是错误的做法,请告诉我,如果可能的话,请告诉我原因。

答案1

以下代码保存了 的原始含义\indent并重新定义它。在组内,它将其设置\parindent为原始值并调用已保存的\indent

\let\SavedIndent\indent
\protected\def\indent{%
  \begingroup
    \parindent=\the\parindent
    \SavedIndent
  \endgroup
}
\setlength{\parindent}{0pt}

因此,与原版一样,\indent重新定义的缩进在垂直模式下调用时会开始一个新段落。但它不会像原版一样在水平模式下设置间距。

相关内容