Le mpg-blog

LaTeX et autres geekeries

Biblatex 0.9 est sorti

with 4 comments

La version 0.9 de biblatex, la nouvelle façon de gérer ses bibliographies sous LaTeX, est sortie le 14 février, et a été intégrée à TeX Live le lendemain. Ceux qui connaissent déjà biblatex et la raison pour laquelle il n’était pas inclus dans TeX Live s’en réjouiront ; pour les autres, voici quelques explications.

C’est quoi ce biblatex, d’abord ?

C’est, en principe, la solution à tous les problèmes de bibliographie qui se posent en utilisant bibtex avec LaTeX et les paquets LaTeX existants. Par exemple, il n’est pas possible seulement avec LaTeX d’obtenir une bibliographie par chapitre, ou bien des bibliographies par sujet, de faire apparaître le bibliographie dans la table des matières et/ou les marques-pages PDF, l’internationalisation laisse à désirer. Différentes extensions existent qui fournissent chacune une de ces fonctionnalités, mais elles ne coopèrent pas forcément bien entre elle, il faut choisir laquelle utiliser, s’adapter à une demi-douzaine d’interfaces différentes…

Par ailleurs, il n’est pas commode de personnaliser le style de la bibliographie elle-même (cela se fait en éditant des fichiers de styles bibtex, ceux avec l’extension bst, qui sont écrit dans un langage de pile propre à bibtex, qu’il faut se donner la peine d’apprendre alors que notre document est bien sûr à rendre pour hier), ni celui de citation (en particulier si on a des souhaits « exotiques » comme de placer les références en notes de bas de page).

Le but de biblatex est de proposer des solutions à tous ces problèmes par le biais d’une unique extension (ce qui élimine les problèmes de compatibilité et ne fait qu’une documentation à lire, même s’il faut bien reconnaître que celle-ci fait presque 200 pages). Surtout, bibtex n’est plus utilisé que pour l’extraction des entrée à partir de la base de données et leur classement, tous les styles sont ensuite construits en LaTeX, ce qui fait un langage de moins à apprendre pour ceux qui souhaitent personnaliser les styles de citation et de bibliographie.

De nombreux styles couvrant les besoins les plus courants sont fournis, et d’autres styles plus spécialisés ont déjà été produits par d’autres auteurs, voir le répertoire biblatex-contrib du CTAN.

Super, mais en pratique je fais comment ?

En pratique, je n’entends pas expliquer en quelques lignes toutes les fonctionnalités de biblatex, mais voici un exemple tiré d’un de mes documents personnels, qui doit pouvoir servir de base pour démarrer.

\usepackage{csquotes}           % utilisé par biblatex
\usepackage[style=alphabetic,   % citations comme [Fa91] pour Faltings, 91
  sorting=nyt,                  % classement par nom, année, titre
  sortcites=true,               % classer les citations multiples
  autopunct=true,               % gérer automatiquement les ponctuations
  babel=hyphen,                 % ajuster les césure pour chaque entrée
  hyperref=true,                % les liens hypertexte, c'est le Bien
  backref=false]{biblatex}      % pas de réfs. aux pages où l'entrée est citée
\bibliography{these}            % utiliser these.bib (format bibtex normal)
\defbibheading{bibempty}{}      % voir ci-dessous

Ça, c’était dans le préambule, à la place de la commande \bibliographystyle qui n’est désormais plus utilisée (c’est l’option style qui la remplace ici. Maintenant, dans le document, imaginons que je souhaite que la bibliographie soit une section à part entière (numérotée et tout le tintouin) et que de plus je veuille insérer des commentaires entre le titre « références » et la bibliographie elle-même. Rien de plus simple : je demande à biblatex de ne pas insérer de titre, et je fais tout moi-même. Pour ça, j’ai préalablement défini un style d’entête de bibliographie, avec \defbibheading, qu’on pourrait appeler le style trivial : il ne fait rien (voir ci-dessus).

\section{Références}
 
Du blabla ici parce que je suis bavard. Si j'étais un utilitaire Unix\dots en
fait je serais pas un utilitaire Unix, parce que vraiment je suis trop verbeux.
 
\printbibliography[heading=bibempty] % utilisons le style d'entête vide

Remarquez qu’on utilise \printbibliography, et qu’on a pas besoin de préciser le fichier bib utilisé, puisqu’on l’a déjà fait dans le préambule. Si vous voulez voir le résultat (document complet), il est ici.

Pour aller plus loin, je renvoie à la documentation de biblatex (texdoc biblatex pour la trouver). Elle est longue, mais le premier paragraphe de l’introduction indique les sections à lire en priorité. Par ailleurs, de nombreux exemples sont fournis (vous les trouverez sous TEXMFDIST/doc/latex/biblatex/examples).

Sympa, mais alors pourquoi c’était pas encore dans TeX Live ?

On s’en doute, le développement d’un projet aussi ambitieux prend du temps. Au cours de ce processus, l’auteur est susceptible de vouloir opérer des changements qui briseront la compatibilité avec les versions préliminaires précédentes, et doit pouvoir le faire sans pression de la part des utilisateurs s’il souhaite arriver à une version 1.0 de qualité. C’est pourquoi l’auteur de biblatex avait expressément demandé aux distributions TeX de ne pas inclure biblatex, dans l’espoir d’éviter une croissance prématurée de sa base d’utilisateurs.

Cependant, de nombreux utilisateurs plus avancés ou téméraires avaient commencé à utiliser biblatex en production et en étaient très satisfaits. Tout le monde était donc impatient de voir une première version distribuable de biblatex : c’est maintenant fait.

Notons toutefois que cette version 0.9 n’est pas encore considérée comme stable : pas dans le sens où elle serait pleine de bugs, mais plutôt dans le sens que la rétro-compatibilité des versions ultérieures ne sera garantie qu’à partir de la version 1.0.

Written by mpg

février 20th, 2010 at 1:08

Posted in TeX et compagnie

Tagged with ,

4 Responses to 'Biblatex 0.9 est sorti'

  1. J’ai adopté BibLaTeX depuis quelques mois déjà et je me réjouis qu’il soit désormais incorporé à TeX Live.

    Le seul problème que j’ai eu avec lui est qu’il ne dispose pas (apparemment) d’un style équivalent au style standard « abbrv » de BibTeX. J’ai parcouru le manuel, mais je n’y ai rien remarqué d’approchant. Ai-je mal lu ?

    Franck Pastor

    23 fév 10 at 19:46

  2. Hum… l’option firstinits peut-être ?

    mpg

    24 fév 10 at 18:46

  3. Bonjour, J’ai adopté biblatex pour écrire une thèse de science humaine. Il gère très bien les citations en bas de page (avec « style=verbose-trad2″), mais il y a un bug. Dans les citations d’article où j’indique le numéro de page, ça le no de page est ajouté à à l’intervalle des pages. ex: Thomas Carothers. “The End of the Transition Paradigm”. Dans Journal of Democracy (jan. 2002), p. 5–21, p. 43.

    AU lieu de Thomas Carothers. “The End of the Transition Paradigm”. Dans Journal of Democracy (jan. 2002), p. 43.

    C’est très inélégant. J’ai le même problème avec les livres. Lorsque j’inscris le nombre de pages « Pagetotal », je ne peux plus citer le numéro de page parce que ça donne des résultats bizarres du genre.

    Joel Beinin. Workers and peasants in the modern Midd le East. Cambridge : Cambridge University Press, 2001, 207p., p. 34.

    Savez-vous comment je pourrais régler mon problème?

    Merci! PS J’aimerais aussi me débarraser du mot « Dans », mais ça c’est moins grave.

    Jean Lachapelle

    8 avr 10 at 23:21

  4. Bon, je vois qu’entre-temps vous avez posé cette question sur fctt, et vous avez bien fait, puisque Denis a pu vous apporter des éléments de réponse plus rapidement que moi !

    mpg

    10 avr 10 at 11:05