Vérifier citations et références dans un article LaTeX
Vérifier dans les deux sens : citations du corps et base .bib
Une citation dont la clé manque du .bib peut produire Citation 'key' undefined et [?] dans le PDF. Le cas inverse est plus discret : une entrée jamais citée reste normalement hors de la bibliographie sans avertissement.
Ici, la base contient deux livres mais le fichier principal n’en cite qu’un :
@book{knuth1984, author = {Donald E. Knuth}, title = {The TeXbook}, publisher = {Addison-Wesley}, year = {1984}}@book{lamport1994, author = {Leslie Lamport}, title = {LaTeX: A Document Preparation System}, edition = {2}, publisher = {Addison-Wesley}, year = {1994}}\documentclass[a4paper,11pt]{article}\usepackage[T1]{fontenc}\usepackage{lmodern}\usepackage[french]{babel}\usepackage[backend=biber]{biblatex}\addbibresource{refs.bib}\begin{document}\cite{knuth1984}\printbibliography\end{document}Identifier une clé non résolue dans le journal
Dans Citation 'kingma2015' on page 3 undefined, la page désigne la citation dans le corps, pas un emplacement du .bib. Recherchez la clé dans la base et vérifiez :
- Orthographe et casse exactes. La clé de citation et celle de la base doivent être identiques.
- Chargement de la base. biblatex utilise
\addbibresource{refs.bib}; BibTeX traditionnel utilise\bibliography{refs}. Un mauvais nom de fichier peut affecter toutes les citations. - Citation éventuellement commentée.
% \cite{...}se trouve par recherche textuelle mais ne crée pas de citation.
Une citation non résolue peut aussi venir d’un traitement bibliographique incomplet. Dans EasyLaTeX, recompilez et attendez la tâche entière. Si elle reste non résolue, examinez les erreurs bibliographiques du journal.
Trouver les entrées de base jamais citées
Il n’y a généralement aucun avertissement dans ce sens. Énumérez les clés du .bib et recherchez chacune dans le corps. Une entrée inutilisée peut correspondre à une citation oubliée ou à une ancienne notice ; décidez du cas.
Dans une copie du projet, \nocite{key} teste une entrée et \nocite{*} affiche toutes les notices. Garder ce dernier dans le manuscrit final empêche la bibliographie de refléter quelles entrées sont réellement citées.
Vérifier les champs selon le type d’entrée
Les champs manquants produisent souvent des blancs ou un résultat dépendant du style plutôt qu’un arrêt de LaTeX. Les outils bibliographiques peuvent les signaler.
| Type | Champs couramment vérifiés | Symptôme possible |
|---|---|---|
@article | author, title, journal, year ; volume et pages si pertinents | Détails de publication incomplets |
@inproceedings | author, title, booktitle, year | Titre des actes absent |
@book | author, title, publisher, year | Informations d’éditeur incomplètes |
@misc / @online | author ou organization, title, year/date, URL | Informations web manquantes ; les dates de consultation exigent aussi un champ et un style adaptés |
Un champ mal écrit comme journals au lieu de journal peut être ignoré comme un champ absent. Vérifiez ceux réellement utilisés par votre système et votre style.
Retirer les restrictions de chapitre avant le contrôle final
Avec \includeonly, les chapitres exclus ne sont pas traités dans la passe courante. Leurs citations dépendent des informations auxiliaires disponibles et peuvent manquer de la liste produite. \input n’est pas limité par \includeonly. Retirez les restrictions et compilez tout avant de comparer citations et entrées bibliographiques.
Messages courants
| Message | Cause | Action |
|---|---|---|
Citation 'x' undefined | Clé absente ou différente, ou base non chargée | Rechercher dans .bib et vérifier son nom |
There were undefined references. | Renvois non résolus ou traitement incomplet | Attendre la tâche entière, puis examiner les clés |
Please (re)run Biber on the file: main | Traitement bibliographique à actualiser | Recompiler sur la plateforme et examiner le traitement |
I didn't find a database entry for "x" | BibTeX ne trouve pas la notice | Vérifier clé et base chargée |
empty year in x | Champ de publication manquant | Le compléter ; la notice peut malgré tout s’afficher |
À lire aussi : gérer un grand projet et dépanner la compilation.
À retenir
- Vérifiez séparément notices manquantes et notices inutilisées.
- Le journal ne repère pas toutes les entrées non citées.
- Utilisez
\nocite{*}pour inspecter une copie, pas comme preuve d’exhaustivité des citations. - Effectuez une compilation complète après les aperçus par chapitre.
Gardez refs.bib dans le projet EasyLaTeX et compilez le bon fichier principal.