Compact lists with paralist

The space occupied by list environments in LaTeX (itemize, enumerate, etc.) is sometimes a bit too much. For example, when you need to save space in your document or simply because you don’t like the looks of the standard list environments. In this post, the paralist package will be used to create compact lists. This will be done by elimination of vertical spacing and by introducing multicolumn lists (with the help of the multicol package). In the end, you will be able to create great looking lists that do not take up an unnecessary amount of space in your document.

Compact lists

Let’s start by creating a compact list. In order to do so, call the paralist package in your preamble:

\usepackage{paralist}

With the paralist package, a few new environments are introduced. The ones we will be using in this post are: compactitem and compactenum. As their name imply, the first creates a compact itemized list and the latter creates a compact numbered list. Run the following code to see the difference:

\documentclass{article}
\usepackage{lipsum}
\usepackage{paralist}
\begin{document}
\lipsum[1]
\begin{itemize}
	\item This is entry number one
	\item This is entry number two
\end{itemize}
\lipsum[2]
\begin{compactitem}
	\item This is entry number one, compact
	\item This is entry number two, compact
\end{compactitem}
\lipsum[3]
\end{document}

In here, the lipsum package is used to create dummy text.

Multicolumn lists

Let’s extend the knowledge from above to multicolumn lists. Multicolumn list can save a lot of space in your document and can look a lot nicer if the list entries are short. The idea is pretty simple: We’ll define a three column environment that contains the list environment. This can be done with the multicol package. By default, a multicolumn environment introduces additional spacing above and underneath. To remove this, implement the following in your preamble:

\usepackage{multicol}
	\setlength{\multicolsep}{0pt}

Now, a compact multicolumn list can be created with the following code:

\documentclass{article}
\usepackage{lipsum}
\usepackage{paralist}
\usepackage{multicol}
	\setlength{\multicolsep}{0pt}
\begin{document}
\lipsum[1]
\begin{multicols}{3}
	\begin{compactitem}
		\item One
		\item Two
		\item Three
		\item Four
		\item Five		
		\item \ldots
	\end{compactitem}
\end{multicols}
\lipsum[2]
\end{document}

That’s it!

Alternatives

For compact list environments, the method described above is my preference. However, a lot of other options are available. As found here the popular enumitem package can also be used, as well as shortlst and mdwlist.

1 Comment

  1. lorretta says:

    Greetings! I’ve been following your web site for some time
    now and finally got the courage to go ahead and give you a shout out from Lubbock Tx!
    Just wanted to say keep up the fantastic work!

Leave a Reply




XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>