J'ai composé à l'aide du package verse une anthologie poétique assez longue. J'aimerais obtenir un index des titres, du type Comme les titres sont déjà utilisés pour composer la table des matières (grâce à la commande Ouvrir dans l'éditeur Overleaf
\documentclass[12 pt, a5paper, twoside, french]{scrartcl} \usepackage[utf8x]{inputenc} \usepackage[T1]{fontenc} \usepackage[light, oldstyle, largesmallcaps]{kpfonts} \usepackage{microtype} % Environnement de poésie \usepackage{verse} %% Sections non numérotées \renewcommand{\poemtoc}{subsection} \addtocounter{secnumdepth}{-3} \usepackage{babel} \begin{document} \section{Jacques Prévert} \begin{verse} \poemtitle{Le Voyage malaisé} Le coucou ne dit pas l'heure\\ le corbeau ne dit pas l'année\\ l'horloger est un receleur\\ Le temps volé il le revend ailleurs\\ mais ne dit pas où c'est. \end{verse} \tableofcontents \end{document} Posée 30 Nov '17, 13:41 Pathe ♦♦ |
voici une solution. Il faut ajouter Ouvrir dans l'éditeur Overleaf
\usepackage{etoolbox} \usepackage{xstring} \noexpandarg \usepackage[xindy]{imakeidx} \makeindex[columns=1, options=-L french -C utf8] On aura besoin de sauvegarder le titre de section d'une commande Ouvrir dans l'éditeur Overleaf
\pretocmd{\@sect}{\expandafter\ifx\csname c@#1\endcsname\c@section\def\mtsectiontitle{#7}\fi}{}{} Vous pouvez remplacer On redéfinie la commande Ouvrir dans l'éditeur Overleaf
\patchcmd{\@vsptitle}{\@afterheading}% {\renewcommand*{\do}[1]{% \IfBeginWith{#1}{##1}{\StrBehind{#1}{##1}[\mtarticle]}{}% }% \docsvlist{Un ,un ,Une ,une ,Le ,le ,La ,la ,Les ,les ,Des ,des ,L',l'}% \ifx\mtarticle\undefined \index{#1\protect\dotfill\mtsectiontitle}% \else \index{\mtarticle\protect\dotfill\mtsectiontitle}% \let\mtarticle\undefined% \fi \@afterheading}{}{} et de même, vous pouvez remplacer ECM À compiler avec les commandes :
Ouvrir dans l'éditeur Overleaf
\documentclass[french]{article} \usepackage{lmodern} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{babel} %------------------------------------ \usepackage{verse} \renewcommand{\poemtoc}{subsection} \addtocounter{secnumdepth}{-3} %------------------------------------ \usepackage{etoolbox} \usepackage{xstring} \noexpandarg \makeatletter \pretocmd{\@sect}{\expandafter\ifx\csname c@#1\endcsname\c@section\def\mtsectiontitle{#7}\fi}{}{} \patchcmd{\@vsptitle}{\@afterheading}% {\renewcommand*{\do}[1]{% \IfBeginWith{#1}{##1}{\StrBehind{#1}{##1}[\mtarticle]}{}% }% \docsvlist{Un ,un ,Une ,une ,Le ,le ,La ,la ,Les ,les ,Des ,des ,L',l'}% \ifx\mtarticle\undefined \index{#1\protect\dotfill\mtsectiontitle}% \else \index{\mtarticle\protect\dotfill\mtsectiontitle}% \let\mtarticle\undefined% \fi \@afterheading}{}{} \makeatother \usepackage[xindy]{imakeidx} \makeindex[columns=1, options=-L french -C utf8] \begin{document} \section{Section foo} \begin{verse} \poemtitle{Le nuage} Le nuage dit à l'indien :\\ « Tire sur moi tes flèches,\\ Je ne sentirai rien. » « C'est vrai, rien ne t'ébrèche,\\ Répond le sauvage,\\ Mais vois mes tatouages !\\ Rien de pareil sur les nuages. » \end{verse} \begin{verse} \poemtitle{Le Voyage malaisé} Le coucou ne dit pas l'heure\\ le corbeau ne dit pas l'année\\ l'horloger est un receleur\\ Le temps volé il le revend ailleurs\\ mais ne dit pas où c'est. \end{verse} \section{Section bar} \begin{verse} \poemtitle[Sans faute]{Sans faute (Codicille)} C'est ma faute\\ c'est ma faute\\ c'est ma très grande faute d'orthographe\\ voilà comment j'écris\\ giraffe. J'ai eu tort d'avoir écrit cela autrefois\\ je n'avais pas à me culpabiliser\\ je n'avais fait aucune phaute d'orthografe\\ j'avais simplement écrit giraffe en anglais. \end{verse} \tableofcontents \printindex \end{document} Remarque avec l'option Publiée 02 Déc '17, 11:53 touhami |