I have a tabular environment, created with array loaded and using m columns, the cells of which mostly contain lists. In cells with a list, there is about 1em of dead space at the end of the list before the bottom of the cell (in the cell with the largest contents which sets the row size). I am trying to get rid of this space, to no avail. I am using a custom itemize* environment that sets \topsep, \parskip, and \partopsep all to 0pt at the beginning (immediately after \begin{itemize}). This eliminates internal spacing but not the end spacing. I also have it setting \@noparlisttrue, but to no avail. Here's my itemize* definition:
\newenvironment{itemize*}{\begin{itemize}%
\setlength\topsep{0pt}%
\setlength\itemsep{-2pt}%
\setlength\parskip{0pt}%
\setlength\partopsep{0pt}%
\@noparlisttrue}{\end{itemize}}
I've tried setting \topsep, \parskip, and \partopsep before the \begin{itemize*} in my table cell as well, but I still have the blank space.
Tracing and Phillipe's comment indicate that it is invoking \par at the end of the list and this is causing the whitespace. Including \setlength\parskip{0pt} or \setlength\parskip{-\baselineskip} before \begin{itemize*} or before \end{itemize*} do not eliminate the space.
How can I get rid of it?
enumeratepackage and using thecompactenumenvironment, rather thanitemize. Withcompactenum, you have to define your item label by passing an optional argument at the beginning of the environment declaration.compactenumnicely takes care of unnecessary dead space. Does this work for you? – Jimi Oke Dec 13 '10 at 22:58\setlength\topsephas no effect where it is placed, but that's not the problem here. In fact,\end{itemize}calls a\parand that's what is causing the blank line. Even a simple code as\begin{tabular}{|p{5cm}|}text\par\end{tabular}has the problem, so it doesn't seem to be a list problem at all. – Philippe Goutet Dec 13 '10 at 23:26\parwas the issue. I'd tried to suppress\parwith the\@noparlisttrue, but there was still one\paremitted. How can I suppress\par's whitespace? Putting\setlength\parskip{0pt}before\beginor right before\enddon't do it. – Michael Ekstrand Dec 14 '10 at 1:39paralistandcompactitem. – Stefan Kottwitz♦ Dec 14 '10 at 1:40paralist! Funny enough, I've always usedcompactenum, though. That's why I've always had to specify my item label. But, yes,compactitemdoes the job even better, since it automatically includes the bullets. – Jimi Oke Dec 14 '10 at 2:33