Comment modifier les environnements de liste ?
* L'environnement list permet de définir son propre style de
liste. Sa syntaxe est la suivante :
\begin{list}{label}{mep}\end{list}
+ l'argument label permet de définir le symbole qui sera
associé à chaque élément de la liste.
+ mep permet de définir la mise en page des éléments de la
liste. Les paramètres utilisés pour définir cette mise en page
sont les suivants :
\topsep espace vertical supplémentaire (ajoute à \parskip)
inséré entre le texte précédant la liste et le 1er objet
de la liste
\partosep espace vertical supplémentaire inséré devant la liste
si celle-ci est précédée d'une ligne blanche
\itemsep espace vertical supplémentaire (ajouté à \parsep)
inséré entre les éléments d'une liste.
Exemple :
\newenvironment{maliste}%
{ \begin{list}%
{$\bullet$}%
{\setlength{\labelwidth}{30pt}%
\setlength{\leftmargin}{35pt}%
\setlength{\itemsep}{\parsep}}}%
{ \end{list} }
Utilisation :
\begin{maliste}
\item premier élément
\item deuxième élément
\begin{maliste}
\item petit 1
\item petit 2
\end{maliste}
\end{maliste}
%%%% fin exemple %%%%
* Le petit bout de code ci-dessous, de M. Boyer
(mboyer at robot.ireq.ca), définit les commandes :
+ \noitemsep pour supprimer tout espacement vertical entre les
items des environnements \itemize, \enumerate et \description.
+ \doitemsep pour les remettre.
Pour l'utiliser, il suffit de le sauvegarder dans un fichier
.sty et de l'inclure dans son document par une commande
\usepackage.
%%%% debut macro %%%%
%% ----------------------------------------------------
%% Copyright (c) 1993 Hydro-Quebec mboyer at robot.ireq.ca
%% ----------------------------------------------------
%% Bring items closer together in list environments
% Prevent infinite loops
\let\orig@Itemize =\itemize
\let\orig@Enumerate =\enumerate
\let\orig@Description =\description
% Zero the vertical spacing parameters
\def\Nospacing{\itemsep=0pt\topsep=0pt\partopsep=0pt%
\parskip=0pt\parsep=0pt}
% Redefinition de art12.sty pour commencer a la marge de gauche
%\leftmargini 1.2em % 2.5em
\def\noitemsep{
% Redefine the environments in terms of the original values
\renewenvironment{itemize}{\orig@Itemize\Nospacing}{\endlist}
\renewenvironment{enumerate}{\orig@Enumerate\Nospacing}{\endlist}
\renewenvironment{description}{\orig@Description\Nospacing}%
{\endlist}
}
\def\doitemsep{
% Redefine the environments to the original values
\renewenvironment{itemize}{\orig@Itemize}{\endlist}
\renewenvironment{enumerate}{\orig@Enumerate}{\endlist}
\renewenvironment{description}{\orig@Description}{\endlist}
}
%%%% fin macro %%%%
* La macro ci-dessous de T. Murphy permet de remplacer les
numéros de l'environnement enumerate par des caractères grecs :
%%%% debut macro %%%%
\makeatletter
\def\greek#1{\expandafter\@greek\csname c@#1\endcsname}
\def\@greek#1{\ifcase#1\or$\alpha$\or$\beta$\fi}% as many as you
% need
\renewcommand{\theenumi}{\greek{enumi}}
\makeatother
%%%% fin macro %%%%
* Les définitions suivantes :
\renewcommand{\labelitemi}{\textbullet}
\renewcommand{\labelitemii}{---}
\renewcommand{\labelitemiii}{votre-label-pour-le-niveau-iii}
\renewcommand{\labelitemiv}{votre-label-pour-le-niveau-iv}
permettent de redéfinir les caractères utilisés par
l'environnement itemize pour ces différents niveaux
d'encapsulation.
Remarque : avec certains packages comme french, il faut placer
ces nouvelles définitions de commande après le
\begin{document}.
De même, utilisez \descriptionlabel pour changer le style des
étiquettes de l'environment description.
Exemple :
\renewcommand\descriptionlabel[1]{\hspace\labelsep\normalfont%
\itshape #1:}
produit des étiquettes en italique, avec deux points :
\begin{description}
\item[Carte maîtresse] As
\item[Carte maîtresse à l'atout] Valet
\end{description}
%%%% fin exemple %%%%
* Pour réduire globalement l'espace entre les items d'une liste
on peut également utiliser le bout de code suivant de M. Wooding
%%%% debut macro %%%%
\makeatletter
\toks@\expandafter{\@listI}
\edef\@listI{\the\toks@\setlength{\parsep}{1pt}}
\makeatother
%%%% fin macro %%%%
* Le package 'mdwlist', de M. Wooding, disponible sur
ftp://ftp.inria.fr/pub/TeX/CTAN/macros/latex/contrib/mdwtools/ permet de
redéfinir certains paramètres de mise en page des listes qui ne
sont pas faciles d'accès sous LaTeX.