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édentesRévision précédente
Prochaine révision
Révision précédente
composition:texte:listes:interrompre_une_liste_numerotee [2018/06/03 13:11] samcarter3_composition:texte:listes:interrompre_une_liste_numerotee [2022/11/29 20:23] (Version actuelle) – [Avec l'extension “mdwlist”] Usage de ⟨...⟩ dbitouze
Ligne 1: Ligne 1:
---- +====== Comment interrompre temporairement une liste numérotée? ======
-title: Interrupting enumerated lists +
-category: usage +
-tags: lists +
-permalink: /FAQ-interruptlist +
-date: 2014-06-10 +
----+
  
-It's often convenient to have commentary text"outside" the list, +Il est souvent pratique d'avoir un texte de commentaire« en dehors » de la listeentre les entrées successives d'une listeLa situation est ici fonction du type d'environnement utilisé : 
-between successive entries of a list In the case of +  * avec l'environnement ''itemize''ce n'est pas un problèmecar rien ne distingue les éléments successifs ; 
-`itemize` lists this is no problemsince there's never +  * 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é ; 
-anything to distinguish successive itemswhile in the case of +  * 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.
-`description` liststhe item labels are under the user's +
-control so there's no automatic issue of continuity.+
  
-For `enumerate` lists, the labels are generated +===== Avec les commandes de base =====
-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 +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 
-enumeration in your own counter variableand then restore it when + 
-restarting enumerate+<WRAP column 51ex> 
-```latex +<code latex> 
-\newcounter{saveenum} +\documentclass{article} 
- ...+  \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> 
 +</WRAP> 
 +<WRAP column 30ex> 
 +<latexdoc> 
 +\documentclass{article} 
 +  \newcounter{saveenum} 
 +  \pagestyle{empty}
  
-This is reasonable, in small doses&hellipProblems (apart from sheer +\begin{document} 
-verbosity) are getting the level right +Cette liste est : 
-("should I use counter `enumi``enumii`&hellip;") and remembering not to +\begin{enumerate} 
-nest the interruptions (i.e., not to have a separate listthat is +  \item claire 
-itself interrupted) in the "commentary text").+  \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> 
 +</WRAP> 
 +<WRAP clear /> 
 + 
 +Cette méthode est raisonnable à petites doses... Les problèmesen 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]] définit les commandes ''\suspend'' et ''\resume'' pour simplifier ce processus: 
 + 
 +<WRAP column 51ex> 
 +<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 +</WRAP> 
-particular suspension, and hence provide a handle for manipulating +<WRAP column 30ex> 
-nested suspensions.+<latexdoc> 
 +\documentclass{article
 +  \usepackage{mdwlist} 
 +  \pagestyle{empty}
  
-If you're suspending a [fancy-enumeration list](FAQ-enumerate), +\begin{document} 
-you need to  +Cette liste est : 
-re-supply the optional "item label layout" parameters required by +\begin{enumerate} 
-the [`enumerate`](https://ctan.org/pkg/enumerate) package when resuming the list, whether by the +  \item claire ; 
-belt-and-braces approach, or by the [`mdwlist`](https://ctan.org/pkg/mdwlist) +  \item précise ; 
-`\resume{enumerate}` technique The task is a little tedious +\suspend{enumerate
-in the [`mdwlist`](https://ctan.org/pkg/mdwlist) casesince the optional argument has to be +Cela n'était pas bien compliqué. 
-encapsulatedwholeinside an optional argument to `\resume`, +\resume{enumerate} 
-which requires use of extra braces+  \item et complète. 
-```latex+\end{enumerate} 
 +\end{document} 
 +</latexdoc> 
 +</WRAP> 
 +<WRAP clear /> 
 + 
 +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ère, et donc de bien l'isoler des autres pour gérer par exemple des suspensions imbriquées
 + 
 +Tout comme dans la méthode basique, si 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 
 + 
 +<WRAP column 51ex> 
 +<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+</WRAP> 
-```latex+<WRAP column 30ex> 
 +<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> 
 +</WRAP> 
 +<WRAP clear /> 
 + 
 +===== Avec l'extension “expdlist” ===== 
 + 
 +L'extension [[ctanpkg>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 : 
 + 
 +<WRAP column 51ex> 
 +<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> 
 +</WRAP> 
 +<WRAP column 30ex> 
 +<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> 
 +</WRAP> 
 +<WRAP clear /> 
 + 
 +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]]dans ses versions récentes, vous permettra également d'interrompre et de reprendre des listes 
 + 
 +<WRAP column 51ex> 
 +<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 +</WRAP> 
-facilities of [`enumitem`](https://ctan.org/pkg/enumitem).+<WRAP column 30ex> 
 +<latexdoc> 
 +\documentclass{article} 
 +  \usepackage{enumitem
 +  \pagestyle{empty}
  
-[`Expdlist`](https://ctan.org/pkg/Expdlist) has a neat way of providing for comments, with its +\begin{document} 
-`\listpart` command.  The command's argument becomes a comment +Cette liste est :
-between items of the list: +
-```latex+
 \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> 
 +</WRAP> 
 +<WRAP clear />
  
-[`Enumitem`](https://ctan.org/pkg/Enumitem) also allows multi-level suspension and resumption +Cette approche semble tout aussi naturelle que celle de [[ctanpkg>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]] permet également la suspension à plusieurs niveaux et la reprise des listes 
 + 
 +<WRAP column 51ex> 
 +<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 +</WRAP> 
-hardly satisfactory.+<WRAP column 30ex> 
 +<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> 
 +</WRAP> 
 +<WRAP clear /> 
 + 
 +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 principale, ce 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.1528031464.txt.gz · Dernière modification : 2018/06/03 13:11 de samcarter
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0