Латекс удаляет промежутки между элементами в списке

Каков наилучший способ форматирования списка, чтобы удалить пробелы между элементами списка.

Ответ 1

Это проще с пакетом 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}

example

Пакет enumitem предоставляет множество функций для настройки маркеров, нумерации и длины.

Пакет паралистов предоставляет очень компактные списки: compactitem, compactenum и даже списки в абзацах, таких как inparaenum и inparaitem.

Ответ 2

Вы можете сделать что-то вроде этого:

\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}

Ответ 3

Этот вопрос уже задан на https://tex.stackexchange.com/info/10684/vertical-space-in-lists. Самый высокий проголосовавший ответ также упомянул пакет enumitem (здесь ответил Стефан), но мне также нравится этот, который включает создание собственной предметной среды вместо загрузки нового пакета:

\newenvironment{myitemize}
{ \begin{itemize}
    \setlength{\itemsep}{0pt}
    \setlength{\parskip}{0pt}
    \setlength{\parsep}{0pt}     }
{ \end{itemize}                  } 

Что следует использовать следующим образом:

\begin{myitemize} 
  \item one 
  \item two 
  \item three 
\end{myitemize}

Источник: https://tex.stackexchange.com/a/136050/12065