我只需要缩进每个部分/小节/小子部分的第一段。有没有比使用indentfirst
包装和\noindent
每个非第一段?
答案1
您可以将其设置\parindent
为全局 0pt,并且在标题之后可以通过重新定义添加一个小的水平跳跃\@afterheading
:
\makeatletter
\def\@afterheading{%
\@nobreaktrue
\everypar{%
\if@nobreak
\@nobreakfalse
\clubpenalty \@M
\hspace*{1em}%
\else
\clubpenalty \@clubpenalty
\everypar{}%
\fi}}
\makeatother
\setlength{\parindent}{0pt}
这里是 MWE:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{lipsum}
\makeatletter
\def\@afterheading{%
\@nobreaktrue
\everypar{%
\if@nobreak
\@nobreakfalse
\clubpenalty \@M
\hspace*{1em}%
\else
\clubpenalty \@clubpenalty
\everypar{}%
\fi}}
\makeatother
\setlength{\parindent}{0pt}
\begin{document}
\section{foobar}
\lipsum[2]
\lipsum[2]
\lipsum[2]
\section{barfoo}
\lipsum[2]
\lipsum[2]
\lipsum[2]
\end{document}