Comment gérer plusieurs bibliographies?
Il est possible d'avoir plusieurs environnements
thebibliography
dans un document. La méthode « sans BibTeX » fonctionne donc sans aucun problème.
Par contre, lorsqu'on utilise BibTeX, on ne peut, par défaut, utiliser qu'une
seule fois la commande bibliography
, puisqu'il n'y a qu'un fichier
.aux
. Il existe cependant des
packages permettant de contourner cette limitation, qui vont donc s'efforcer
de créer différents fichiers .aux
.
\label{chapterbib} Le package chapterbib permet
d'avoir une bibliographie pour chaque fichier inclus par la commande
include
. Il est possible d'avoir, en plus, une bibliographie
globale pour le document.
La documentation de ce package est donnée à la fin du package lui-même.
\label{bibunits} Le package bibunits permet également
de créer plusieurs petites bibliographies séparées. Lesdites
bibliographies peuvent être faites par chapitre, par section ou plus
généralement dans un environnement
bibunit
.
\documentclass{report} \usepackage[latin1]{inputenc} \usepackage[T1]{fontenc} \usepackage{bibunits} \begin{document} \bibliographyunit[\chapter] \bibliographystyle{plain} \bibliography{geometrie,algorithmes} \chapter{Algorithmes.} Présentation d'algorithmes. \nocite{*} \putbib[algorithmes] \chapter{Géométrie.} Texte sur la géométrie. \nocite{*} \putbib[geometrie] \end{document}
La compilation de cet exemple va entraîner la création de plusieurs
fichiers .aux
, qu'il faudra ensuite passer à \BibTeX.
\label{multibib} Le package multibib est quelque peu
complémentaire aux précédents : il permet de découper \og~la~\fg{}
bibliographie en plusieurs bibliographies différentes. Si par exemple,
dans un document, on veut séparer les livres cités des articles cités
et créer deux listes distinctes, ce package est notre ami. Voici un
exemple rapide :
\documentclass{report} \usepackage[latin1]{inputenc} \usepackage[T1]{fontenc} \usepackage{multibib} \begin{document} \newcites{alg}{Bibliographies "algorithmes"} \newcites{geo}{Bibliographie "géométrie"} \chapter{Algorithmes.} Présentation d'algorithmes. \citealg{toto} \nocitealg{*} \chapter{Géométrie.} Texte sur la géométrie. \citegeo{titi} \bibliographystylealg{plain} \bibliographyalg{algo} %% charge algo.bib \bibliographystylegeo{alpha} \bibliographygeo{geometrie} %% charge geometrie.bib \end{document}
\label{bibtopic} Les packages bibtopic et
placeins permettent aussi de découper la bibliographie en
différentes sections. L'exemple qui suit montre la séparation entre
une bibliographie papier et une bibliographie \emph{Web}. La commande
btPrintAll
est l'équivalent de nocite*
, elle permet de
citer toutes les références du fichier bib
.
\documentclass{report} \usepackage[latin1]{inputenc} \usepackage[T1]{fontenc} \usepackage[above,section]{placeins} \usepackage{bibtopic} \begin{document} \chapter{Bibliographie} \begin{btSect}[plain]{biblio} \section{Références bibliographiques} \btPrintAll \end{btSect} \begin{btSect}[plain]{webiblio} \section{Références Internet} \btPrintAll \end{btSect} \end{document}