Pour l’utilisateur final, typiquement un scientifique rédigeant un article en LaTeX, BibTeX est un outil logiciel transparent permettant d’oublier les détails de la gestion effective des citations et de la bibliographie du document en cours de création. Finies les bibliographies incomplètes ou contenant des entrées non citées, ou de style approximatif. Lors de la compilation du document LaTeX, l’outil BibTeX cherche dans la base bibliographique (une liste de fichiers ASCII contenant des fiches bibliographiques au format BibTeX) les références citées et les ajoute, en les adaptant au style associé à l’article, à la bibliographie. De la même manière que LaTeX calcule et met à jour les valeurs des champs des références croisées, des numéros de pages, de figures, de sections et établit éventuellement la table des matières …, BibTeX gère aussi la substitution des champs de citation bibliographique dans le corps du texte. Les citations manquantes sont évidemment indiquées. Le seul effort de l’auteur est de se souvenir des clefs des articles qu’il cite dans son document via la simple commande \cite{clef}.
BibTeX est aussi un format ouvert et extensible de fiches bibliographiques et un outil de gestion de base bibliographique (une collection de fiches dans un ou plusieurs fichiers).
Les fichiers BibTeX contenant les fiches bibliographiques sont en ASCII, modifiables par tout éditeur de texte (par exemple: Vim] - http://www.projet-plume.org/fiche/vim (X)Emacs, Kedit, …).
Il existe de nombreux filtres d’entrée et de sortie (conversion) entre le format BibTeX et d’autres formats bibliographiques, dont EndNote, CiteMed, DublinCore XML, …
Il faut cependant voir que la conversion peut être sérieusement limitée par la non-bijectivité entre les formats (des champs dans certains formats n’existent pas dans d’autres, ou bien sont distribués dans plusieurs champs).
Pour compiler complètement un document en LaTeX avec calcul de toutes les valeurs variables, il faut trois passes du compilateur. BibTeX s’insère simplement entre la première et la seconde passe, tout comme le générateur d’index makeindex, d’ailleurs. Bien évidemment, il faut indiquer dans le document maître en LaTeX que l’on va faire générer automatiquement la bibliographie via BibTeX en donnant la liste des fichiers bibliographiques et le nom du fichier de style bibliographique.
BibTeX est un outil logiciel très largement utilisé pour la préparation automatique de la bibliographie pour des articles, des thèses, des notes scientifiques. Il permet d’extraire un sous-ensemble de références bibliographiques d’une ou de plusieurs bases (qui sont en fait de simples fichiers ASCII dans un format trivial) pour faire deux actions simultanées dans un fichier LaTeX en cours de compilation :
La plupart des journaux scientifiques travaillant avec LaTeX, soit indiquent un style bibliographique générique (une poignée est présente dans une distribution LaTeX de base), soit proposent un style bibliographique adapté (il en existe des centaines).
BibTeX est hautement recommandé pour les étudiants de thèse qui gèrent plusieurs centaines de références, corollairement, ils pourront recycler trivialement ces références pour les articles associés à cette thèse. L’idéal est de commencer à collecter les fiches bibliographiques au fur et à mesure de la recherche bibliographique, en n’hésitant pas à ajouter des commentaires, des liens Web, … dans les fiches.
Via la commande \nocite{*}, il est trivial de générer, pour l’ensemble des entrées d’une base ou de plusieurs bases, une sortie de l’ensemble formatée (dvi, ps, pdf, HTML, …) avec un style donné. Les doublons peuvent être gérés. Ceci peut être utile dans plusieurs contextes, dont la mise en ligne de bases, la préparation de liste de publication d’un chercheur ou d’un laboratoire …
La principale limitation pour les utilisateurs occasionnels de BibTeX semble être de bien comprendre le mécanisme de génération du fichier “bbl” et, dans le cadre de la rédaction d’un article à plusieurs, d’utiliser les bons moyens pour échanger avec les collègues sans forcer à l’usage de BibTeX …
Il s’agit là non pas d’une limitation de BibTex en lui-même mais des efforts acceptables par un ensemble de personnes, le maillon le moins curieux limitant l’usage de l’ensemble.
En mode avancé, une des carences de BibTeX semble bien être le choix de la dizaine de type de fiches pré-existants (dont le traitement est connu par la plupart des styles des grands journaux scientifiques). On citera : @article, @proceeding, @book, @inproceeding … Autant ceci convient très bien pour la plupart des utilisateurs, autant cela peut être bloquant pour certains usages. Par exemple, il sera délicat de gérer une base bibliographique d’un laboratoire avec les catégories nécessaires pour un quadriennal CNRS ou Université sans certaines précautions : BibTeX n’a aucun moyen pour séparer les articles des journaux à referee des autres articles, ni les articles en Français de ceux en Anglais. Quelques “clefs” supplémentaires et quelques filtres à l’aide d’outils connexes (bibtool …) permettent de contourner ceci sans trop de problème.
On peut mettre en commun certains champs (plusieurs articles d’une même conférence) via un mécanisme de références croisées (cross-ref). Quoique intellectuellement judicieux, je ne recommande pas l’usage extensif de ces cross-references pour des grosses bases à fichiers multiples et qui seraient scriptées.
Commentaires
Autres fiches/documents dans PLUME
Les fiches avec mot-clé TeX :
http://www.projet-plume.org/faceted_search/results...
Avec le mot clé bibliographie :
http://www.projet-plume.org/fonctionnalites-princi...