To create a list in LaTeX, you must use the environments itemize and enumerate, which create bulletin points or numbered lists, respectively.
While using them, they are indented with a default left-margin length, but what if we want to change that to either increase, decrease, or remove it? Well we can import the enumitem
package which gives us convenient ways to modify our lists’ indentation property.
Let’s take a look at a regular bulletin point list before we start trying to modify it with the enumitem
package.
\documentclass{article}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer feugiat diam quis bibendum fermentum. Nunc finibus scelerisque purus ut egestas. Nulla facilisi. Aliquam erat volutpat.
\begin{itemize}
\item Mango
\item Orange
\item Banana
\item Apple
\end{itemize}
\end{document}
Output :
How to increase and decrease indent of list(itemize, enumerate, or description)
enumitem
packages have many options for completing the same task. And each option has same syntax.
leftmargin option
Most popular option to solve this problem is leftmargin
. Similarly, there is the rightmargin
option, which is used when page’s alignment is right. For example, if you write a document in the Arabic language, you will see right alignment.
You can use leftmargin
option within itemize, enumerate, or description environment to set left margin for list. Syntax for using leftmargin
is as follows:
\begin{itemize}[leftmargin=length] \item First item \item Second item \item Thrid item % More items... \end{itemize}
Replace length
with desired length for left margin. It can be specified in any valid LaTeX length unit, such as pt (points), cm (centimeters), in (inches), em, or ex.
Here’s an example of how to use leftmargin
to set left indent to 1.5
cm, 20
px and 10
px:
\documentclass{article}
\usepackage{enumitem}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
\begin{itemize} % Default Indent
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{itemize}
\begin{enumerate}[leftmargin=1.5cm]
\item Apple
\item Orange
\item Banana
\item Strawberry
\end{enumerate}
\begin{enumerate}[leftmargin=20px]
\item San Francisco
\item New York
\begin{enumerate}[leftmargin=10px]
\item Miami
\item Chicago
\end{enumerate}
\item Los Angeles
\item Boston
\end{enumerate}
\begin{itemize}[leftmargin=0pt]
\item Apple
\item Orange
\begin{itemize}[leftmargin=0pt]
\item Milk
\item Cola
\end{itemize}
\item Banana
\item Strawberry
\end{itemize}
\end{document}
Output :
In this example, the itemize environment has a left indent of 1.5
cm, and the enumerate environment has a left indent of 20
px. You can adjust the values as per your preference.
itemindnet option
Our next option is itemindent
. But, in this case negative value should be used to reduce indent from default and positive value should be used to increase.
Same syntax as above options. Let’s see direct example to help us understand.
\documentclass{article}
\usepackage{enumitem}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
\begin{enumerate}
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{enumerate}
\begin{itemize}[itemindent=0cm]
\item San Francisco
\item New York
\begin{itemize}[itemindent=-.5cm]
\item Apple
\item Orange
\item Pineapple
\end{itemize}
\item Los Angeles
\item Boston
\end{itemize}
\begin{enumerate}[itemindent=10pt]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{enumerate}
\begin{itemize}[itemindent=-5px]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{itemize}
\end{document}
Output :
labelsep option
Our next problem is to maintain the space between item elements with item sequence numbers or bullet points. For solving this problem, labelsep
option is the best practice.
\documentclass{article}
\usepackage{enumitem}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
\begin{itemize}[labelsep=2px]
\item Mango
\item Apple
\item Banana
\item Orange
\end{itemize}
\begin{itemize}
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{itemize}
\begin{itemize}[labelsep=10px]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{itemize}
\begin{itemize}[labelsep=20px]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{itemize}
\end{document}
Output :
left option
Take a look at the output above, where position of item sequence symbol or number is changed horizontally using labelsep
option. With that, position of item element remains fixed.
But, in case of left
option you can change the position of both. Syntax of left
option is different than others. Let’s first understand syntax and then see the example.
left=labelindent left=labelindent .. leftmargin \begin{enumerate}[left= 0pt] \begin{enumerate}[left= 0pt .. 20pt] \begin{enumerate}[left= 2cm] \begin{enumerate}[left= \parindent .. 2\parindent] \begin{enumerate}[left= -\parindent .. 0pt]
\documentclass{article}
\usepackage{enumitem}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
\begin{itemize}[left=10pt .. 1cm]
\item Mango
\item Apple
\item Banana
\item Orange
\end{itemize}
\begin{enumerate}[left=-15pt .. 0pt]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{enumerate}
\begin{itemize}[left=1cm .. 2cm]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{itemize}
\begin{enumerate}[left=\parindent .. 2\parindent]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{enumerate}
\begin{itemize}[left= -\parindent .. 0pt]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{itemize}
\end{document}
Output :
Remove default indent
In some cases there is no need to use default indent. There are many solutions in this package to completely remove default indent. Let’s see the examples given below.
If value of both leftmargin
and itemindent
is passed as *
, along with value of left
, passing 0
will give the same result in all cases, the default indent will be removed.
\documentclass{article}
\usepackage{enumitem}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
\begin{enumerate}[leftmargin=*]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{enumerate}
\begin{itemize}[itemindent=*]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{itemize}
\begin{enumerate}[left=0cm]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{enumerate}
\end{document}
Output :
And if you want, first line of the paragraph and indent of item element should be equal. Then you need to pass \parindent
as value of left
. And there will be some indent with it.
\documentclass{article}
\usepackage{enumitem}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
\begin{enumerate}[leftmargin=*]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{enumerate}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
\begin{itemize}[leftmargin=\parindent]
\item San Francisco
\item New York
\item Los Angeles
\item Boston
\end{itemize}
\end{document}
Output :
Conclusion
List indents are discussed a to z in depth in this tutorial. Hope you get all your answers. Some outputs have straight lines drawn, to help understand the difference.