![仅缩进节/小节/小小节的第一段](https://linux22.com/image/268129/%E4%BB%85%E7%BC%A9%E8%BF%9B%E8%8A%82%2F%E5%B0%8F%E8%8A%82%2F%E5%B0%8F%E5%B0%8F%E8%8A%82%E7%9A%84%E7%AC%AC%E4%B8%80%E6%AE%B5.png)
我只需要缩进每个部分/小节/小子部分的第一段。有没有比使用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}