Comment afficher toutes les entrées d’un fichier BIB ?#

Le travail de ou consiste à sélectionner uniquement les entrées de votre base de données bibliographique (fichier BIB) citées dans votre document. Mais parfois, par exemple pour lire et corriger votre base de données, vous voulez faire le contraire : obtenir un document avec tout le contenu de la base.

1.  Avec les commandes de base#

Vous pouvez alors utiliser la commande \nocite avec une étoile pour argument :

\nocite{*}

Ainsi, toutes les références de chaque fichier BIB listé dans votre déclaration de fichier bibliographie (avec \bibliography pour ou \addbibresource avec ) seront affichées. Voici un exemple avec

% Un fichier .bib créé par le document avec l'environnement filecontents
\begin{filecontents}[nosearch,overwrite]{mabiblio.bib}
  @book{mittelbach_latex_2005,
    title = "{\LaTeX} Companion",
    author = "Mittelbach, Frank and Goossens, Michel and Braams, Johannes
              and Carlisle, David and Rowley, Chris and Detig, Christine
              and Schrod, Joachim",
    publisher = "Pearson Education",
    edition = "2\textsuperscript{e} édition",
    year = "2005"
  }
  @book{knuth_texbook_1986,
    author = "Knuth, Donald Ervin",
    title = "The {\TeX book}",
    publisher = "Addison-Wesley",
    year = "1986"
  }
\end{filecontents}

% Le document LaTeX
\documentclass[french]{article}
  \usepackage[T1]{fontenc}    % Encodage T1 (adapté au français)
  \usepackage{lmodern}        % Caractères plus lisibles
  \usepackage{babel}          % Réglages linguistiques (avec french)
  \pagestyle{empty}           % N'affiche pas de numéro de page

\begin{document}
Sans rentrer dans le détail des ouvrages, nous vous renvoyons 
à notre bibliographie pour plus d'information.
\nocite{*}
\bibliographystyle{plain-fr}
\bibliography{mabiblio}
\end{document}

Si le style bibliographique ne trie pas les entrées, celles-ci seront incluses dans leur ordre d’apparition dans le fichier BIB. De cette façon,

  • si \nocite{*} est placée au début du document, les entrées de la bibliographie seront dans l’ordre du fichier BIB ;

  • si cette commande est placée à la fin du document, les entrées qui n’étaient pas citées par ailleurs sont ajoutées après les entrées citées dans le document.

Notez que ne produit pas d’avertissement Citation ... undefined ou There were undefined references quand ils arrivent à cause de \nocite{*}. Si vous exécutez et manuellement, cela ne vous posera aucun souci mais cela risque d’empêcher des scripts automatiques de déterminer si une nouvelle exécution de est nécessaire.

2.  Cas de bases volumineuses#

Avertissement

Ce qui suit a un caractère historique du fait de l’évolution des capacités de mémoire des ordinateurs rendant ces solutions peu utiles.

Avec une base de données bibliographique volumineuse, il peut arriver que utilisé avec \nocite{*}, sature la mémoire de la machine. Des extensions ont été développées pour contourner le problème :

  • biblist a été écrit pour être utilisé sous 2.09 mais semble encore fonctionner ;

  • listbib est plus moderne.

Ces deux extensions fournissent leurs propres fichiers de style bibliographique BST, ce qui permet de restituer chaque entrée de la bibliographie sous forme d’entrées plus détaillées intégrant en particulier la « clé unique ».