Aufteilen einer Liste in mehrere Spalten in Latex


168

Hoffentlich ist das einfach: Ich habe eine relativ lange Liste, in der jedes Listenelement sehr wenig Text enthält. Beispielsweise:

* ein
* b
* c
* d
* e
* f

Ich möchte es so formatieren:

* Anzeige
* Sein
* c * f

Ich möchte lieber keine Tabelle mit 2 Listen erstellen, da ich die Liste einfach ändern möchte, ohne mir Gedanken über die Aktualisierung aller Spalten machen zu müssen.

Was ist der beste Weg, dies in Latex zu tun?


38
Sehr hilfreich, sollte aber auf tex.stackexchange.com
Matthias

Antworten:


250

Wenn Sie das Multicol- Paket verwenden und Ihre Liste in eine multicolsUmgebung einbetten, können Sie Folgendes tun:

\documentclass{article}
\usepackage{multicol}

\begin{document}
\begin{multicols}{2}
\begin{enumerate}
    \item a
    \item b
    \item c
    \item d
    \item e
    \item f
\end{enumerate}
\end{multicols}
\end{document}

8
Wenn Ihnen die automatisch hinzugefügten Zahlen nicht gefallen, versuchen Sie, sie aufzulisten, anstatt sie aufzuzählen.
Tim Stewart

1
Oder enumitemwas das Definieren von benutzerdefinierten Aufzählungsumgebungen ermöglicht - z. B. habe ich eine Exenum-Umgebung, sodass jede Liste von Beispielen auf dieselbe Weise aufgelistet wird.
Martin Thoma

3
Was ist, wenn ich eine ungerade Zahlenliste habe, sagen wir 5. Dieser Code gibt 3 Elemente in einer Spalte und 2 in der Spalte (eines in der ersten und das andere in der dritten Zeile). Wie kann ich das lösen? Wie kann ich den Abstand zwischen den beiden Spalten anpassen?
Fadwa

Was ist mit dem riesigen Raum, den Multicol über sich selbst hinzufügt?
Marcin

Gibt es eine einfache Möglichkeit zur Ausrichtung, wenn eine ungerade Anzahl von Einträgen vorhanden ist (z. B. alle nach oben ausgerichtet, nicht der Standardabstand)?
Benutzer1234

18

Ich weiß nicht, ob es funktionieren würde, aber vielleicht könnten Sie die Seite mit dem Multicol-Paket in Spalten aufteilen.

\usepackage{multicol}

\begin{document}
\begin{multicols}{2}[Your list here]
\end{multicols}

0

Ich habe mir ein Multenum für " Mehrspaltige Aufzählungslisten" empfehlen lassen, aber ich habe es selbst noch nie benutzt.

Bearbeiten: Die Syntax sieht nicht so aus, als könnten Sie Listen einfach kopieren und in den LaTeX-Code einfügen. Daher ist es möglicherweise nicht die beste Lösung für Ihren Anwendungsfall!


0

Durch die Kombination des Multicol- Pakets und Enumitem-Paketpakete ist es einfach, Umgebungen zu definieren, die mehrspaltige Analoga der Enumerate- und Itemize-Umgebungen sind:

\documentclass{article}
\usepackage{enumitem}
\usepackage{multicol}

\newlist{multienum}{enumerate}{1}
\setlist[multienum]{
    label=\alph*),
    before=\begin{multicols}{2},
    after=\end{multicols}
}

\newlist{multiitem}{itemize}{1}
\setlist[multiitem]{
    label=\textbullet,
    before=\begin{multicols}{2},
    after=\end{multicols}
}

\begin{document}

  \textsf{Two column enumerate}
  \begin{multienum}
    \item item 1
    \item item 2
    \item item 3
    \item item 4
    \item item 5
    \item item 6
  \end{multienum}

  \textsf{Two column itemize}
  \begin{multiitem}
    \item item 1
    \item item 2
    \item item 3
    \item item 4
    \item item 5
    \item item 6
  \end{multiitem}

\end{document}

Die Ausgabe ist das, worauf Sie hoffen würden:

Geben Sie hier die Bildbeschreibung ein

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.