Citer une référence complète avec BibLaTeX

Dans ce billet, je vais vous donner la méthode pour pouvoir donner une référence complète (ou presque) à n’importe quel endroit d’un document (beamer par exemple), et ce grâce à BibLaTeX. BibLaTeX se veut être une réimplémentation et une fusion des outils de bibliographie fournis par LaTeX et BibTeX.

En ce qui concerne la façon de citer des références externes lors d’une présentation, il existe deux écoles : la première consiste à attendre la fin de la présentation pour lister l’ensemble des références. Chez la seconde, on donne à chaque citation la référence complète, ce qui permet donc de s’affranchir de la table des références en fin de présentation. C’est bien sûr les adeptes de cette dernière qui trouverons, je l’espère, intérêt à ce billet.

Exemple

Pour vous figurer le résultat cherché :
Exemple d'utilisation de BibLaTeX

Packages requis

Il vous faudra bien sûr charger le package biblatex, mais aussi csquote (qui permettra une mise en forme correcte des guillemets) :

\usepackage{csquotes}
\usepackage[bibstyle=authoryear,
            style=authoryear,
            backend=bibtex]{biblatex}

L’option style, vous vous en doutez, donnera le style de biblio, de la même manière qu’avec BibTeX. L’option bibstyle ne traite que du style des références. L’option backend indique quel compilateur sera utilisé pour la biblio, nous utiliserons ici bibtex (voir plus bas).

Utilisation

La structure ne change pas par rapport à BibTeX, donc vous retrouverez toutes les commandes habituelles, et votre .bib reste le même. Déjà une bonne nouvelle.

Chargement du .bib

Dans le préambule :

\bibliography{Biblio.bib}

Commandes de base

La commande tant convoitée est donc la suivante : \fullcite{}
Une autre commande utile est celle qui permet de mettre les références dans une note en bas de page : \footfullcite{}

Personnalisation de la commande fullcite

En l’état, si vous utilisez cette commande, alors la totalité des champs renseignés dans votre .bib seront affichés, y compris le DOI, l’ISBN, les notes etc. Je vous conseille donc de vous affranchir de ces informations surnuméraires :

\usepackage[doi=false,
            isbn=false,
            url=false,
            bibstyle=authoryear,
            style=authoryear,
            backend=bibtex]{biblatex}

Malgré cela, il se peut que vous trouviez encore BibLaTeX un peu trop gourmand en place. On peut donc être plus restrictif encore :

\AtEveryCitekey{\clearfield{title}
                \clearfield{note}
                \clearfield{pages}
                \clearlist{location}
                \clearlist{publisher}
                \clearname{editor}}

Affichage des références

La commande \printbibliography à l’endroit où vous souhaitez la voir apparaitre suffira.

Notes en bas de frame (et non en bas de block)

La commande \footfullcite est simplement une fusion des commandes \fullcite et \footnote. Par défaut, dans un block, les notes restent dans le block. Si vous souhaitez les sortir en bas de frame, alors je vous conseille l’astuce suivante (qui marche dans la plupart des cas) :

\renewcommand{\footfullcite}[1]{footnote[frame]{\fullcite{#1}}}

Sachez toutefois que les notes en bas de pages sont peu compatibles avec les overlays.

Choix du séparateur entre les références

Petit bonus : si vous êtes insatisfaits du séparateur entre les références. Exemple si vous voulez une référence par ligne :

\renewcommand*{\multicitedelim}{\\}

Pour résumer

Voici donc un exemple minimal qui regroupe toutes les notions évoquées ci-dessus :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
\documentclass[svgnames,smaller]{beamer}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}		% Fontes modernes pour Adobe. Recommandé
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
 
\usepackage{csquotes}
\usepackage[doi=false,isbn=false,note=false,url=false,bibstyle=authoryear,style=authoryear,backend=bibtex]{biblatex}
 
\AtEveryCitekey{\clearfield{title}\clearfield{note}\clearfield{pages}\clearlist{location}\clearlist{publisher}\clearname{editor}}
\bibliography{Biblio.bib}
\renewcommand*{\multicitedelim}{\\}
 
\renewcommand{\footfullcite}[1]{\footnote[frame]{\fullcite{#1}}}
\def\bibfont{\tiny}			% Réduit la taille de la police dans les références biblio
 
\beamertemplatenavigationsymbolsempty	% vire le menu de navigation, qui va nous lourder sinon.
 
\begin{document}
	\begin{frame}
		\begin{block}{Exemple minimal dans un bloc}
			Exemple de citation simple\footfullcite{Auteur1} et de citation multiple\footfullcite{Auteur2,Auteur3}
		\end{block}
	\end{frame}
	\begin{frame}
		\printbibliography
	\end{frame}
\end{document}

Compilation

Comme je l’ai dit plus haut, vous ne serez pas dépaysé. Pour rappel, cela donne donc :

pdflatex document.tex
bibtex document
pdflatex document.tex
pdflatex document.tex

Installation de BibLaTeX sous Linux

Si l’installation est automatique sur MikTeX, elle l’est moins sous TeX Live. Elle se fait en fait en installant avec votre gestionnaire de paquet préféré le paquet « biber ».

Pour aller plus loin

Je vous conseille la lecture de la fiche de Bébert sur BibLaTeX. Vous trouverez aussi la documentation complète sur le TeX Catalogue de Jussieu.

 

Bonne compilation !