natbib

natbib est le package de référence pour obtenir des citations auteur-année tout en continuant d’utiliser le BibTeX classique. Il réimplémente le \cite standard, en distinguant le \citet textuel qui se lit comme partie de la phrase (Jones et al. (1990)) du \citep parenthétique ((Jones et al., 1990)). Il gère les styles auteur-année comme numériques, et fournit les styles dédiés plainnat, abbrvnat et unsrtnat. Cette page couvre sa riche famille de commandes de citation avec exemples de sortie, les options qui changent parenthèses et séparateurs, et son rapport avec le biblatex plus récent.

Chargement et styles bibliographiques

Chargez natbib dans le préambule avec \usepackage{natbib}. Choisissez l’apparence de la liste de références avec \bibliographystyle, normalement l’un des styles propres à natbib : plainnat, abbrvnat ou unsrtnat. Ce sont les équivalents natbib des styles standard plain, abbrv et unsrt, et surtout ils fonctionnent en mode auteur-année comme en mode numérique. Les données bibliographiques vivent dans un fichier .bib, inclus avec \bibliography{filename}.

document.tex
\documentclass{article}
\usepackage{natbib}
\bibliographystyle{plainnat}
\begin{document}

The design of \TeX{} is described in detail by \citet{knuth1986}.
This result has been confirmed elsewhere \citep{lamport1994}.

\bibliography{refs}
\end{document}

Le flux de travail est le même qu’avec BibTeX simple. Lancez latex (ou pdflatex) → bibtexlatexlatex, c’est-à-dire LaTeX, puis BibTeX, puis LaTeX deux fois, et les citations comme la liste de références se résolvent. Pour les références japonaises, utilisez pbibtex / upbibtex à la place de bibtex. Voir la page BibTeX pour les détails.

Les deux commandes de base — \citet et \citep

natbib met en avant deux commandes : le \citet textuel et le \citep parenthétique. \citet{key} imprime le nom de l’auteur comme partie de la phrase et ne met que l’année entre parenthèses (Jones et al. (1990)), ce qui permet de l’utiliser comme sujet : « Jones et al. (1990) showed that… ». \citep{key} entoure l’ensemble de parenthèses ((Jones et al., 1990)), la forme que l’on ajoute en fin de phrase. Le \cite ordinaire se comporte comme \citet en mode auteur-année mais comme \citep en mode numérique ; avec natbib, il est donc plus sûr d’éviter \cite.

Les arguments optionnels ajoutent une note. Une seule note devient une note après citation : \citep[chap.~2]{key} imprime (Jones et al., 1990, chap. 2). Deux notes donnent une note avant et une note après : \citep[see][p.~5]{key} produit (see Jones et al., 1990, p. 5). Pour une note avant seulement, laissez la note après vide : \citep[see][]{key} donne (see Jones et al., 1990). Le ~ est une espace insécable qui évite une coupure.

latex
The algorithm is due to \citet{knuth1986}.
It runs in linear time \citep[Theorem~3]{knuth1986}.
See the discussion of line breaking \citep[see][chap.~2]{knuth1986}.
Similar ideas appear elsewhere \citep{knuth1986,lamport1994}.

La famille des commandes de citation

À partir de \citet / \citep, natbib fournit des variantes adaptées à chaque usage. Le tableau ci-dessous montre la sortie en mode auteur-année (la clé jon90 représente Jones, Baker et Williams, 1990). Les formes étoilées \citet* / \citep* impriment la liste complète des auteurs au lieu d’abréger avec « et al. », tandis que \citealt / \citealp impriment le même contenu sans parenthèses. \citeauthor donne seulement le nom de l’auteur, \citeyear seulement l’année, et \citeyearpar l’année entre parenthèses.

CommandeExemple de sortieUsage
\citet{jon90}Jones et al. (1990)Textuel ; auteur comme sujet
\citep{jon90}(Jones et al., 1990)Citation parenthétique
\citet*{jon90}Jones, Baker, and Williams (1990)Liste complète des auteurs (textuel)
\citep*{jon90}(Jones, Baker, and Williams, 1990)Liste complète des auteurs (parenthétique)
\citealt{jon90}Jones et al. 1990Sans parenthèses, textuel
\citealp{jon90}Jones et al., 1990Sans parenthèses ; contenu parenthétique seulement
\citeauthor{jon90}Jones et al.Nom d’auteur seulement
\citeauthor*{jon90}Jones, Baker, and WilliamsListe complète des auteurs seulement
\citeyear{jon90}1990Année seulement
\citeyearpar{jon90}(1990)Année entre parenthèses

\citealp est, comme son nom le suggère, \citep sans les parenthèses, et accepte aussi des notes : \citealp[chap.~2]{jon90} imprime Jones et al., 1990, chap. 2. Pour mélanger texte libre et citations à l’intérieur des parenthèses, \citetext{...} est pratique ; \citetext{priv.\ comm.} donne (priv. comm.). \citefullauthor{key} renvoie la liste complète des auteurs, comme \citeauthor*.

Majuscule en début de phrase — \Citet / \Citep

Lorsqu’un nom d’auteur comporte une particule von comme « van der » ou « della », \citet{dRob98} l’imprime en minuscules : della Robbia (1998). En début de phrase, il faut une majuscule ; natbib fournit donc des variantes capitalisées qui forcent la première lettre en majuscule. Utilisez les noms capitalisés \Citet, \Citep, \Citealt, \Citealp et \Citeauthor (des formes étoilées existent aussi).

CommandeExemple de sortie
\citet{dRob98}della Robbia (1998)— ordinaire (reste en minuscules)
\Citet{dRob98}Della Robbia (1998)— pour le début de phrase
\Citep{dRob98}(Della Robbia, 1998)
\Citealt{dRob98}Della Robbia 1998
\Citealp{dRob98}Della Robbia, 1998
\Citeauthor{dRob98}Della Robbia

Citations multiples et mode numérique

Vous pouvez citer plusieurs travaux à la fois, séparés par des virgules. En mode auteur-année, les entrées adjacentes du même auteur ne différant que par l’année sont fusionnées sans répéter le nom. \citep{jon90,jam91} donne (Jones et al., 1990; James et al. 1991), \citep{jon90,jon91} donne (Jones et al., 1990, 1991), et même auteur plus même année, \citep{jon90a,jon90b}, donne (Jones et al., 1990a,b).

Passer le même manuscrit à un style numérique ne demande aucune modification du corps avec natbib. Passez une option comme \usepackage[numbers]{natbib}, ou utilisez \setcitestyle{numbers}, et \citet / \citep basculent vers des numéros. En mode numérique, \citet{jon90} devient Jones et al. [21], \citep{jon90} devient [21], et \citep[chap.~2]{jon90} avec note devient [21, chap. 2]. Choisissez \usepackage[super]{natbib} pour des numéros en exposant comme dans Nature. Notez que les citations multiples dans \citet ne sont pas recommandées en mode numérique.

Options de parenthèses et de séparateurs

L’apparence des citations — type de parenthèses et séparateurs — peut être définie globalement comme options de package. Parenthèses : round (parenthèses rondes par défaut), square, curly, angle. Séparateur entre citations multiples : semicolon (par défaut) ou comma. Mode : authoryear (par défaut), numbers ou super. Il y a aussi sort pour ordonner les numéros selon la liste de références, sort&compress pour compresser les suites consécutives en intervalles (p. ex. 3–6, 15), et compress pour compresser sans trier.

latex
\usepackage[square,numbers,sort&compress]{natbib}

D’autres options incluent longnamesfirst, qui imprime la liste complète des auteurs seulement à la première citation de chaque œuvre, et sectionbib, qui (avec chapterbib) transforme la liste de références en \section*. L’option colon est identique à semicolon, vestige d’une erreur terminologique ancienne.

Pour changer le style après le chargement, utilisez \setcitestyle{...} (ajouté dans natbib 8) avec une liste de mots-clés séparés par des virgules. Mode : authoryear / numbers / super ; parenthèses : round / square ou open={(} et close={)} ; séparateur : semicolon / comma ou citesep={;} ; entre auteur et année aysep={,} ; entre années yysep={,} ; avant une note après citation notesep={, }. Vous pouvez donc affiner, par exemple avec \setcitestyle{square,aysep={},yysep={;}}.

L’ancien \bibpunct fait le même travail. Utilisé dans le préambule, il prend un argument optionnel plus six arguments obligatoires : dans l’ordre, parenthèse ouvrante, parenthèse fermante, séparateur entre citations multiples, mode (n pour numérique, s pour exposant, autre chose pour auteur-année), ponctuation entre auteur et année, puis ponctuation entre années lorsque l’auteur est partagé. Le défaut est \bibpunct{(}{)}{;}{a}{,}{,} (l’argument optionnel initial est le caractère avant une note après citation). Comme \setcitestyle est plus lisible, préférez-le pour les nouveaux documents.

natbib et biblatex

natbib a longtemps servi de pont entre le BibTeX classique et les citations auteur-année. Sa force est que vous continuez d’utiliser sans changement vos fichiers .bib, vos styles .bst et le programme BibTeX ; de nombreuses sociétés et maisons d’édition supposent encore natbib.

L’alternative plus récente est biblatex (associé au backend biber). biblatex contrôle souplement le tri et la mise en forme côté LaTeX et est conçu pour les sorties multilingues et localisées. Si vous pouvez choisir librement dans un nouveau projet, biblatex est une option solide ; mais lorsque les consignes de soumission exigent natbib (ou un .bst précis), utilisez natbib. Les deux ne peuvent pas être combinés : choisissez l’un ou l’autre. Voir la page biber / biblatex pour les détails.