Prochaine révision | Révision précédente |
composition:annexes:index:commandes_de_base [2002/03/03 18:10] – créée markey | 3_composition:annexes:index:commandes_de_base [2022/11/29 19:45] (Version actuelle) – Usage de ⟨...⟩ dbitouze |
---|
\question{Quelles sont les commandes de base ?} %16.1 | ====== Comment générer un index? ====== |
| |
\reponse Il y a principalement trois commandes : | Par défaut, un index s'obtient en utilisant l'extension [[ctanpkg>makeidx]] et des programmes de traitement d'index. L'extension définit en particulier la précieuse commande ''\printindex'' décrite ci-dessous et redéfinit quelques commandes présentes dans <latex>\LaTeX</latex>. |
\begin{itemize} | |
\item \cmd{makeindex} à mettre dans le préambule pour indiquer que | |
l'on souhaite créer un index. Elle indique à \LaTeX{} qu'il doit | |
stocker, dans un fichier \fichier{.idx}, les entrées de l'index. Sans | |
cette commande, l'index sera vide ; | |
\item \cmd{index}\marg{mot} permet d'ajouter l'entrée \emph{mot} dans | |
l'index ; | |
\item \cmd{printindex} écrit l'index dans le document, à l'endroit où | |
cette commande est placée. Cette commande à principalement pour rôle | |
d'inclure le fichier \fichier{.ind} contenant l'index. | |
\end{itemize} | |
| |
La mise en forme et le tri de l'index se font par le programme | ===== Les commandes à placer dans le document ===== |
\texttt{makeindex}, qui lit le fichier \fichier{.idx} et le transforme | |
en \fichier{.ind}. Il est possible d'indiquer le fichier de style | |
d'index (fichier \fichier{.ist}) par l'option \texttt{-s}. | |
| |
On exécutera donc, par exemple : | Dans les faits, pour générer un index, trois commandes sont nécessaires : |
| * ''\makeindex'' à mettre dans le préambule pour indiquer à <latex>\LaTeX</latex> qu'il doit stocker, dans un fichier ''.idx'', les entrées de l'index. Sans cette commande, l'index sera vide ; |
| * ''\index{⟨mot⟩}'' permet d'ajouter l'entrée ⟨mot⟩ dans l'index. Elle se trouve donc à de multiples reprises dans le corps du texte et permet, par le biais de certains symboles d'obtenir des effets particuliers (voir ici les questions « [[3_composition/annexes/index/changer_le_style_de_certains_mots_indexes|Comment changer le style de certains mots indexés ?]] », « [[3_composition/annexes/index/changer_le_style_des_pages_de_reference|Comment changer le style d'un numéro de page de référence ?]] » et « [[3_composition/annexes/index/construire_un_index_hierarchique|Comment construire un index hiérarchique ?]] ») ; |
| * ''\printindex'' place l'index dans le document à l'endroit où cette commande est disposée. Cette commande a principalement pour rôle d'inclure le fichier ''.ind'' contenant l'index trié. |
| |
\begin{noexemple} | Voici un exemple minimaliste de cette utilisation : |
makeindex -s fridx1.ist mondoc.idx | <code latex> |
\end{noexemple} | \documentclass{article} |
| \usepackage[french]{babel} |
| \usepackage{makeidx} |
| \makeindex |
| \begin{document} |
| |
pour créer l'index du fichier \fichier{mondoc.tex}. | Il ne se passe pas un jour\index{jour} sans que je pense à cette mélodie\index{mélodie}. |
| |
Remarque : certains packages définissent la commande \cmd{printindex}, | \printindex |
mais elle n'est pas définie par défaut dans \LaTeX. Il peut donc être | |
nécessaire d'inclure le package \pack{makeidx}. | |
| |
| \end{document} |
| </code> |
| |
\endinput | ===== L'appel à un programme de génération d'index ===== |
| |
| Le fichier ''.idx'' contient vos entrées d'index (avec leur numéro de page) telles qu'elles arrivent au fur et à mesure dans votre document. Elles sont dès lors sans mise en forme et non triées. La résolution de ces deux problèmes passe par l'utilisation d'un des programmes évoqués à la question « [[3_composition/annexes/index/generateurs_d_index|Quels sont les programmes générateurs d'index ?]] ». Ces programmes lisent le fichier ''.idx'' et le transforment en ''.ind'' qui contient vos entrées ordonnées mises en forme. |
| |
| Voici le cas du programme ''makeindex''. Pour créer l'index de votre fichier ''mondoc.tex'', vous exécuteriez (après avoir compilé votre document <latex>\LaTeX</latex> une première fois) : |
| |
| <code bash> |
| makeindex mondoc.idx |
| </code> |
| |
| C'est lors d'une compilation consécutive de votre document ''mondoc.tex'' que vous pourrez observer l'index. |
| |
| Dans le cas de ''makeindex'', il est possible d'indiquer un fichier de style d'index (fichier ''.ist'') par l'option ''-s''. Dans le cas où vous disposeriez d'un fichier de style ''monstyle.ist'', vous exécuteriez : |
| |
| <code bash> |
| makeindex -s monstyle.ist mondoc.idx |
| </code> |
| |
| {{htmlmetatags>metatag-keywords=(LaTeX,index) |
| metatag-og:title=(Comment générer un index) |
| metatag-og:site_name=(FAQ LaTeX francophone) |
| }} |