LaTeX Extra > LaTeX Pakete > enumitem


Das Paket enuumitem (Version 3.9) bietet die Möglichkeit die drei Standard Listen Umgebungen (description, itemize und enumerate) den eigenen Bedürfnissen anzupassen.[1] Dabei können sowohl die Label, das heißt die Markierungen die vor den Listeneinträgen stehen wie auch die Abstände zwischen den Einträgen verändert werden. Diese Einstellungen können global, für einen Listentyp oder für eine bestimmte Liste verändert werden. Damit eine bestimmte Liste verändert werden kann wurden die Standardumgebungen in soweit angepasst, dass sie nun über eine entsprechende Option verfügen.

1.1 Einbinden

Das Paket wird mit \usepackage{enumitem} eingebunden. Es benötigt keine weiteren Pakete. Und bietet zur Zeit sechs Optionen.

1.2 Paketoptionen

inline
inline stelle zusätzliche Sternvarianten der drei Standard Listentypen in Form von description*, itemize* und enumerate* zur Verfügung die im inline Modus, das heißt im Fließtext verwendet werden können vergleichbar mit dem paralist Paket.

ignoredisplayed
Es werden keine Änderungen an der trivlist Umgebung vorgenommen und die ursprüngliche Definition wird beibehalten.

sizes
Wenn die Option sizes gesetzt wurde, ist es möglich größenabhängige Einstellungen vorzunehmen. Das bedeutet hier, dass in Abhängigkeit der Schriftgröße die Abstände innerhalb der Listen vorgegeben werden können, um eine besser Anpassung an die Schriftgröße zu gewährleisten.

loadonly
Die Standard Listentypen werden unverändert eingebunden. Neue Listentypen können erzeugt und bestehende umdefiniert werden.

series=override
Zur Beseitigung von Problemen die durch Namensgleichheit bei den series auftauchen können. Serien (series) sind vereinfacht formuliert Listen des gleichen Types zwischen den ein Beziehung, zum Beispiel Fortsetzung der Nummerierung, besteht.

shortlabels
Damit können die Markierungen (Labels) wie im enumerate Paket gesetzt werden.

2 Globale Änderungen

Globale Änderungen können mit Hilfe des setlist Befehls gesetzt werden. Dabei ist zu beachten, dass wenn der setlist Befehl ohne Angabe des Listentyps verwendet wird er für alle drei Standard Listentypen wirkt.

\setlist[Listentyp,Ebene]{Einstellung}
Wird keine Ebene angegeben wirkt die Einstellung auf alle Ebenen.

Bei der Verwendung von setlist sollte in der Regel der Typ der Liste mit angegeben werden, da die unterschiedlichen Labeltypen Symbole und Ziffern nicht miteinander kompatibel sind.

Hinweis: Lokal gesetzte Optionen überschreiben die globalen Einstellungen.

2.1 Label nach Listen Typen

Die unterschiedlichen Listen Typen haben sehr unterschiedliche Labels.

2.1.1 description

Bei der beschreibenden Liste description kann über die Option font die Darstellung des Labels verändert werden. Dazu gehören die Schriftfamilie (rmfamily/sffamily/ttfamily) die Stärke (mdseries/bfseries) und die Größe (tiny ... Huge).

Für alle beschreibenden Listen im Dokument:
\setlist[description]{font=Wert}
Beispiel:
\setlist[description]{font=\sffamily\bfseries\tiny}
Für eine bestimmte beschreibenden Liste:
\begin{description}[font=Werte]
\item[Tolles Label] \hfill \\
Was da alles so steht.
\item[Noch eins] \hfill \\
Aber auch mit wenig Text.
\end{description}
Beispiel:
\begin{description}[font=\sffamily\Huge]
\item[Tolles Label] \hfill \\
Was da alles so steht.
\item[Noch eins] \hfill \\
Aber auch mit wenig Text.
\end{description}
Ausgabe:
Tolles Label
Was da alles so steht.

Noch eins
Aber auch mit wenig Text.

2.1.2 itemize

Bei Auflistungen itemize kann über die Option der Umgebung die Markierung (Label) gesetzt werden.

\begin{itemize}[Label=Wert]
\item eins
\item zwei 
\end{itemize}
Beispiel:
\begin{itemize}[label=$\star$]
\item eins
\item zwei 
\end{itemize}
Ausgabe:

Wenn eine geschachtelte Auflistung gesetzt werden soll, müssen die Markierungen die von der Standard Markierung abweichen bei jeder itemize Umgebung einzeln gesetzt werden. Andernfalls wird das Symbol der entsprechenden Ebene aus dem Standard verwendet.

Beispiel: Erste Ebene Sterne und zweite Ebene Paragraph Zeichen.
\begin{itemize}[label=$\star$]
\item eins
\begin{itemize}[label=\S]
\item zwei 
\end{itemize}
\end{itemize}
Ausgabe:

Für den Fall, dass die gewünschten Änderungen für alle Auflistungen im Dokument gelten sollen, kann auch der setlist Befehl verwendet werden.

\setlist[itemize,1]{Label=Wert}
\setlist[itemize,2]{Label=Wert}
\setlist[itemize,3]{Label=Wert}
\setlist[itemize,4]{Label=Wert}

2.1.3 enumerate

Bei Aufzählungen enumerate kann die Markierung, also die Darstellungsweise des Wertes, über die Option der enumerate Umgebung gesetzt werden. Dabei stehen als mögliche Varianten

Alph*,alph*
große und kleine lateinische Buchstaben

Roman*,roman*
große und kleine römische Ziffern

arabic*
und arabische Ziffern zur Verfügung.

Auch hier gilt im Fall der Verschachtelung, dass bei jeder enumerate Umgebung die Labels gesetzt werden müssen, wenn sie vom Standard Symbol der entsprechenden Ebene abweichen.

Mit dem setlist Befehl kann die Einstellung dokumentenweit festgelegt werden.

\setlist[enumerate,1]{Label=Wert}
\setlist[enumerate,2]{Label=Wert}
\setlist[enumerate,3]{Label=Wert}
\setlist[enumerate,4]{Label=Wert}

Bei der enumerate Umgebung kann der Zählerstand auch an eine darunterliegende Ebene übergeben werden um zum Beispiel eine Durchnummerierung in der Form 1.1.2.1 zu erhalten. Nachfolgendes Beispiel zeigt dabei die Vorgehensweise.

\begin{enumerate}[label=\arabic*.]
\item eins
\item zwei 
\begin{enumerate}[label=\theenumi\arabic*]
\item eins
\item zwei 
\begin{enumerate}[label=\theenumii.\arabic*]
\item eins
\item zwei 
\begin{enumerate}[label=\theenumiii.\arabic*]
\item eins
\item zwei 
\end{enumerate}
\end{enumerate}
\end{enumerate}
\end{enumerate}
  1. 1. eins
  2. 2. zwei
    1. 2.1 eins
    2. 2.2 zwei
      1. 2.2.1 eins
      2. 2.2.2 zwei
        1. 2.2.2.1 eins
        2. 2.2.2.2 zwei

Die enmuerate verfügt noch über drei weitere Optionen start, resume und resume*.

resume und resume*

Die Optionen resume und resume* ermöglichen es den aktuellen Zählerstand einer nummerierten Aufzählung auf die nächste zu übertragen. Dafür wird in der nachfolgenden Aufzählung die Option resume beziehungsweise resume* gesetzt.

Im Fall, dass man den Zähler angepasst hat und auch bei der nachfolgenden Aufzählung den geänderten Zähler verwenden will setzt man die Option resume*. Wenn nur der Wert aber nicht die Zahlendarstellung übernommen werden soll wird die Option resume gesetzt.

Beispiel: resume*
\begin{enumerate}[label=\alph*.]
\item Eins 
\item Zwei
\end{enumerate}
\dots
\begin{enumerate}[resume*]
\item Eins 
\item Zwei
\end{enumerate}
Ausgabe: resume*
  1. Eins
  2. Zwei
...
  1. Eins
  2. Zwei
Beispiel: resume
\begin{enumerate}[label=\alph*.]
\item Eins 
\item Zwei
\end{enumerate}
\dots
\begin{enumerate}[resume]
\item Eins 
\item Zwei
\end{enumerate}
Ausgabe: resume
  1. Eins
  2. Zwei
...
  1. Eins
  2. Zwei
start

Mit der Option start=Wert kann ein Anfangswert für die Aufzählung festgelegt werden.

Beispiel:
\begin{enumerate}[start=13]
\item Eins 
\item Zwei
\end{enumerate}
Ausgabe:
  1. Eins
  2. Zwei

2.2 Abstände

Die Werte für die vertikalen und horizontalen Abstände können über ein Key = Value System für die jeweilige Liste als Option von dieser gesetzt werden. Dabei stehen die folgenden Werte zur Verfügung.

vertikale Abstände: topsep, partopsep, parsep und itemsep

horizontale Abstände: leftmargin, rightmargin, listparindent, labelwidth, labelsep, itemindent

Für die dokumentenweite Änderung dieser Werte gibt es hier für itemize und enumerate entsprechende Generatoren.

Mit der Option nosep werden alle vertikale Abstände beseitigt. Und wenn der Befehl \setlist{nosep} gesetzt wird gilt dies für alle Listen.

Literatur

[1]
Customizing lists with the enumitem package, Javier Bezos, Version 3.9, 2019/06/20