Memecah daftar menjadi beberapa kolom dalam Lateks


168

Mudah-mudahan ini sederhana: Saya memiliki daftar yang relatif panjang di mana setiap item daftar berisi sangat sedikit teks. Sebagai contoh:

* Sebuah
* b
* c
* d
* e
* f

Saya ingin memformatnya seperti ini:

* a * d
* b * e
* c * f

Saya lebih suka tidak membuat tabel dengan 2 daftar karena saya ingin dapat dengan mudah mengubah daftar tanpa khawatir memperbarui semua kolom.

Apa cara terbaik untuk melakukan ini dalam lateks?


38
Sangat membantu, tetapi harus dimigrasikan ke tex.stackexchange.com
— Matthias

Jawaban:


250

Menggunakan paket multicol dan menyematkan daftar Anda di multicolslingkungan melakukan apa yang Anda inginkan:

\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
Jika Anda tidak suka angka yang ditambahkan secara otomatis ditambahkan, coba perinci bukan sebagai penghitungan.
— Tim Stewart

1
Atau enumitemyang memungkinkan mendefinisikan lingkungan enumerasi khusus - mis. Saya memiliki lingkungan exenum, sehingga setiap daftar contoh disebutkan dengan cara yang sama.
— Martin Thoma

3
Bagaimana jika saya memiliki daftar angka ganjil yang dikatakan 5. Kode ini memberikan 3 item dalam satu kolom dan 2 di kolom (satu di yang pertama dan yang lain di baris ketiga). Bagaimana saya bisa memecahkan masalah ini?. Bagaimana saya bisa menyesuaikan ruang antara dua kolom?
— Fadwa

Ada apa dengan multicol ruang besar menambahkan di atas itu sendiri?
— Marcin

apakah ada cara penyelarasan yang mudah jika ada jumlah ganjil dari entri (mis. semua disejajarkan ke atas bukan jarak standar)?
— user1234

18

Saya tidak tahu apakah itu akan berhasil, tapi mungkin Anda bisa memecah halaman menjadi kolom menggunakan paket multicol.

\usepackage{multicol}

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

0

Saya telah merekomendasikan multenum untuk "Daftar enumerasi multi-kolom" kepada saya, tetapi saya belum pernah menggunakannya sendiri.

Sunting: Sintaksnya tidak persis seperti Anda dapat dengan mudah menyalin + menempelkan daftar ke dalam kode LaTeX. Jadi, ini mungkin bukan solusi terbaik untuk kasus penggunaan Anda !


0

Dengan menggabungkan paket multicol dan paket enumitem , mudah untuk mendefinisikan lingkungan yang merupakan analog multi-kolom dari lingkungan enumerasi dan perincian:

\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}

Outputnya adalah apa yang Anda harapkan:

masukkan deskripsi gambar di sini

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.