Change \parskip only inside enumerate & itemize environment

latex, markup

Solution

Yes you can; but you will have to alter either the `enumerate` and `itemize` environments from your class file (by copying them and adding your `\parskip`), or by redefining `\@listi`, which works for all lists:

\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

If you want different settings at nested list levels, change `\@listii`, `\@listiii` etc.

Problem

Is there any way that I can change `\parskip` to a different value inside certain environments, namely `enumerate` and `itemize`. I want to have space between paragraphs (`\setlength{\parskip}{1em plus 1pt minus 1pt}`), but not inside itemize or enumerate.

Original source