Historique des modifications [retour]
cliquez ici pour masquer/afficher la révision 6
mineure

19 Aoû '17, 02:50

Pathe's gravatar image

Pathe
7.6k49209252

Créer un glossaire ou une liste ordonnée

Ceci est une compilation réalisée à partir des différentes réponses qui ont été apportées à deux de mes questions, qui n'en étaient finalement qu'une seule : il s'agissait de réaliser un répertoire de mots et d'expressions, mais ma demande originelle était passablement confuse. À cela s'ajoute les difficultés liées à TeXShop pour créer un glossaire. Le mieux est d'en passer par TeXmaker ou TeXstudio, mais des débrouillards ont apporté des réponses intéressantes qu'on trouvera plus bas. <br/> 1. Réalisation d'une liste dont les items s'ordonnent automatiquement ---------------------------------------- <br/> *<h3>Réponse apportée par @Nikopol et @Pathe</h3>* <br/> D'après cette [discussion sur tex.se][2]. Edit : suite à le demande de @fred02840, le code est modifié pour se comporter comme l'environnement description. J'ai fait en sorte que les : soient ajoutés automatiquement (on devient fainéant en utilisant LaTeX). Si ce n'est pas souhaité, il suffit de les retirer de la ligne 8 du code (en gras). \documentclass{article} \usepackage[utf8]{inputenc} \usepackage{xspace} \usepackage{enumitem} \usepackage{datatool} \newcommand{\sortitem}[2][]{% \DTLnewrow{list}% **\DTLnewdbentry{list}{description}{\textbf{#1~:\xspace}\xspace#2}%** } \newenvironment{sortedlist}{% \DTLifdbexists{list}{\DTLcleardb{list}}{\DTLnewdb{list}}% }% {% \DTLsort{description}{list}% Sort list \begin{description}[labelindent=-0.5em]% \DTLforeach*{list}{\theDesc=description}{% \item\theDesc}% Print each item \end{description}} \begin{document} \parindent=0pt Classique : \begin{description} \item[Vélo :] sorte de bicyclette \item[Bicyclette :] sorte de vélo. \item[Cycliste :] çui-là qui roule à vélo ou à bicyclette \end{description} Avec le nouvel environnement \begin{sortedlist} \sortitem[Vélo]{sorte de bicyclette} \sortitem[Bicyclette] { sorte de vélo.} \sortitem[Cycliste]{ çui-là qui roule à vélo ou à bicyclette} \end{sortedlist} \end{document} <br/> ---------- <br/> *<h3>Réponse apportée par Denis*</h3> <br/> Si la liste figure hors du flot du texte, il est possible de la faire ordonner alphabétiquement en faisant un glossaire. En voici un exemple à compiler avec `pdflatex` puis `makeglossaries` puis `pdflatex` : \documentclass[french]{article} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{lmodern} \usepackage{babel} % Le package `glossaries' est l'un de ceux qui doivent exceptionnellement être % chargés après `babel' (et même après `hyperref') \usepackage[xindy]{glossaries} % Commande responsable de la création du glossaire et du classement alphabétique % des termes \makeglossaries % Style du glossaire \setglossarystyle{listgroup} % Définition des termes du glossaire : \newglossaryentry{rpc} { name={réaction physico-chimique}, description={blabla} } \newglossaryentry{pores} { name={pores}, description={blabla} } \newglossaryentry{microbes} { name={microbes}, description={blabla} } \newglossaryentry{phc} { name={phosphate de calcium}, description={blabla} } \newglossaryentry{proteines} { name={protéines}, description={blabla} } % \begin{document} Bla bla \gls{proteines} bla bla. Bla bla \gls{phc} bla bla. Bla bla \gls{rpc} bla bla. Bla bla \gls{microbes} bla bla. Bla bla \gls{pores} bla bla. \printglossary[title=Ma belle liste] % Sans « title = ... », le titre serait « Glossaire » \end{document} [Plus de détails sur les glossaires par exemple ici][3]. <br/> *<h3>Réponse apportée par @denis le perfectionniste et @sim*</h3> <br/> \documentclass{article} \usepackage{enumitem} \begin{document} \begin{enumerate}[label=(\alph*)] \item Réaction physico-chimique. blabla. \item Pores. blabla. \item Microbes. blabla. \item Phosphate de calcium. blabla. \item Protéines. blabla. \end{enumerate} \begin{enumerate}[label=(\Alph*)] \item Réaction physico-chimique. blabla. \item Pores. blabla. \item Microbes. blabla. \item Phosphate de calcium. blabla. \item Protéines. blabla. \end{enumerate} \begin{enumerate}[label=(\roman*)] \item Réaction physico-chimique. blabla. \item Pores. blabla. \item Microbes. blabla. \item Phosphate de calcium. blabla. \item Protéines. blabla. \end{enumerate} \begin{enumerate}[label=(\alph*)] \item Réaction physico-chimique. blabla. \item Pores. blabla. \item Microbes. blabla. \item Phosphate de calcium. blabla. \item Protéines. blabla. \end{enumerate} \end{document} <br/> 2. Composition avec TeXShop (limites) ---------------------------------------- <br/> Trouvé une solution ([sur tex.exchange][4]) pour le problème de composition avec TeXShop, mais pas entièrement satisfaisante. Si cela peut aider : - ouvrir le dossier `~/Bibliothèque/TeXShop/Engines` (à faire apparaître avec un outil comme Onyx, par ex.). S'y trouvent les programmes de composition (ex. : `LuaLaTeX.engine`) dans le dossier Inactive (~/Bibliothèque/TeXShop/Engines/Inactive), - repérer pdflatexmk.engine (il y était déjà, mais je l'ai remplacé), et le glisser dans le dossier Engines pour l'activer ; - on ferme le tout, et on relance TeXShop. On retrouve pdflatexmk dans le menu déroulant de composition (en haut, à gauche de la fenêtre) ; - une seule compilation avec pdflatexmk suffit, mais on n'obtient pas de liste, comme avec TeXmaker ou TeXstudio… <br/> 3. Obtenir un glossaire satisfaisant avec TeXmaker ---------------------------------------- <br/> Avec TeXmaker, le glossaire obtenu est sous la forme d'un répertoire tel que je l'imaginais, et j'ai supprimé les références aux pages (le texte préalable ne me sert en fait à rien : si on peut l'éliminer, ce serait encore mieux). Il convient de configurer l'outil de compilation : - dérouler le menu `Utilisateur - Commandes Utilisateur - Éditer Commandes Utilisateur`. Dans `Item menu`, indiquer`makeglossaries`; - en-dessous, dans Commande, saisir makeglossaries % ; - valider. On voit que la commande 1 (à gauche de la fenêtre ouverte) porte le mot « makeglossaries » - une fois le fichier complété (ne surtout pas utiliser de caractères spéciaux pour les entrées de glossaire), il suffit d'utiliser `Compilation rapide`, puis `makeglossaries`, et enfin `Compilation rapide` pour obtenir une sortie pdf. [1]: http://texnique.fr/osqa/users/52/nikopol [2]: https://tex.stackexchange.com/questions/121489/alphabetically-display-the-items-in-itemize [3]: http://gte.univ-littoral.fr/members/dbitouze/pub/latex/diapositives-cours-d/conference-n-7/downloadFile/file/en-ligne7.pdf [4]: https://tex.stackexchange.com/a/127791
cliquez ici pour masquer/afficher la révision 5

18 Aoû '17, 22:44

fred02840's gravatar image

fred02840
4.2k31165189

Créer un glossaire ou une liste ordonnée

Ceci est une compilation réalisée à partir des différentes réponses qui ont été apportées à deux de mes questions, qui n'en étaient finalement qu'une seule : il s'agissait de réaliser un répertoire de mots et d'expressions, mais ma demande originelle était passablement confuse. À cela s'ajoute les difficultés liées à TeXShop pour créer un glossaire. Le mieux est d'en passer par TeXmaker ou TeXstudio, mais des débrouillards ont apporté des réponses intéressantes qu'on trouvera plus bas. <br/> 1. Réalisation d'une liste dont les items s'ordonnent automatiquement ---------------------------------------- <br/> *<h3>Réponse apportée par @Nikopol et @Pathe</h3>* <br/> D'après cette [discussion sur tex.se][2]. Edit : suite à le demande de @fred02840, le code est modifié pour se comporter comme l'environnement description. J'ai fait en sorte que les : soient ajoutés automatiquement (on devient fainéant en utilisant LaTeX). Si ce n'est pas souhaité, il suffit de les retirer de la ligne 8 du code (en gras). \documentclass{article} \usepackage[utf8]{inputenc} \usepackage{xspace} \usepackage{enumitem} \usepackage{datatool} \newcommand{\sortitem}[2][]{% \DTLnewrow{list}% **\DTLnewdbentry{list}{description}{\textbf{#1~:\xspace}\xspace#2}%** } \newenvironment{sortedlist}{% \DTLifdbexists{list}{\DTLcleardb{list}}{\DTLnewdb{list}}% }% {% \DTLsort{description}{list}% Sort list \begin{description}[labelindent=-0.5em]% \DTLforeach*{list}{\theDesc=description}{% \item\theDesc}% Print each item \end{description}} \begin{document} \parindent=0pt Classique : \begin{description} \item[Vélo :] sorte de bicyclette \item[Bicyclette :] sorte de vélo. \item[Cycliste :] çui-là qui roule à vélo ou à bicyclette \end{description} Avec le nouvel environnement \begin{sortedlist} \sortitem[Vélo]{sorte de bicyclette} \sortitem[Bicyclette] { sorte de vélo.} \sortitem[Cycliste]{ çui-là qui roule à vélo ou à bicyclette} \end{sortedlist} \end{document} <br/> ---------- <br/> *<h3>Réponse apportée par Denis*</h3> <br/> Si la liste figure hors du flot du texte, il est possible de la faire ordonner alphabétiquement en faisant un glossaire. En voici un exemple à compiler avec `pdflatex` puis `makeglossaries` puis `pdflatex` : \documentclass[french]{article} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{lmodern} \usepackage{babel} % Le package `glossaries' est l'un de ceux qui doivent exceptionnellement être % chargés après `babel' (et même après `hyperref') \usepackage[xindy]{glossaries} % Commande responsable de la création du glossaire et du classement alphabétique % des termes \makeglossaries % Style du glossaire \setglossarystyle{listgroup} % Définition des termes du glossaire : \newglossaryentry{rpc} { name={réaction physico-chimique}, description={blabla} } \newglossaryentry{pores} { name={pores}, description={blabla} } \newglossaryentry{microbes} { name={microbes}, description={blabla} } \newglossaryentry{phc} { name={phosphate de calcium}, description={blabla} } \newglossaryentry{proteines} { name={protéines}, description={blabla} } % \begin{document} Bla bla \gls{proteines} bla bla. Bla bla \gls{phc} bla bla. Bla bla \gls{rpc} bla bla. Bla bla \gls{microbes} bla bla. Bla bla \gls{pores} bla bla. \printglossary[title=Ma belle liste] % Sans « title = ... », le titre serait « Glossaire » \end{document} [Plus de détails sur les glossaires par exemple ici][3]. <br/> *<h3>Réponse apportée par @denis le perfectionniste et @sim*</h3> <br/> \documentclass{article} \usepackage{enumitem} \begin{document} \begin{enumerate}[label=(\alph*)] \item Réaction physico-chimique. blabla. \item Pores. blabla. \item Microbes. blabla. \item Phosphate de calcium. blabla. \item Protéines. blabla. \end{enumerate} \begin{enumerate}[label=(\Alph*)] \item Réaction physico-chimique. blabla. \item Pores. blabla. \item Microbes. blabla. \item Phosphate de calcium. blabla. \item Protéines. blabla. \end{enumerate} \begin{enumerate}[label=(\roman*)] \item Réaction physico-chimique. blabla. \item Pores. blabla. \item Microbes. blabla. \item Phosphate de calcium. blabla. \item Protéines. blabla. \end{enumerate} \begin{enumerate}[label=(\alph*)] \item Réaction physico-chimique. blabla. \item Pores. blabla. \item Microbes. blabla. \item Phosphate de calcium. blabla. \item Protéines. blabla. \end{enumerate} \end{document} <br/> 2. Composition avec TeXShop (limites) ---------------------------------------- <br/> Trouvé une solution ([sur tex.exchange][4]) pour le problème de composition avec TeXShop, mais pas entièrement satisfaisante. Si cela peut aider : - ouvrir le dossier `~/Bibliothèque/TeXShop/Engines` (à faire apparaître avec un outil comme Onyx, par ex.). S'y trouvent les programmes de composition (ex. : `LuaLaTeX.engine`) dans le dossier Inactive (~/Bibliothèque/TeXShop/Engines/Inactive), - repérer pdflatexmk.engine (il y était déjà, mais je l'ai remplacé), et le glisser dans le dossier Engines pour l'activer ; - on ferme le tout, et on relance TeXShop. On retrouve pdflatexmk dans le menu déroulant de composition (en haut, à gauche de la fenêtre) ; - une seule compilation avec pdflatexmk suffit, mais on n'obtient pas de liste, comme avec TeXmaker ou TeXstudio… <br/> 3. Obtenir un glossaire satisfaisant avec TeXmaker ---------------------------------------- <br/> Avec TeXmaker, le glossaire obtenu est sous la forme d'un répertoire tel que je l'imaginais, et j'ai supprimé les références aux pages (le texte préalable ne me sert en fait à rien : si on peut l'éliminer, ce serait encore mieux). Po Il convient de configurer l'outil de compilation : - pour configurer la compilation, dérouler le menu `Utilisateur - Commandes Utilisateur - Éditer Commandes Utilisateur`. Dans `Item menu`, indiquer`makeglossaries`; - en-dessous, dans Commande, saisir makeglossaries % ; - valider. On voit que la commande 1 (à gauche de la fenêtre ouverte) porte le mot « makeglossaries » - une fois le fichier complété (ne surtout pas utiliser de caractères spéciaux pour les entrées de glossaire), il suffit d'utiliser `Compilation rapide`, puis `makeglossaries`, et enfin `Compilation rapide` pour obtenir une sortie pdf. [1]: http://texnique.fr/osqa/users/52/nikopol [2]: https://tex.stackexchange.com/questions/121489/alphabetically-display-the-items-in-itemize [3]: http://gte.univ-littoral.fr/members/dbitouze/pub/latex/diapositives-cours-d/conference-n-7/downloadFile/file/en-ligne7.pdf [4]: https://tex.stackexchange.com/a/127791
cliquez ici pour masquer/afficher la révision 4

18 Aoû '17, 22:39

fred02840's gravatar image

fred02840
4.2k31165189

cliquez ici pour masquer/afficher la révision 3

18 Aoû '17, 22:35

fred02840's gravatar image

fred02840
4.2k31165189

cliquez ici pour masquer/afficher la révision 2

18 Aoû '17, 22:24

fred02840's gravatar image

fred02840
4.2k31165189

cliquez ici pour masquer/afficher la révision 1

18 Aoû '17, 17:03

fred02840's gravatar image

fred02840
4.2k31165189