Accueil Français English

Pense-bête pour natbib
(Adapté de la version anglaise décrivant la version 7.0b du 2002/02/27)

Pour une descritption plus détaillée du paquetage natbib, veuiller vous référer au fichier source LATEnatbib.dtx.

Introduction

Le paquetage natbib est une réimplementation de la commande LATEX \cite pour qu'elle marche avec des citations de type auteur-année, mais aussi numérique. Il est compatible avec les fichiers de bibliographie standards tels que plain.bst, mais aussi d'autres formats tels que harvard, apalike, chicago, astron, authordate.

Chargement

On charche le paquetage avec la commande \usepackage[options]{natbib}. La liste des options est à la fin de ce document.

Replacement des styles bibliographiques

Natbib contient trois fichiers .bst pour remplacer les fichiers standards et numériques de LATEX:
plainnat.bst         abbrvnat.bst         unsrtnat.bst

Commandes de base

Le paquetage natbib a deux commandes de citation, \citet et \citep, pour des citations dans le texte ou entre parenthèses. Il existe aussi des versions étoilées de ces commandes, \citet* et \citep*, qui impriment la liste complète des auteurs, et non la version abrégée. Toutes ces commandes peuvent prendre une ou deux options pour ajouter du texte avant, ou après la citation.
\citet{jon90}     -->     Jones et al. (1990)
\citet[chap. 2]{jon90}     -->     Jones et al. (1990, chap. 2)
\citep{jon90}     -->     (Jones et al., 1990)
\citep[chap. 2]{jon90}     -->     (Jones et al., 1990, chap. 2)
\citep[voir][]{jon90}     -->     (voir Jones et al., 1990)
\citep[voir][chap. 2]{jon90}     -->     (voir Jones et al., 1990, chap. 2)
\citet*{jon90}     -->     Jones, Baker, et Williams (1990)
\citep*{jon90}     -->     (Jones, Baker, et Williams, 1990)

Citations multiples

Les citations multiples peuvent être faites en includant plus d'une clé dans l'argument de la commande \cite.
\citet{jon90,jam91}     -->     Jones et al. (1990); James et al. (1991)
\citep{jon90,jam91}     -->     (Jones et al., 1990; James et al. 1991)
\citep{jon90,jon91}     -->     (Jones et al., 1990, 1991)
\citep{jon90a,jon90b}     -->     (Jones et al., 1990a,b)

Mode numérique

En mode numérique (\citet), les résultats sont sensiblement différents.
\citet{jon90}     -->     Jones et al. [21]
\citet[chap. 2]{jon90}     -->     Jones et al. [21, chap. 2]
\citep{jon90}     -->     [21]
\citep[chap. 2]{jon90}     -->     [21, chap. 2]
\citep[see][]{jon90}     -->     [see 21]
\citep[see][chap. 2]{jon90}     -->     [see 21, chap. 2]
\citep{jon90a,jon90b}     -->     [21, 32]

Retirer les parenthèses

Une autre alternative au mode numérique, \citealt et similaire à \citet mais sans parenthèses. De même, \citealp est la version sans paranthèses de \citep. Des références multiples, notes, et des variations avec étoiles exitent aussi.
\citealt{jon90}     -->     Jones et al. 1990
\citealt*{jon90}     -->     Jones, Baker, et Williams 1990
\citealp{jon90}     -->     Jones et al., 1990
\citealp*{jon90}     -->     Jones, Baker, et Williams, 1990
\citealp{jon90,jam91}     -->     Jones et al., 1990; James et al., 1991
\citealp[p. 32]{jon90}     -->     Jones et al., 1990, p. 32
\citetext{priv. comm.}     -->     (priv. comm.)
La commande \citetext permet de placer un texte arbitraire dans la citation entre parenthèses. Elle peut être utilisée en combinaison avec \citealp.

Citations partielles

Dans le mode auteur-année, on veut de temps en temps être capable de se référer aux auteurs, sans la date, ou inversement. Cette fonction est accessible par l'intermédiaire de commandes supplémentaires.
\citeauthor{jon90}     -->     Jones et al.
\citeauthor*{jon90}     -->     Jones, Baker, et Williams
\citeyear{jon90}     -->     1990
\citeyearpar{jon90}     -->     (1990)

Imposer les majuscules

Si le nom d'au auteur contient une particule telle que "della Robbia", alors \citet{dRob98} produira "della Robbia (1998)", même s'il se trouve en début de phrase. Il est possible d'imposer une majuscule en utilisant la commande \Citet au lieu de \citet. D'autres commandes de mise en majuscule existent:
quand
\citet{dRob98}     -->     della Robbia (1998)
et
\Citet{dRob98}     -->     Della Robbia (1998)
  \Citep{dRob98}     -->     (Della Robbia, 1998)
  \Citealt{dRob98}     -->     Della Robbia 1998
  \Citealp{dRob98}     -->     Della Robbia, 1998
  \Citeauthor{dRob98}     -->     Della Robbia
Ces commandes existent aussi dans des versions étoilées pour obtenir la liste complète des auteurs.

Alias de citation

De temps en temps, il est souhaitable de se référer à une citation avec une désignation spéciale plutôt que la liste des auteurs, i.e. Papier I, Papier II. De tels alias peuvent être définis et utilisés, avec ou sans parenthèses, avec les commandes:
\defcitealias{jon90}{Papier I}    
\citetalias{jon90} -> Papier I
\citepalias{jon90} -> (Papier I)
Ces commandes de citation marchent comme \citet et \citep: elles accèptent plusieurs clés en argument, peuvent contenir des notes, et sont marquées comme hyperliens.

Choisir un style de citation et de ponctuation

La commande \bibpunct s'utilise avec 1 argument optionel, et 6 obligatoires:
  1. le symbole d'ouverture de parenthèse, par défaut = (
  2. le symbole de fermeture de parenthèse, par défaut = )
  3. le symbole de ponctuation entre citations multiples, par défaut = ;
  4. la lettre 'n' pour le style numerique, ou 's' pour les style numerique en exposant, et n'importe quelle autre lettre pour le mode auteur-année, par défaut = auteur-année;
  5. le symbole de ponctuation qui vient entre les auteurs et l'année
  6. le symbole de ponctuation qui vient entre l'année ou le numéro quand la liste des auteurs est supprimée  (par défaut = ,);

L'argument optionel est caractère qui précéde une post-note, par défaut, c'est une virgule puis un espace. En redéfinissant ce caractère, il est possible d'y ajouter un espace, si désiré.

Exemple 1, \bibpunct{[}{]}{,}{a}{}{;} change le résultat de

\citep{jon90,jon91,jam92}
en [Jones et al. 1990; 1991, James et al. 1992].

Exemple 2, \bibpunct[; ]{(}{)}{,}{a}{}{;} change le résultat de

\citep[and references therein]{jon90}
en (Jones et al. 1990; and references therein).

Autres options de formattage

  • Redéfinir \bibsection pour la commande voulue pour l'introduction de la bibliographie. En générale, elle est  \section* ou \chapter*.
  • Définir \bibpreamble en n'importe quel texte qui sera imprimé avant la liste de publications, mais sous l'entête de la liste de publications.
  • Définir \bibfont qui sera la déclaration de police appliquée a la liste de publications.
  • Définir \citenumfont qui sera une déclaration de police  ou une commande de type \itshape ou \textit.
  • Redéfinir \bibnumfmt comme une commande avec un argument pour formatter les numéros dans la liste de publications. Par défaut, c'est [#1].
  • L'indentation après la première ligne de chaque référence est donnée \bibhang; changez cette valeur avec la commande \setlength.
  • L'espace vertical entre références est donné par \bibsep; changez cette valeur avec la commande \setlength.

Indexage automatique des citations

Si l'on veut que les citations entrent dans le fichier d'indexage .idx, il faut inclure la commande \citeindextrue n'importe où dans le docoment. Toutes les commandes \cite suivantes (de tous types) seront référencées dans ce fichier. Avec \citeindexfalse, ces référencements seront stoppés.

Utilisation avec le paquetage chapterbib

Le paquetage natbib est compatible avec le paquetage chapterbib qui permet d'avoir plusieurs bibliographies à l'intérieur d'un même document. 

Le paquetage utilise la commande \include, et chaque fichier \included a sa propre bibliographie.

L'ordre dans lequel chapterbib et natbib sont chargés n'a pas d'importance.

Le paquetage chapterbib a une option sectionbib qui met la bibliographie dans une \section* au lieu d'une \chapter*, ce qui a un sens si il y a une bibliographie pour chaque chapitre. Cette option ne marchera pas si natbib est chargé; à la place, ajoutez cette option à natbib.

Tous les fichiers \included doivent contenir leur propre commande \bibliography à l'endroit où la bibliographie doit apparaître. Le fichier de données de la liste d'arguments de cette commande doit être différent pour chaque fichier, bien sûr. En revanche, ce qui n'est pas si évident, c'est que chaque fichier doit aussi contenir une commande \bibliographystyle, et de préférence avec un argument de style.

Classer et compresser les citations

N'utilisez pas le paquetage \cite avec natbib, mais plutôt une des options sort ou sort&compress.

Elles marchent aussi en mode auteur-année, en faisant apparaître les citations multiples dans leur order de la liste de publications.

Longue liste d'auteurs pour la première citation

Utilisez l'option longnamesfirst pour avoir la première citation donner la liste complète des auteurs automatiquement.

Retirez cette option pour quelques citations avec \shortcites{key-list}, avant leur première citation.

Configuration locale

Tout recodage ou définition locale peut être incrite dans le fichier natbib.cfg qui est lu après le fichier principal du paquetage.

Options qui peuvent être ajoutées à \usepackage

  • round: (par défaut) pour des parenthèses arondies (());
  • square: pour des crochets ([]);
  • curly: pour des accolades ({});
  • angle: pour des équerres (<>) ;
  • colon: (par défaut) pour séparer les citations multiples par deux points (:);
  • comma: pour utiliser une virgule comme séparateur;
  • authoryear: (par défaut) pour des citations auteurs-année;
  • numbers: pour des citations numériques;
  • super: pour des citations numériques en exposant, comme dans Nature;
  • sort: ordonne les citations multiples dans l'ordre dans lequel elles apparaissent dans la bibliographie;
  • sort&compress: comme sort mais en plus les citations numériques multiples sont comprimées, si possible (3-6, 15, par exemple);
  • longnamesfirst: transforme la première citation à une référence en une version étoilée (avec la liste complète des auteurs) et le citations suivantes normales (liste abbrégée);
  • sectionbib: pour redéfinir \thebibliography pour avoir une \section* à la place d'un \chapter*; valide seulement pour les classes de document possédant la commande \chapter; à utiliser avec le paquetage  chapterbib;
  • nonamebreak: garde tous les noms d'auteurs d'une citation sur une même ligne; celà cause des problèmes de débordement, mais permet de résoudre certains problèmes liés à hyperref.

A propos de ce document ...

Document traduit de sa version anglaise par S. Merkel, Dept of Earth and Panet. Sc., Univ. Calif. Berkeley, en janvier 2005.

 

© Sébastien Merkel, Université de Lille, France

Home > Latex > natbib.php