2010-02-01 27 views

Respuesta

5

Sí, puedes; pero tendrá que altera ni las enumerate y itemize ambientes desde el archivo de clase (copiándolos y añadiendo su \parskip), o mediante la redefinición de \@listi, que funciona en todas las listas:

\makeatletter 

\def\@listi{% 
    % default settings for base LaTeX classes at 10pt: 
    \parsep 4pt plus 2pt minus 1pt 
    \topsep 8pt plus 2pt minus 4pt 
    \itemsep 4pt plus 2pt minus 1pt 
    % your settings: 
    \parskip 1em plus 1pt minus 1pt 
} 

\makeatother 

Si desea diferentes ajustes en los niveles de lista anidada, cambio \@listii, etc. \@listiii

+0

Ah, esperaba que hubiera algo más fácil. Gracias –

+0

Si está a la aventura, podría probar '\ expandafter \ def \ expandafter \ @listi \ expandafter {\ @ listi \ parsep 1em plus 1pt menos 1pt}' De esta manera, no necesita copiar el existente las configuraciones ('\ expandafter' lo harán por usted). – Ruben

4

también se pueden utilizar:

begin{itemize} \itemsep -5pt 
\item foo 
\item bar 
\end{itemize} 

y que sólo afectará a la corriente lista.

10

Si utiliza el paquete enumitem, se puede decir que en su preámbulo

\setlist[itemize]{parsep=0pt} 
\setlist[enumerate]{parsep=0pt} 

para conseguir lo que desea. enumitem permite hacer mucha más personalización de lista, consulte su documentación para más detalles.

+0

Muchas gracias. Esta fue la respuesta más útil para mí. +1. – vergenzt

+0

Ese es un buen paquete. Desafortunadamente, [entra en conflicto con 'beamer'] (http://tex.stackexchange.com/questions/31505/trouble-combining-enumitem-and-beamer). – Raphael

0

la siguiente adición al preámbulo actualiza enumerate para hacer el cambio sugerido:

\let\oldenumerate\enumerate% Keep a copy of \enumerate (or \begin{enumerate}) 
\let\endoldenumerate\endenumerate% Keep a copy of \endenumerate (or \end{enumerate}) 
\renewenvironment{enumerate} 
    {\begin{oldenumerate} 
    \setlength{\parskip}{0pt}}% Adjust \parskip to suit your needs 
    {\end{oldenumerate}} 

Aquí está un ejemplo mínimo completa que muestra el ajuste de la hora de establecer \parskip a 0pt:

enter image description here

\documentclass{article} 
\begin{document} 

\begin{enumerate} 
    \item First line 

    Second line 
\end{enumerate} 

\let\oldenumerate\enumerate 
\let\endoldenumerate\endenumerate 
\renewenvironment{enumerate} 
    {\begin{oldenumerate} 
    \setlength{\parskip}{0pt}} 
    {\end{oldenumerate}} 

\begin{enumerate} 
    \item First line 

    Second line 
\end{enumerate} 

\end{document} 

Uno haría exactamente lo mismo para itemize.

Cuestiones relacionadas