How do I make a multi-column list in LaTeX?

In LaTeX, lists are usually in a single column, but if you want to make them look more organized and visually appealing, multi-column lists are a great option! Using multi-columns not only makes better use of the page space, but it also makes lists look tidier and more attractive.

For checklists, to-do lists, or arranging various items side-by-side, LaTeX offers some fantastic packages, like multicol, tasks, and minipage. Let’s dive in and see how you can use these to create multi-column lists with ease!

multicol package

The multicol package is one of the most popular and accessible packages for creating multi-column content. When you need to display a lot of information or items across multiple columns, this package works wonderfully.

\begin{multicols}{n}
    \begin{itemize}
        \item Item 1
        \item Item 2
        ............
        ............
        \item Item n
    \end{itemize}
\end{multicols}

First, where you want to create a multi-column list, use the \begin{multicols}{n} ... \end{multicols} command. Here, n lets you specify the number of columns you want. Then, place the list of items (ordered or unordered) within the multicol environment.

\documentclass{article}
\usepackage{multicol,lipsum}
\begin{document}
 \begin{multicols}{2}
   \begin{itemize}
     \item Canada
     \item Japan
     \item Australia
     \item Brazil
     \item Germany
     \item South Korea
   \end{itemize}
 \end{multicols}

\noindent\lipsum[2][1-4]

\begin{multicols}{3}
 \begin{enumerate}
    \item Apple
    \item Banana
    \item Mango
    \item Orange
    \item Pineapple
    \item Strawberry
    \item Watermelon
    \item Blueberry
    \item Grapes
    \item Papaya
    \item Kiwi
    \item Pomegranate
 \end{enumerate}
\end{multicols}

\noindent\lipsum[3][1-3]

\setlength{\columnseprule}{0.4pt}
\begin{multicols}{4}
 \begin{itemize}
    \item US
    \item Canada
    \item Brazil
    \item UK
    \item Germany
    \item France
    \item Japan
    \item Australia
    \item India
    \item China
    \item South K.
    \item South A.
 \end{itemize}
\end{multicols}
\end{document}

Output:

This image contains three sections with multi-column lists. The first list includes names of fruits, the second list includes names of several countries, and the third list includes additional country names. Each section organizes items into columns.

If the number of items is even, the items will be evenly distributed across each column. However, if the number of items is odd, the last column will have one item less.

In other words, the last column will have fewer items compared to the other columns.

tasks package

If you want to create a checklist, to-do list, or step-by-step guide, the tasks package is a top choice. This package allows you to organize multi-column lists in an even more visually appealing and structured way.

\begin{tasks}(n)
    \task Task 1
    \task Task 2
     ...........
     ...........
    \task Task n
\end{tasks}

First, add \usepackage{tasks}. Then, use \begin{tasks}(n) ... \end{tasks}, where n is the number of columns, to write your items.

\documentclass{article}
\usepackage{tasks,lipsum}
\begin{document}
Here’s an example with different task names:
\begin{tasks}(2)
    \task Review project requirements
    \task Design initial mockups
    \task Develop main features
    \task Test functionality
    \task Finalize documentation
    \task Prepare for launch
    \task Conduct feedback sessions
    \task Deploy to production
\end{tasks}

\lipsum[1][1-3]

\begin{tasks}(3)
    \task Apple
    \task Banana
    \task Mango
    \task Orange
    \task Pineapple
    \task Strawberry
    \task Watermelon
    \task Blueberry
 \end{tasks}
\end{document}

Output:

An image with two task lists on a light-colored background. The first list shows project tasks in two columns, and the second list displays fruit names in three columns.

This way, you can use the tasks package to neatly divide tasks into multiple columns.

Creating multicolumn lists with the minipage environment

The minipage environment is mainly used in LaTeX to arrange content as if it’s in separate columns.

Let’s say you want to place multiple lists or some specific items side by side—this is where minipage becomes really useful. You can also combine it with itemize or enumerate environments.

\begin{enumerate}
  \begin{minipage}{0.45\textwidth}
    \item item 1
    \item item 2
\end{minipage}
\hfill
\begin{minipage}{0.45\textwidth}
    \item item 3
    \item item 4
  \end{minipage}
\end{enumerate}
\documentclass{article}
\usepackage{lipsum}
\begin{document}

\begin{enumerate}
\begin{minipage}{0.45\textwidth}
    \item United States
    \item Canada
    \item Brazil
    \item United Kingdom
\end{minipage}
\hfill
\begin{minipage}{0.45\textwidth}
    \item Germany
    \item France
    \item Japan
    \item Australia
\end{minipage}
\end{enumerate}

\lipsum[1][1-3]
\vspace{10px}

\begin{itemize}
 \begin{minipage}{0.45\textwidth}
    \item United States
    \item Canada
    \item Brazil
    \item United Kingdom
\end{minipage}
\hfill
\begin{minipage}{0.45\textwidth}
    \item Germany
    \item France
    \item Japan
 \end{minipage}
\end{itemize}
\end{document}

Output:

A document displaying two lists side-by-side. The first list, in numbered format, shows countries in two columns, while the second list, in bullet points, presents a similar set of country names.

Conclusion

See how many ways there are to create multi-column lists in LaTeX. Each method has its own unique features and usefulness.

You can use multicol for easily making multi-column lists, or go with the tasks package for creating checklists or step-by-step guides.

On the other hand, using the minipage environment, you can create more specific and parallel lists. Hope this makes everything crystal clear for you!

Share tutorial

Leave a Comment

Your email address will not be published. Required fields are marked *