仅在enumerate&itemize环境中更改\ parskip

Jef*_*rth 7 markup latex

有什么方法可以\parskip在某些环境中改变为不同的值,即enumerateitemize.

我想在paragraph(\setlength{\parskip}{1em plus 1pt minus 1pt})之间有空格,但不在itemize或enumerate中.

equ*_*ghe 13

如果您使用该enumitem套餐,您可以在序言中说明

\setlist[itemize]{parsep=0pt}
\setlist[enumerate]{parsep=0pt}
Run Code Online (Sandbox Code Playgroud)

得到你想要的.enumitem允许进行更多列表自定义,请参阅其文档以获取详细信息.


Rub*_*ben 6

是的你可以; 但你将不得不改变要么enumerateitemize环境从你的类文件(通过复制他们加入你的\parskip),或者通过重新定义\@listi,它适用于所有的列表:

\makeatletter

\def\@listi{%
  % default settings for base LaTeX classes at 10pt:
  \parsep 4pt plus 2pt minus 1pt
  \topsep 8pt plus 2pt minus 4pt
  \itemsep 4pt plus 2pt minus 1pt
  % your settings:
  \parskip 1em plus 1pt minus 1pt
}

\makeatother
Run Code Online (Sandbox Code Playgroud)

如果你想在嵌套列表水平,改变不同的设置\@listii,\@listiii等等.


Mic*_*ica 5

您还可以使用:

begin{itemize} \itemsep -5pt
\item foo
\item bar
\end{itemize}
Run Code Online (Sandbox Code Playgroud)

只会影响当前列表。