Chemin principal : Accueil > LaTeX > Index > Un index des sources primaires (2)

Autres chemins : (Aller directement au contenu de l'article)

Un index des sources primaires (2)

vendredi 14 janvier 2011, mise à jour mercredi 8 août 2012, par Maïeul
Suivre la vie du site RSS 2.0 Forum

Cet article est obsolète. Soit qu’il existe une manière plus « moderne » de procéder, soit que j’ai trouvé une autre méthode plus appropriée.
Voyez plutôt la nouvelle version : Un index des sources primaires (3).

Suite de mon précédent article sur la manière de faire un index des sources primaires en LaTex.

J’explique comment se servir du script Python que j’ai développé [1].

[Mise à jour : j’ai trouvé une solution bien meilleure. En conséquent, cette contribution est obsolète.]

Utilisation du script : installation des paquets Python

Il faut avoir Python installé sur son ordinateur. Il est livré en standard sous MacOs, et je pense dans la plupart des distributions Linux.

Pour Windows, c’est par là : http://www.python.org/download/windows/.

Il faut ensuite installer le paquet zbibtex.

Pour ce faire :

  • récupérer le fichier .gz, le décompresser.
  • avec la console de commande (le Terminal sous MacOs), se rendre dans le dossier correspondant.
  • taper python setup.py install, voire sudo python setup.py install pour avoir les droits d’administrateur.

Bien !

Utilisation du script : organisation du fichier .bib

Le script indexera avec comme entrée principale l’auteur, et comme entrée secondaire le titre.

Pour l’auteur, il prendra la valeur du champ userb et, à défaut, celle du champ author. Pour le titre, il prend le champ indextitle et, à défaut, le champ title.

Il faut installer le script .py à côté du fichier LaTex source. Ce script ne fonctionne, évidemment, que si vous avez mis en œuvre la première étape, l’étape LaTex, décrite dans mon article précédent.

Par ailleurs les clefs de référence bibliographique ne doivent contenir que des caractères alphanumériques : pas de signe de ponctuation, de tirer ou autre. Sinon cela fait planter le script ...

Enfin votre fichier doit être encodé en unicode, et utilisé les accents unicodes, et non pas les pseudo accents LaTex [2].

Utilisation du script : personnalisation des variables

Ouvrez le fichier avec un éditeur de texte. Vous trouverez les lignes suivantes.

  1. #### definition des constante
  2. modification = [('biblio.bib','principal.sox','principal.sod'),('biblio.bib','principal.sex','principal.sed')]

Télécharger

Chaque série entre parenthèses correspond à un index différent. La première valeur correspond au fichier .bib. La seconde au fichier produit par la première compilation de LaTex. La troisième à celui utilisé par la seconde compilation, et produit par la compilation avec MakeIndex.

Ainsi, si votre fichier père s’appelle main.tex, que votre fichier de bibliographie s’appelle bibliographie.bib, et que pour la déclaration des index vous avez mis dans votre en-tête latex :

  1. \usepackage{index}
  2. \newindex{sources}{pmx}{pmd}{Index des sources}
  3. \newindex{secondaires}{bix}{bid}{Index des études}

Télécharger

Il faudra que vous mettiez

  1. #### definition des constante
  2. modification = [('bibliographie.bib','main.pmx','main.pmd'),('bibliographie.bib','mainbix','main.bid')]

Télécharger

Ensuite, avec votre invite de commande, après la première compilation LaTex du fichier principal, faite :python index.py

Cela va lire les fichiers d’index, les modifier pour insérer une indexation correcte, puis les compiler avec MakeIndex. Inutile donc de compiler ensuite avec MakeIndex.

L’insertion sera de la forme : \textsc{Nom}, Prénoms (particule), suffixe!titre Important : en revanche, il sera nécessaire de passer par cette étape après chaque compilation LaTex du fichier principal. En effet, chaque compilation remplace le fichier auxiliaire.

Il vous reste ensuite à recompiler avec LaTex le fichier principal. Et voilà, vous obtiendrez un index des sources, trié par auteur puis par titre.

P.-S.

J’ai longtemps hésité : fallait-il classer dans la rubrique LaTex ou dans la rubrique Python ? Comme cela concernait un besoin LaTexien, j’ai choisi de mettre cela dans la rubrique LaTex.

Ce script est soumis à la même licence que l’ensemble du site, à savoir Creative Common, pas d’utilisation commerciale, paternité, partage des conditions initiales à l’identique.

Documents joints

Notes

[1Pour les Pythoniens, j’espère avoir mis assez de commentaires dans le fichier.

[2Dans BibDesk c’est une option à cocher dans les préférences

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici
  • Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

À propos

Titulaire d’un doctorat en théologie et d’un doctorat en histoire, sous la direction conjointe de Frédéric Amsler et d’Élisabeth_Malamut, je commence à partir du 1er août 2017 un travail d’édition critique des Actes de Barnabé.

Dans le cadre de la rédaction de mon mémoire de master puis de ma thèse de doctorat, j’ai été emmené à utiliser LaTeX, et j’ai donc décider de partager mes techniques. En effet, au cours de mes premiers apprentissages, j’ai découvert que les ressources indiquant les outils pour l’utilisation de LaTeX en sciences humaines étaient rares. Ceci m’a conduit à maintenir ou créer plusieurs packages LaTeX et à donner plusieurs formations.

Par ailleurs, je suis membre actif de la communauté SPIP, au sein de laquelle j’administre le site Spip-Contrib. Je propose sur ce site quelques notes sur SPIP, en général à destination de webmestre.

Il m’arrive également de faire un petit peu de Python, de temps en temps.

Enfin, je tiens un blog de réflexions politiques et religieuses.

Maïeul