Ajout de logiciels/latex/makeindex.tml
This commit is contained in:
parent
c781fa2faa
commit
6da9d18981
9 changed files with 308 additions and 0 deletions
7
logiciels/latex/exemple.idx
Normal file
7
logiciels/latex/exemple.idx
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
\indexentry{Bourgogne@\textsc{Bourgogne}, Louis de France, duc de}{1}
|
||||||
|
\indexentry{Princes etrangers@Princes \'etrangers}{1}
|
||||||
|
\indexentry{Rohan@\textsc{Rohan}, duc de}{1}
|
||||||
|
\indexentry{Ducs et pairs}{1}
|
||||||
|
\indexentry{Bouillon|see{Princes \'etrangers}}{1}
|
||||||
|
\indexentry{Ceremonies@C\'er\'emonies, service des!registres}{1}
|
||||||
|
\indexentry{Ceremonies@C\'er\'emonies, service des}{1}
|
6
logiciels/latex/exemple.ilg
Normal file
6
logiciels/latex/exemple.ilg
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
This is makeindex, version 2.13 [07-Mar-1997] (using kpathsea).
|
||||||
|
Scanning input file exemple.idx....done (7 entries accepted, 0 rejected).
|
||||||
|
Sorting entries....done (23 comparisons).
|
||||||
|
Generating output file exemple.ind....done (23 lines written, 0 warnings).
|
||||||
|
Output written in exemple.ind.
|
||||||
|
Transcript written in exemple.ilg.
|
23
logiciels/latex/exemple.ind
Normal file
23
logiciels/latex/exemple.ind
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
\begin{theindex}
|
||||||
|
|
||||||
|
\item Bouillon, \see{Princes \'etrangers}{1}
|
||||||
|
\item \textsc{Bourgogne}, Louis de France, duc de, 1
|
||||||
|
|
||||||
|
\indexspace
|
||||||
|
|
||||||
|
\item C\'er\'emonies, service des, 1
|
||||||
|
\subitem registres, 1
|
||||||
|
|
||||||
|
\indexspace
|
||||||
|
|
||||||
|
\item Ducs et pairs, 1
|
||||||
|
|
||||||
|
\indexspace
|
||||||
|
|
||||||
|
\item Princes \'etrangers, 1
|
||||||
|
|
||||||
|
\indexspace
|
||||||
|
|
||||||
|
\item \textsc{Rohan}, duc de, 1
|
||||||
|
|
||||||
|
\end{theindex}
|
37
logiciels/latex/exemple.tex
Normal file
37
logiciels/latex/exemple.tex
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
\documentclass{article}
|
||||||
|
|
||||||
|
\usepackage[latin1]{inputenc}
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[francais]{babel}
|
||||||
|
\usepackage{makeidx}
|
||||||
|
|
||||||
|
\makeindex
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
% Tiré des Mémoires du duc de Luynes, Paris, Firmin-Didot 1863, t.I.
|
||||||
|
|
||||||
|
À la mort de M. le duc de
|
||||||
|
Bourgogne\index{Bourgogne@\textsc{Bourgogne}, Louis de France, duc
|
||||||
|
de}, lorsqu'il fut question d'aller jeter de l'eau bénite, le feu Roi
|
||||||
|
décida que si les princes lorrains\index{Princes etrangers@Princes
|
||||||
|
étrangers} s'y presenteroient, qu'eux ni les ducs n'en jetteroient ;
|
||||||
|
mais que si MM. de Rohan\index{Rohan@\textsc{Rohan}, duc de} et de
|
||||||
|
Bouillon y étoient, les ducs\index{Ducs et pairs} jetteroient de l'eau
|
||||||
|
bénite avant eux : ce qui arriva effectivement ; mais MM. de Rohan et
|
||||||
|
de Bouillon\index{Bouillon|see{Princes étrangers}}, voyant les ducs
|
||||||
|
passer avant eux, s'en allèrent. Ce qui avoit été décidé en faveur de
|
||||||
|
MM. les ducs fut écrit sur le registre\index{Ceremonies@Cérémonies,
|
||||||
|
service des!registres} de M. de Dreux\index{Ceremonies@Cérémonies,
|
||||||
|
service des} ; mais deux ans après, les représentations de Mme de
|
||||||
|
Maintenon déterminèrent le Roi à faire un changement et à ordonner à
|
||||||
|
M. de Dreux que cet article seroit rayé sur le registre. Il fut mis en
|
||||||
|
marge que le Roi n'avoit jamais voulu décider entre les ducs et MM. de
|
||||||
|
Rohan et de Bouillon.
|
||||||
|
|
||||||
|
\printindex
|
||||||
|
|
||||||
|
\end{document}
|
||||||
|
|
||||||
|
|
||||||
|
|
17
logiciels/latex/exemple.txt
Normal file
17
logiciels/latex/exemple.txt
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
|
||||||
|
|
||||||
|
% Tiré des Mémoires du duc de Luynes, Paris, Firmin-Didot 1863, t.I.
|
||||||
|
|
||||||
|
À la mort de M. le duc de Bourgogne, lorsqu'il fut question d'aller
|
||||||
|
jeter de l'eau bénite, le feu Roi décida que si les princes lorrains
|
||||||
|
s'y presenteroient, qu'eux ni les ducs n'en jetteroient ; mais que si
|
||||||
|
MM. de Rohan et de Bouillon y étoient, les ducs jetteroient de l'eau
|
||||||
|
bénite avant eux : ce qui arriva effectivement ; mais MM. de Rohan et
|
||||||
|
de Bouillon, voyant les ducs passer avant eux, s'en allèrent. Ce qui
|
||||||
|
avoit été décidé en faveur de MM. les ducs fut écrit sur le registre
|
||||||
|
de M. de Dreux ; mais deux ans après, les représentations de Mme de
|
||||||
|
Maintenon déterminèrent le Roi à faire un changement et à ordonner à
|
||||||
|
M. de Dreux que cet article seroit rayé sur le registre. Il fut mis en
|
||||||
|
marge que le Roi n'avoit jamais voulu décider entre les ducs et MM. de
|
||||||
|
Rohan et de Bouillon.
|
||||||
|
|
BIN
logiciels/latex/index.jpg
Normal file
BIN
logiciels/latex/index.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.8 KiB |
218
logiciels/latex/makeindex.tml
Normal file
218
logiciels/latex/makeindex.tml
Normal file
|
@ -0,0 +1,218 @@
|
||||||
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
|
<!DOCTYPE html
|
||||||
|
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
|
||||||
|
"tuteurs://DTD/tml.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Index</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h1>Faire un index avec MakeIndex</h1>
|
||||||
|
|
||||||
|
<p>Vous disposez d'un fichier tex qui contient votre maîtrise, votre
|
||||||
|
autobiographie, ce que vous voulez. Pour faciliter la vie du lecteur de
|
||||||
|
votre document final, vous désirez indexer les termes clefs de votre
|
||||||
|
texte. Le package MakeIndex vous permet de créer un index. Tout au long
|
||||||
|
de ce cours nous allons utiliser un petit texte d'exemple, tiré des
|
||||||
|
<em>Mémoires</em> du duc de Luynes (vous pouvez le télécharger :
|
||||||
|
<a href="exemple.txt">exemple.txt</a>) :</p>
|
||||||
|
|
||||||
|
<pre>À la mort de M. le duc de Bourgogne, lorsqu'il fut question d'aller
|
||||||
|
jeter de l'eau bénite, le feu Roi décida que si les princes lorrains s'y
|
||||||
|
presenteroient, qu'eux ni les ducs n'en jetteroient ; mais que si MM. de
|
||||||
|
Rohan et de Bouillon y étoient, les ducs jetteroient de l'eau bénite
|
||||||
|
avant eux : ce qui arriva effectivement ; mais MM. de Rohan et de
|
||||||
|
Bouillon, voyant les ducs passer avant eux, s'en allèrent. Ce qui avoit
|
||||||
|
été décidé en faveur de MM. les ducs fut écrit sur le registre de M. de
|
||||||
|
Dreux ; mais deux ans après, les représentations de Mme de Maintenon
|
||||||
|
déterminèrent le Roi à faire un changement et à ordonner à M. de Dreux
|
||||||
|
que cet article seroit rayé sur le registre. Il fut mis en marge que le
|
||||||
|
Roi n'avoit jamais voulu décider entre les ducs et MM. de Rohan et de
|
||||||
|
Bouillon.</pre>
|
||||||
|
|
||||||
|
<h2>Avant toute chose</h2>
|
||||||
|
|
||||||
|
<p>Commencez par indiquer dans le préambule de votre document que vous
|
||||||
|
voulez le charger (attention, il faut bien écrire makeidx et non
|
||||||
|
makeindex) :</p>
|
||||||
|
|
||||||
|
<pre>\usepackage{makeidx}</pre>
|
||||||
|
|
||||||
|
<p class="continue">Ensuite, dans la suite du préambule, mettez la
|
||||||
|
commande</p>
|
||||||
|
|
||||||
|
<pre>\makeindex</pre>
|
||||||
|
|
||||||
|
<p class="continue">qui demande à MakeIndex de se mettre au travail.
|
||||||
|
Enfin, placez la commande</p>
|
||||||
|
|
||||||
|
<pre>\printindex</pre>
|
||||||
|
|
||||||
|
<p class="continue">à l'endroit où vous désirez placer l'index (à la fin,
|
||||||
|
normalement).</p>
|
||||||
|
|
||||||
|
<h2>Les bases</h2>
|
||||||
|
|
||||||
|
<p>Pour obtenir une entrée dans l'index, il faut l'indiquer par la
|
||||||
|
commande <code>\index{mon_entree}</code>. Lors d'une première
|
||||||
|
compilation, LaTeX repérera tous les <code>\index</code> et écrira pour
|
||||||
|
chacun d'entre eux une entrée dans <a
|
||||||
|
href="exemple.idx"><code>exemple.idx</code></a>. Ensuite il faudra faire
|
||||||
|
une deuxième compilation à l'aide de la commande makeindex :</p>
|
||||||
|
|
||||||
|
<pre>makeindex exemple.idx</pre>
|
||||||
|
|
||||||
|
<p class="continue">MakeIndex interprétera les entrées de
|
||||||
|
<code>exemple.idx</code> et les formatera, générant deux nouveaux
|
||||||
|
fichier, <a href="exemple.ilg"><code>exemple.ilg</code></a> qui contient
|
||||||
|
les messages de compilation de MakeIndex, et <a
|
||||||
|
href="exemple.ind"><code>exemple.ind</code></a> qui contient l'index
|
||||||
|
formaté. Il faut ensuite une troisième compilation, avec latex, pour que
|
||||||
|
<code>exemple.ind</code> soit intégré à <code>exemple.tex</code> et
|
||||||
|
produise l'index.</p>
|
||||||
|
|
||||||
|
<div class="attention"><p>Il faut préciser à chaque fois à
|
||||||
|
<code>makeindex</code> ce que vous voulez indexer, il ne le fait pas
|
||||||
|
automatiquement. Pourquoi ? Bien sûr, voue préfereriez avoir à ne donner
|
||||||
|
le mot à indexer qu'une seule fois et laisser l'ordinateur faire le
|
||||||
|
reste, mais cette procédure manque de souplesse. Admettons que vous
|
||||||
|
vouliez créer une entrée d'index « Louis XIV ». Un indexage automatique
|
||||||
|
vous permettrait bien sûr de recenser toutes les occurrences de « Louis
|
||||||
|
XIV ». Mais vous aimeriez sans doute aussi recenser les pages ou vous
|
||||||
|
n'avez pas écrit textuellement « Louis XIV », mais où vous en avez
|
||||||
|
parlé sous les périphrases « le roi de France », « le monarque »,
|
||||||
|
etc... Ce que vous permet l'apposition à la main de commandes
|
||||||
|
<code>\index{Louis XIV}</code> après chaque mot ou expression que vous
|
||||||
|
voulez voir référencé.</p></div>
|
||||||
|
|
||||||
|
<h3>Récapitulatif</h3>
|
||||||
|
|
||||||
|
<p>Il faut en tout trois compilations pour que l'index soit effectif :</p>
|
||||||
|
<pre>latex exemple.tex ; makeindex exemple.idx ; latex exemple.tex</pre>
|
||||||
|
|
||||||
|
<h2>Spécifier les entrées de l'index</h2>
|
||||||
|
|
||||||
|
<p>La procédure de base est la suivante : vous voulez indexer, dans le texte
|
||||||
|
d'exemple, les ducs et pairs. Vous placez donc, après l'expression à
|
||||||
|
référencer, un <code>\index{}</code> :</p>
|
||||||
|
|
||||||
|
<pre>À la mort de M. le duc de Bourgogne, lorsqu'il fut question d'aller
|
||||||
|
jeter de l'eau bénite, le feu Roi décida que si les princes lorrains s'y
|
||||||
|
presenteroient, qu'eux ni les ducs\index{Ducs et pairs} n'en jetteroient
|
||||||
|
(...)</pre>
|
||||||
|
|
||||||
|
<div class="attention"> Prenez garde à l'environnement dans lequel vous
|
||||||
|
êtes ! Un <code>\index{Louis XIV}</code> dans du texte « normal » et
|
||||||
|
un <code>\index{Louis XIV}</code> dans dans une note en bas de page, ou
|
||||||
|
dans un tableau, ne produiront pas une entrée avec deux références, mais
|
||||||
|
deux entrées identiques ! Pour remédier à ce problème, il vous suffit de
|
||||||
|
placer votre <code>\index{}</code> juste avant ou juste après
|
||||||
|
l'environnement dans lequel se trouve l'expression à référencer.</div>
|
||||||
|
|
||||||
|
<h3>Caractères accentués</h3>
|
||||||
|
|
||||||
|
<p>MakeIndex n'a pas été conçu pour les langues possédant des accents :
|
||||||
|
dès qu'un mot contenant des caractères accentués se trouvera dans votre
|
||||||
|
<code>\index{}</code>, il le classera au début des mots commençant par
|
||||||
|
cette même lettre... Il vous faut donc indiquer vous-même à makeindex où
|
||||||
|
classer la référence : on utilise pour cela une arobase (@).</p>
|
||||||
|
|
||||||
|
<pre>\index{Princes etrangers@Princes étrangers}</pre>
|
||||||
|
|
||||||
|
<p class="continue">veut dire que vous demandez à MakeIndex de classer
|
||||||
|
« Princes étrangers » comme s'il n'y avait pas d'accent dans
|
||||||
|
l'expression.</p>
|
||||||
|
|
||||||
|
<p><strong>À noter :</strong> Vous pouvez utiliser cette technique pour
|
||||||
|
classer par exemple des membres d'une même famille dans l'ordre
|
||||||
|
chronologique, et non pas par ordre alphabétique de leur prénom :</p>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
\index{Guise1@Guise, Henri de Lorraine, duc de}
|
||||||
|
\index{Guise2@Guise, Charles de Lorraine, duc de}
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<p class="continue">Vous pouvez également l'utiliser pour formater à
|
||||||
|
votre goût l'aspect d'une entrée d'index. Ainsi,</p>
|
||||||
|
|
||||||
|
<pre>\index{Bourgogne@\textsc{Bourgogne}, Louis de France, duc de}</pre>
|
||||||
|
|
||||||
|
<p class="continue">vous permet d'avoir le nom de famille en petites
|
||||||
|
majuscules. Vous pouvez évidemment remplacer <code>\textsc{}</code> par
|
||||||
|
n'importe quel type de fonte (italique, gras, penché...).</p>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>Entrées et sous-entrées</h3>
|
||||||
|
|
||||||
|
<p>Pour produire une sous-entrée, vous devez d'abord indiquer l'entrée
|
||||||
|
principale puis la sous-entrée, séparée par un point d'exclamation.
|
||||||
|
Ainsi, si l'on reprend notre exemple, vous voulez faire du mot
|
||||||
|
« registres » une sous-entrée de « service des Cérémonies » :</p>
|
||||||
|
|
||||||
|
<pre>\index{Ceremonies@Cérémonies, service de!registres}</pre>
|
||||||
|
|
||||||
|
<p>Vous pouvez faire des sous-sous-entrées. MakeIndex et LaTeX ne
|
||||||
|
supportent que trois niveaux d'indexation : vous ne pouvez pas avoir de
|
||||||
|
sous-sous-sous-entrées.</p>
|
||||||
|
|
||||||
|
<h3>Références croisées</h3>
|
||||||
|
|
||||||
|
<p>MakeIndex vous permet de faire des références croisées, qui ne renvoient
|
||||||
|
pas à une page, mais à une autre entrée. Ainsi, dans notre exemple, on
|
||||||
|
veut que le lecteur qui cherche une entrée à Bouillon soit renvoyé à
|
||||||
|
« princes étrangers » :</p>
|
||||||
|
|
||||||
|
<pre> \index{Bouillon|see{Princes étrangers}}</pre>
|
||||||
|
|
||||||
|
<p class="continue">vous donnera :</p>
|
||||||
|
|
||||||
|
<pre>Bouillon, voir Princes étrangers</pre>
|
||||||
|
|
||||||
|
<p>La traduction de <code>|see{}</code> dépend du package de Babel que
|
||||||
|
vous utilisez.</p>
|
||||||
|
|
||||||
|
<h2>Formatage de l'index</h2>
|
||||||
|
|
||||||
|
<p>Par défaut, l'index ressemble à ceci (c'est le résultat de
|
||||||
|
<a href="exemple.tex"><code>exemple.tex</code></a>) :</p>
|
||||||
|
|
||||||
|
<div class="illustration"><img src="index.jpg" alt="Un index"/></div>
|
||||||
|
|
||||||
|
<p>Le texte s'étend sur deux colonnes. Si vous voulez modifier le
|
||||||
|
formatage de l'index, il vous faudra créer un fichier <code>.ist</code>
|
||||||
|
(<code>perso.ist</code>, par exemple) contenant vos personnalisations.
|
||||||
|
Pour utiliser ce fichier <code>.ist</code>, il faut le donner en option à
|
||||||
|
MakeIndex pendant la deuxième compilation :</p>
|
||||||
|
|
||||||
|
<pre>makeindex -s perso.ist exemple.idx</pre>
|
||||||
|
|
||||||
|
<h3>Ajouter une lettre entre chaque groupe</h3>
|
||||||
|
|
||||||
|
<p>Il faut insérer dans votre perso.ist les lignes suivantes :</p>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
heading_prefix "{\\bfseries\\hfil "
|
||||||
|
heading_suffix "\\hfil}\\nopagebreak\n"
|
||||||
|
headings_flag 1
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<div class="illustration"><img src="myhead.jpg" alt="C'est joli" /></div>
|
||||||
|
|
||||||
|
<h3>Ajouter des lignes de points</h3>
|
||||||
|
|
||||||
|
<p>Il faut insérer dans votre perso.ist les lignes suivantes :</p>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
delim_0 "\\dotfill"
|
||||||
|
delim_1 "\\dotfill"
|
||||||
|
delim_2 "\\dotfill"
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<div class="illustration"><img src="mylist.jpg" alt="Encore plus joli" /></div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="metainformation"> Auteurs : Marie-Lan Nguyen (2000).
|
||||||
|
Dernière modification le 2002-11-13 par François-Xavier Coudert. </div>
|
||||||
|
|
||||||
|
</body> </html>
|
BIN
logiciels/latex/myhead.jpg
Normal file
BIN
logiciels/latex/myhead.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.5 KiB |
BIN
logiciels/latex/mylist.jpg
Normal file
BIN
logiciels/latex/mylist.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.4 KiB |
Loading…
Reference in a new issue