Romper una lista en varias columnas en Latex


168

Con suerte, esto es simple: tengo una lista relativamente larga donde cada elemento de la lista contiene muy poco texto. Por ejemplo:

* una
* b
* C
* d
* e
* f

Deseo formatearlo así:

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

Prefiero no crear una tabla con 2 listas, ya que quiero poder cambiar fácilmente la lista sin preocuparme por actualizar todas las columnas.

¿Cuál es la mejor manera de hacer esto en látex?


38
Muy útil, pero debe migrarse a tex.stackexchange.com
Matthias

Respuestas:


250

Usar el paquete multicol e incrustar su lista en un multicolsentorno hace lo que desea:

\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
Si no le gustan los números que se enumeran automáticamente, intente detallar en lugar de enumerar.
Tim Stewart, el

1
O lo enumitemque permite definir entornos de enumeración personalizados, por ejemplo, tengo un entorno de exenum, de modo que cada lista de ejemplos se enumera de la misma manera.
Martin Thoma

3
¿Qué pasa si tengo una lista de números impares que dice 5. Este código da 3 elementos en una columna y 2 en la columna (uno en la primera y el otro en la tercera línea). ¿Como puedo resolver esto?. ¿Cómo puedo ajustar el espacio entre las dos columnas?
Fadwa

¿Qué pasa con el enorme espacio que Multicol agrega sobre sí mismo?
Marcin

¿Hay una manera fácil de alinear si hay un número impar de entradas (por ejemplo, todas alineadas a la parte superior, no el espaciado predeterminado)?
usuario1234

18

No sé si funcionaría, pero tal vez podría dividir la página en columnas usando el paquete multicol.

\usepackage{multicol}

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

0

Me recomendó multenum para "Listas enumeradas en varias columnas", pero nunca lo he usado yo mismo todavía.

Editar: la sintaxis no se ve exactamente como si pudiera copiar y pegar fácilmente listas en el código LaTeX. Por lo tanto, puede que no sea la mejor solución para su caso de uso.


0

Al combinar el paquete multicol y los paquetes del paquete enumitem , es fácil definir entornos que son análogos de columnas múltiples de los entornos enumerar y detallar:

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

El resultado es lo que esperarías:

ingrese la descripción de la imagen aquí

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.