Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
3_composition:texte:listes:interrompre_une_liste_numerotee [2018/05/24 18:57]
joseph.wright
3_composition:texte:listes:interrompre_une_liste_numerotee [2021/01/28 17:47] (Version actuelle)
dbitouze Correction de lien interne
Ligne 1: Ligne 1:
---- +====== Comment interrompre temporairement une liste numérotée======
-section: How do I do&​hellip;​? +
-subsection: Lists +
-permalink: /​FAQ-interruptlist +
-date: 2014-06-10 +
----+
  
-# Interrupting enumerated lists+Il est souvent pratique d'​avoir un texte de commentaire,​ « en dehors » de la liste, entre les entrées successives d'une liste. La situation est ici fonction du type d'​environnement utilisé : 
 +  * avec l'​environnement ''​itemize'',​ ce n'est pas un problème, car rien ne distingue les éléments successifs ; 
 +  * avec l'​environnement ''​description'',​ les étiquettes des éléments sont sous le contrôle de l'​utilisateur et il n'y a donc pas de problème de continuité ; 
 +  * avec l'​environnement ''​enumerate'',​ la numérotation de la liste est générée automatiquement et est sensible au contexte. Il faut donc ici conserver l'​état du compteur d'​énumération pour poursuivre la liste après l'​avoir interrompu. C'est ce cas qui est développé ici.
  
-It's often convenient to have commentary text, ''​outside''​ the list, +===== Avec les commandes de base =====
-between successive entries of a list.  In the case of +
-`itemize` lists this is no problem, since there'​s never +
-anything to distinguish successive items, while in the case of +
-`description` lists, the item labels are under the user'​s +
-control so there'​s no automatic issue of continuity.+
  
-For `enumerate` liststhe labels are generated +L'​approche consiste ici à conserver l'​état de l'​énumération dans un compteur créé pour l'​occasionpuis à le restaurer lors de la reprise de l'​énumération :
-automatically,​ and are context-sensitive,​ so the context (in this +
-case, the state of the enumeration counter) needs to be preserved.+
  
-The belt-and-braces approach is to remember the state of the +<code latex> 
-enumeration in your own counter variable, and then restore it when +\documentclass{article}
-restarting enumerate:​ +
-```latex+
 \newcounter{saveenum} \newcounter{saveenum}
- ...+ 
 +\begin{document} 
 +Cette liste est :
 \begin{enumerate} \begin{enumerate}
-  ​...+  ​\item claire ; 
 +  \item précise ;
   \setcounter{saveenum}{\value{enumi}}   \setcounter{saveenum}{\value{enumi}}
 \end{enumerate} \end{enumerate}
-<​Commentary text>+Cela n'​était pas bien compliqué.
 \begin{enumerate} \begin{enumerate}
   \setcounter{enumi}{\value{saveenum}}   \setcounter{enumi}{\value{saveenum}}
-  ​...+  ​\item et complète.
 \end{enumerate} \end{enumerate}
-```+\end{document} 
 +</​code>​
  
-This is reasonable, in small doses&​hellipProblems (apart from sheer +<​latexdoc>​ 
-verbosity) are getting the level right (''​should I use counter +\documentclass{article} 
-`enumi``enumii`, &​hellip;​''​) and remembering not to +\newcounter{saveenum} 
-nest the interruptions (i.e., not to have a separate listthat is +\pagestyle{empty} 
-itself interrupted) in the ''​commentary text''​).+\begin{document} 
 +Cette liste est : 
 +\begin{enumerate} 
 +  \item claire ​
 +  \item précise ; 
 +  \setcounter{saveenum}{\value{enumi}} 
 +\end{enumerate} 
 +Cela n'​était pas bien compliqué. 
 +\begin{enumerate} 
 +  \setcounter{enumi}{\value{saveenum}} 
 +  \item et complète. 
 +\end{enumerate} 
 +\end{document} 
 +</​latexdoc>​ 
 + 
 +Cette méthode est raisonnable à petites doses... Les problèmes, en dehors de la lisibilité,​ sont d'​obtenir le bon niveau ​(faut-il utiliser le compteur ​''​enumi''​''​enumii''​...) et d'​éviter d'​avoir des listes interrompues dans le commentaire lui-même. 
 + 
 +Par ailleurssi vous suspendez une [[3_composition:​texte:​listes:​modifier_le_style_des_listes_numerotees |liste avec un style de numérotation modifié]]vous devez fournir à nouveau les paramètres optionnels requis par l'​extension [[ctanpkg>​enumerate|enumerate]] lors de la reprise la liste. 
 + 
 +===== Avec l'extension mdwlist ===== 
 + 
 +L'extension [[ctanpkg>​mdwlist|mdwlist]] définit les commandes ​''​\suspend''​ et ''​\resume''​ pour simplifier ce processus:​ 
 + 
 +<code latex> 
 +\documentclass{article} 
 +\usepackage{mdwlist}
  
-The [`mdwlist`](https://​ctan.org/​pkg/​mdwlist) package defines commands `\suspend` and +\begin{document} 
-`\resume` that simplify the process: +Cette liste est :
-```latex+
 \begin{enumerate} \begin{enumerate}
-  ​...+  ​\item claire ; 
 +  \item précise ;
 \suspend{enumerate} \suspend{enumerate}
-<​Commentary text>+Cela n'​était pas bien compliqué.
 \resume{enumerate} \resume{enumerate}
-  ​...+  ​\item et complète.
 \end{enumerate} \end{enumerate}
-``` +\end{document
-The package allows an optional name (as in +</​code>​
-`\suspend[id]{enumerate}`) to allow you to identify a +
-particular suspension, and hence provide a handle for manipulating +
-nested suspensions.+
  
-If you're suspending a [fancy-enumeration list](FAQ-enumerate.md), +<​latexdoc>​ 
-you need to  +\documentclass{article} 
-re-supply the optional ​''​item label layout'' ​parameters required by +\usepackage{mdwlist} 
-the [`enumerate`](https:​//ctan.org/pkg/​enumerate) ​package when resuming the listwhether by the +\pagestyle{empty} 
-belt-and-braces approachor by the [`mdwlist`](https://​ctan.org/​pkg/​mdwlist) +\begin{document} 
-`\resume{enumerate}` technique. ​ The task is a little tedious +Cette liste est : 
-in the [`mdwlist`](https://​ctan.org/​pkg/​mdwlist) case, since the optional ​argument ​has to be +\begin{enumerate} 
-encapsulatedwholeinside an optional ​argument ​to `\resume`, +  \item claire ; 
-which requires use of extra braces+  \item précise ; 
-```latex+\suspend{enumerate} 
 +Cela n'était pas bien compliqué. 
 +\resume{enumerate
 +  \item et complète
 +\end{enumerate} 
 +\end{document} 
 +</​latexdoc>​ 
 + 
 +L'extension permet de tenir compte d'un identifiant facultatif (sur le modèle ​''​\suspend[''​//''​id''​//''​]{enumerate}''​pour vous permettre d'​identifier une suspension particulièreet donc de bien l'​isoler des autres pour gérer par exemple des suspensions imbriquées. 
 + 
 +Tout comme dans la méthode basiquesi vous suspendez une [[3_composition:texte:​listes:​modifier_le_style_des_listes_numerotees |liste avec un style de numérotation modifié]], vous devez fournir à nouveau les paramètres optionnels requis par l'​extension ​[[ctanpkg>​enumerate|enumerate]]. La tâche est ici un peu fastidieuse car l'argument ​optionnel doit être encapsuléen entierà l'​intérieur d'​un ​argument ​optionnel de ''​\resume''​ et ceci nécessite l'​utilisation d'​accolades supplémentaires ​
 + 
 +<​code ​latex
 +\documentclass{article} 
 +\usepackage{mdwlist} 
 +\usepackage{enumerate} 
 + 
 +\begin{document} 
 +Cette liste est :
 \begin{enumerate}[\textbf{Item} i] \begin{enumerate}[\textbf{Item} i]
-  ​...+  ​\item claire ; 
 +  \item précise ;
 \suspend{enumerate} \suspend{enumerate}
-<​comment>​+Cela n'​était pas bien compliqué.
 \resume{enumerate}[{[\textbf{Item} i]}] \resume{enumerate}[{[\textbf{Item} i]}]
-...+  \item et complète.
 \end{enumerate} \end{enumerate}
-``` +\end{document} 
-The [`enumitem`](https://ctan.org/pkg/enumitem) packagein its most recent +</​code>​ 
-releasewill also allow you to resume lists+ 
-```latex+<​latexdoc>​ 
 +\documentclass{article} 
 +\usepackage{mdwlist} 
 +\usepackage{enumerate} 
 +\pagestyle{empty} 
 +\begin{document} 
 +Cette liste est : 
 +\begin{enumerate}[\textbf{Item} i] 
 +  \item claire ; 
 +  \item précise ; 
 +\suspend{enumerate} 
 +Cela n'​était pas bien compliqué. 
 +\resume{enumerate}[{[\textbf{Item} i]}] 
 +  \item et complète. 
 +\end{enumerate} 
 +\end{document} 
 +</​latexdoc>​ 
 + 
 +===== Avec l'​extension expdlist ===== 
 + 
 +L'​extension [[ctanpkg>​expdlist|expdlist]] a une manière différente d'​aborder le problème, avec sa commande ''​\listpart''​. L'​argument de la commande devient en effet un commentaire entre les éléments de la liste : 
 + 
 +<code latex> 
 +\documentclass{article} 
 +\usepackage{expdlist} 
 + 
 +\begin{document} 
 +Cette liste est : 
 +\begin{enumerate} 
 +  \item claire ; 
 +  \item précise ; 
 +  \listpart{Cela n'​était pas bien compliqué.} 
 +  \item et complète. 
 +\end{enumerate} 
 +\end{document} 
 +</code> 
 + 
 +<​latexdoc>​ 
 +\documentclass{article} 
 +\usepackage{expdlist} 
 +\pagestyle{empty} 
 +\begin{document} 
 +Cette liste est : 
 +\begin{enumerate} 
 +  \item claire ; 
 +  \item précise ; 
 +  \listpart{Cela n'​était pas bien compliqué.
 +  \item et complète. 
 +\end{enumerate} 
 +\end{document} 
 +</latexdoc>​ 
 + 
 +Ceci signifie qu'il n'a même pas à penser à suspendre ou à reprendre la listeet bien sûr, cela fonctionne aussi bien dans n'​importe quel environnement de liste. 
 + 
 +===== Avec l'​extension enumitem ===== 
 + 
 +L'​extension [[ctanpkg>​enumitem|enumitem]]dans ses versions récentes, vous permettra également d'​interrompre et de reprendre des listes ​
 + 
 +<​code ​latex
 +\documentclass{article} 
 +\usepackage{enumitem} 
 + 
 +\begin{document} 
 +Cette liste est :
 \begin{enumerate} \begin{enumerate}
-...+  \item claire ; 
 +  \item précise ;
 \end{enumerate} \end{enumerate}
-<​comment>​+Cela n'​était pas bien compliqué.
 \begin{enumerate}[resume] \begin{enumerate}[resume]
-...+  \item et complète.
 \end{enumerate} \end{enumerate}
-``` +\end{document} 
-which feels just as ''​natural''​ as the [`mdwtools`](https:​//​ctan.org/​pkg/​mdwtools) facility, +</code>
-and has the advantage of playing well with the other excellent +
-facilities of [`enumitem`](https://​ctan.org/​pkg/​enumitem).+
  
-[`Expdlist`](https://​ctan.org/​pkg/​Expdlist) has a neat way of providing for comments, with its +<​latexdoc>​ 
-`\listpart` command. ​ The command'​s argument becomes a comment +\documentclass{article} 
-between items of the list: +\usepackage{enumitem} 
-```latex+\pagestyle{empty} 
 +\begin{document} 
 +Cette liste est :
 \begin{enumerate} \begin{enumerate}
-\item item 1 +  ​\item claire ; 
-\item item 2 +  \item précise ;
-  \listpart{interpolated comment} +
-\item item 3+
 \end{enumerate} \end{enumerate}
-``` +Cela n'était pas bien compliqué. 
-This, you will realise, means it doesn't even have to think about +\begin{enumerate}[resume] 
-suspending or resuming the list, and of course it works equally well +  \item et complète. 
-in any of the list environments (thought it's not actually +\end{enumerate
-_necessary_ for any but `enumerate`).+\end{document} 
 +</​latexdoc>​
  
-[`Enumitem`](https://​ctan.org/​pkg/​Enumitem) also allows multi-level suspension and resumption +Cette approche semble tout aussi naturelle que celle de [[ctanpkg>​mdwlist|mdwlist]] et a l'​avantage de bien s'​adapter aux autres fonctionnalités de l'​extension [[ctanpkg>​enumitem|enumitem]]. 
-of lists+ 
-```latex+L'​extension [[ctanpkg>​enumitem|enumitem]] permet également la suspension à plusieurs niveaux et la reprise des listes ​
 + 
 +<​code ​latex
 +\documentclass{article} 
 +\usepackage{enumitem} 
 + 
 +\begin{document} 
 +Cette liste est :
 \begin{enumerate} \begin{enumerate}
-\item outer item 1+\item claire ;
 \end{enumerate} \end{enumerate}
-<​comment>​+En tant qu'​exemple,​ elle se devait de l'​être.
 \begin{enumerate}[resume] \begin{enumerate}[resume]
-\item outer item 2 +\item précise ;
-% nested enumerate+
 \begin{enumerate} \begin{enumerate}
-\item inner item 1+\item par souci de formalisme, ​
 \end{enumerate} \end{enumerate}
-<nested comment>​ +Oui, oui, toujours parce qu'​elle est exemplaire.
-% resume nested enumerate+
 \begin{enumerate}[resume] \begin{enumerate}[resume]
-\item inner item 2+\item et par souci de concision ;
 \end{enumerate} \end{enumerate}
-\item outer item 3 +\item et complète
-% end outer enumerate+
 \end{enumerate} \end{enumerate}
-``` +\end{document} 
-Howeverthe ''​nested comment''​ interpolated in the nested enumeration +</​code>​ 
-appears as if it were a second paragraph to ''​outer item 2'', ​which is + 
-hardly satisfactory.+<​latexdoc>​ 
 +\documentclass{article} 
 +\usepackage{enumitem} 
 +\pagestyle{empty} 
 +\begin{document} 
 +Cette liste est : 
 +\begin{enumerate} 
 +\item claire ; 
 +\end{enumerate} 
 +En tant qu'​exempleelle se devait de l'être. 
 +\begin{enumerate}[resume] 
 +\item précise ; 
 +\begin{enumerate} 
 +\item par souci de formalisme,  
 +\end{enumerate} 
 +Oui, oui, toujours parce qu'elle est exemplaire. 
 +\begin{enumerate}[resume] 
 +\item et par souci de concision ; 
 +\end{enumerate} 
 +\item et complète 
 +\end{enumerate} 
 +\end{document} 
 +</​latexdoc>​ 
 + 
 +Cependant, le commentaire présent dans l'énumération imbriquée apparaît comme s'il s'agissait d'un deuxième paragraphe au sein du deuxième élément de la liste principalece qui n'est guère satisfaisant. 
 + 
 +----- 
 +//Source:// [[faquk>​FAQ-interruptlist|Interrupting enumerated lists]]
  
 +{{htmlmetatags>​metatag-keywords=(LaTeX,​listes et énumérations,​couper une liste,​interrompre une liste)
 +metatag-og:​title=(Comment interrompre temporairement une liste numérotée)
 +metatag-og:​site_name=(FAQ LaTeX francophone)
 +}}
  
3_composition/texte/listes/interrompre_une_liste_numerotee.1527181055.txt.gz · Dernière modification: 2018/05/24 18:57 par joseph.wright
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0