Sometimes, I want to have enumerate lists in LaTeX start at other than the first value (1, a, i, etc.) How can I make an enumerate list start at an arbitrary value?
5 Answers
You can change the counter named enumi
, like this:
\begin{enumerate}
\setcounter{enumi}{4}
\item fifth element
\end{enumerate}
(If you have lists at deeper levels of nesting, the relevant counters are enumii
, enumiii
and enumiv
.)
-
2How do you start at (a) from the very beginning and not (1)? Commented Jul 8, 2015 at 15:23
-
1@JohnMolokach See tex.stackexchange.com/questions/2291/… (look at top two answers at least). Commented Jul 8, 2015 at 15:38
-
13@JohnMolokach That will indent it an extra level, and make it look ugly. Better to do it right, e.g. simply
\usepackage{enumerate}
at the top and use\begin{enumerate}[(a)]
etc. Anyway, it's up to you. This question was about starting at something other than the first index, e.g. starting at(e)
instead of(a)
, but I can see how the title is ambiguous. Commented Jul 8, 2015 at 19:25 -
6Be advised, that
\setcounter{enumi}{N}
will set the next item's value to N+1. So if you happen to end another enumeration with N being the last item and to start another enumeration with N+1, you want to set the counter to N-1 instead. Commented Apr 28, 2020 at 9:32 -
3@stephanmg That means that if you end an enumeration with N being the last item, you want to set the counter back to N again (not N-1) in the next enumeration if you want to start with N+1.– JoeyBFCommented Apr 25, 2023 at 23:42
The enumitem
package provides a simple solution to very many common problems that are related to minor tweaks of enumerate/itemize/description. In this case, you can use the start
parameter. Also have a look at the resume
parameter.
-
15I would just like to make explicit that the "resume" parameter causes the counter to continue from the previous "enumerate" environment. Commented Jan 9, 2014 at 5:37
-
3To be more explicit "resume"parameter causes the counter to continue from the previous "enumerate" environment in the current block. For example \begin{enumerate} \item 1 \end{enumerate} \begin{defn} \begin{enumerate} \item 1 \item 2 \end{enumerate} \end{defn} \begin{enumerate} \item This will be 2 \end{enumerate} Commented Nov 16, 2016 at 7:16
-
4For people looking for a MWE using
resume
you can find one here Commented Oct 3, 2017 at 12:14 -
1FYI:
enumitem
with\begin{enumerate}[resume]
is nice but not compatible with theparalist
package'scompactenum
environment.– orbeckstCommented Sep 6, 2019 at 17:27 -
On the other hand
enumitem
hasnosep
andnoitemsep
, so you can write\begin{enumerate}[resume,noitemsep]
instead. Commented May 28 at 16:45
If you only want to alter the starting value, the easiest way is:
\documentclass{article}
\begin{document}
\begin{enumerate}\addtocounter{enumi}{41}
\item This item is numbered `42.'
\begin{enumerate}\addtocounter{enumii}{5}% This cannot be more than 25
\item This one is ``numbered'' `(f)'
\end{enumerate}
\end{enumerate}
\end{document}
While you can have six layers of nested list environments (itemize, description, enumerate), you can have no more than 4 of one type. The counters enumi through enumiv control the index of each item's label. You can increment (as shown) or decrement (add a negative value) all 4 levels.
Note, though, that this won't be entirely arbitrary. Levels enumerated alphabetically cannot have items after an item labeled 'z.' (You could, however, add a negative amount to the appropriate counter to get it back to the `a' label.)
(Now that I see the other answer, I wonder why I always opt for the relative \addtocounter
rather than the absolute \settocounter
?)
-
2
\addtocounter
is safer in that it ensures monotonicity when used mid-list.– equaegheCommented Mar 19, 2014 at 10:22 -
1
-
2
\addtocounter
works with 0
too:
\documentclass{article}
\begin{document}
\begin{enumerate}\addtocounter{enumi}{-1}
\item % starts with `0.`
\item % starts with `1.`
..
\end{enumerate}
\end{document}
-
1What if we want to change the counter if an inner enumerate?– snoramCommented Jan 27, 2022 at 18:54
Just to complete the answer of Jukka with a copy/pastable example:
\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{enumerate}
\item Hello
\item I am
\end{enumerate}
\begin{enumerate}[resume]
\item a list
\item that continues
\end{enumerate}
\begin{enumerate}[start=42]
\item and go
\item beyond your hopes
\end{enumerate}
\end{document}
Note however that this solution is not compatible with beamer, while \setcounter{enumi}{3}
does work.