:::: MENU ::::

Bibliographies et LaTeX – comment les organiser?

Technologie

Bibliographies et LaTeX – comment les organiser?

Vive LaTeX, vive la création avancée de documents et surtout vive les bibliographies créées automatiquement!

BibTeX est un outil indispensable pour ceux qui aiment écrire des papiers scientifiques (et non). Ce logiciel permet de faire le lien entre une base de données centralisée d’articles, extraits de conférences, livres, sites internet,… et les citations dans l’article qu’on est en train d’écrire. Chaque fois qu’on cite une source, BibTeX récupère toutes ses données bibliographiques et s’occupe de les écrire d’une façon très claire et précise dans notre document.

Les adeptes de la publication doivent gérer tout plein de sources et souvent on en arrive à un point tel qu’on ne sait plus où les mettre: soit on les classe par article dans un fichier .bib (la base de données de BibTex), soit on les met toutes ensemble dans un seul fichier. La première solution permet d’avoir des bases de données assez restreintes et pertinentes avec le contenu de l’article, mais elle rend difficile le recyclage pour d’autres papiers. La deuxième solution permet d’avoir une base de données unique, mais à la longue il sera impossible de savoir quel est son contenu.

Cet article explique comment gérer sa bibliographie et comment la visualiser dans un formati relativement joli…

Vive LaTeX, vive la création avancée de documents et surtout vive les bibliographies créées automatiquement!

BibTeX est un outil indispensable pour ceux qui aiment écrire des papiers scientifiques (et non). Ce logiciel permet de faire le lien entre une base de données centralisée d’articles, extraits de conférences, livres, sites internet,… et les citations dans l’article qu’on est en train d’écrire. Chaque fois qu’on cite une source, BibTeX récupère toutes ses données bibliographiques et s’occupe de les écrire d’une façon très claire et précise dans notre document.

Les adeptes de la publication doivent gérer tout plein de sources et souvent on en arrive à un point tel qu’on ne sait plus où les mettre: soit on les classe par article dans un fichier .bib (la base de données de BibTex), soit on les met toutes ensemble dans un seul fichier. La première solution permet d’avoir des bases de données assez restreintes et pertinentes avec le contenu de l’article, mais elle rend difficile le recyclage pour d’autres papiers. La deuxième solution permet d’avoir une base de données unique, mais à la longue il sera impossible de savoir quel est son contenu.

Les gestionnaires de biblio

Le format BibTeX est relativement strict et ne facilite pas la tâche de ceux qui veulent garder de l’ordre. Des outils de gestion des bases de données bibliographiques existent:

Ces logiciels permettent de d’éditer le contenu de la base de données de le trier, d’éliminer les doublons et parfois même de se connecter aux bases de données en ligne pour récupérer des nouvelles sources. Par contre, aucun logiciel (au moins les trois premiers) permet d’effectuer une revue des sources et d’y associer des commentaires.

Les styles BibTeX

Pour mon travail, j’ai décidé de partager ma bibliographie avec une collègue. L’avantage est que chacun fait la moitié du boulot de recherche de sources. Par contre il faut que l’on trouve une solution pour pouvoir partager également les notes prises en cours de lecture.
Voilà la solution: nous exploitons le champ « annote » disponible dans les champs prédéfinis de BibTeX pour y mettre nos commentaires. Ce champ n’est en général pas transcrit lorsque on utilise un style standard BibTeX lors de l’écriture de la bibliographie dans les articles. Ceci est un avantage, car nous pouvons y écrire tout ce qu’on veut, sans risquer de plainte pénale… 🙂
Il est par contre possible de créer son propre style BibTex pour exploiter ce champ caché. J’ai passé une demi-heure à chercher sur internet un tuto qui explique comment l’utiliser, en vain. Le livre « The LaTeX Companion » donne des indications, mais sans plus. Heureusement que l’outil de création des styles est assez explicite et aide l’utilisateur. Voici comment faire:

  • Se placer dans le dossier de destination où on veut créer le style
  • lancer le programme:
    latex makebst.tex
  • Suivre les instructions et répondre à toutes les questions. Accepter les annotations et les commandes LaTeX lorsque demandé.

Je joins mon fichier de style à ce post pour les paresseux 😉

Voilà, maintenant on a un style qui affiche ce qu’on veut.

Le paquet biblist

Le paquet biblist pour LaTeX permet de lister de toutes les sources contenues dans un (ou plusieurs) fichiers .bib. Ceci permet d’automatiser l’exportation vers un joli document pdf tout le contenu de notre bibliographie. L’association de ce paquet avec le style que nous venons de créer permet de personnaliser l’apparence du fichier pdf.

Un exemple pratique

On commence par créer un fichier .bib. Ci-dessous il y a un extrait montrant les possibilités d’utilisation du champ annote. On peut utiliser toutes les commandes de formatage LaTeX typiques.

@Book{latexCompanion,
  author       = {Frank Mittelbach, Michael Goossens},
  title        = {The \LaTeX Companion},
  publisher    = {Addison Wesley},
  year         = {2004},
  Annote       = {Ceci est le manuel officiel de \LaTeX. Il contient tout plein de choses, en particulier:
        \begin{itemize}
            \item La structure des fichiers \LaTeX
            \item Instruments de formatage basiques
            \item Tableaux
            \item Formules math\'ematiques
            \item \ldots
        \end{itemize}}
}

Ensuite on crée un fichier .tex (biblio_list.tex, par exemple) qui contient l’appel à biblist:

\documentclass[twoside]{article}   % ici je peux utiliser toutes les options de géométrie et langue
\usepackage[latin1]{inputenc}      % pour accepter les caractères accentués
\usepackage[T1]{fontenc}          
\usepackage{biblist}               % appel à biblist

\begin{document}
\bibliographystyle{bibdesc}        % choix du style de bibliographie, celui que je viens de créer
\footnotesize                      % on écrit en petit, pour pas prendre trop de place
\bibliography{biblio}              % Mon fichier de bibliographie s'appelle biblio.bib
\end{document}

Enfin, on lance la compilation. Il faut lancer d’abord latex (ou pdflatex, pour avoir un pdf à la sortie), puis bibtex et de nouveau latex (ou pdflatex):

pdflatex biblio_list
bibtex biblio_list
pdflatex biblio_list

Et voilà, notre bibliographie bien commentée est là!!


Désolé pour la qualité, mais jpeg ne fait pas de miracles… 🙁

Générer les keywords et faire du nettoyage

Pour les vrais paresseux (aka ce qui n’ont pas envie de faire boulot lorsque un programme sait le faire tout seul) pourront également exploiter l’outil bibtool pour générer automatiquement les keywords utilisés avec la commande \cite{} dans les documents LaTeX. En plus, ce petit bijou en profite pour vérifier les doublons et refaire la mise en page. Plus question de passer des heures à ajouter des tabulateurs pour faire en sorte que le fichier .bib soit un minimum présentable….
Voilà comment faire:
bibtool -r tex_def -r iso2tex -k biblio.bib -o output.bib

Donc:

  • -r tex_def est une option qui permet de prendre en compte des signes non-alphabétiques dans les chaînes de caractère. En gros, elle permet de reconnaître des commandes LaTeX.
  • -r iso2tex est une option qui permet de transformer tous les caractères ISO en commandes compatibles LaTeX. Là je pense par exemples aux caractères accentués, qui risquent de poser bien de problèmes lorsque on partage le fichier .bib entre utilisateurs Windows et Mac/Linux.
  • -k est l’option qui indique le type de génération de keywords. -K est aussi disponible. La première génère des keywords plus courts. (plus de détails disponibles ici)
  • biblio.bib est le fichier d’entrée
  • -o output.bib est le fichier de sortie

Voilà, il n’y a plus qu’à comparer l’entrée avec la sortie….

3 Comments

  1. Stefan

    Salut,

    Joli outil, ça :)….
    J’avais juste une question? Est-ce que ce serait possible
    d’inclure les « keywords » aussi?
    J’ai essayé avec makebst, mais ça ne figure pas dans
    les options….
    Y-a-t-il un moyen facil à implémenter?
    Car je ne m’y connais pas trop avec le code dans des fichiers .bst

    Merci d’avance,

    Stefan 😉

  2. Seth

    Bonjour,

    Tu n’as pas d’idée sur comment on pourrait créer des sous-structures dans sa bibliographie? Sous « Bibliography » dans ma thèse, j’aimerai séparer la littérature de mes interviews, sources non-publiés, etc. Mais je ne vois pas comment je peux obtenir ce genre de sous-structure…

    Merci, Seth

  3. profilien

    j’ai essayé de suivre l’exemple, mais emacs affiche « biblist.styl not found » – où trouver ce fichier ?
    Merci d’avance

Leave a comment

  • *