Quel est le meilleur moyen de formater une liste pour supprimer les espaces entre les éléments de la liste?.
C'est plus facile avec le paquet enumitem:
\documentclass{article}
\usepackage{enumitem}
\begin{document}
Less space:
\begin{itemize}[noitemsep]
\item foo
\item bar
\item baz
\end{itemize}
Even more compact:
\begin{itemize}[noitemsep,nolistsep]
\item foo
\item bar
\item baz
\end{itemize}
\end{document}
Le paquet enumitem fournit de nombreuses fonctionnalités pour personnaliser les puces, la numérotation et les longueurs.
Le paquet paraliste fournit des listes très compactes: compactitem, compactenum et même des listes dans des paragraphes comme inparaenum et inparaitem.
Vous pouvez faire quelque chose comme ça:
\documentclass{article}
\begin{document}
Normal:
\begin{itemize}
\item foo
\item bar
\item baz
\end{itemize}
Less space:
\begin{itemize}
\setlength{\itemsep}{1pt}
\setlength{\parskip}{0pt}
\setlength{\parsep}{0pt}
\item foo
\item bar
\item baz
\end{itemize}
\end{document}
Cette question a déjà été posée le https://tex.stackexchange.com/questions/10684/vertical-space-in-lists . La réponse la plus votée mentionne également le paquet enumitem
(ici répondu par Stefan), mais j'aime aussi celui-ci, qui consiste à créer votre propre environnement de création de liste au lieu de charger un nouveau paquet:
\newenvironment{myitemize}
{ \begin{itemize}
\setlength{\itemsep}{0pt}
\setlength{\parskip}{0pt}
\setlength{\parsep}{0pt} }
{ \end{itemize} }
Ce qui devrait être utilisé comme ceci:
\begin{myitemize}
\item one
\item two
\item three
\end{myitemize}
compactitem
fait le travail.
\usepackage{paralist}
...
\begin{compactitem}[$\bullet$]
\item Element 1
\item Element 2
\end{compactitem}
\vspace{\baselineskip} % new line after list