Accueil > LaTeX > BibLaTeX > L’option citepages=omit, sa limite, le dépassement de cette dernière

L’option citepages=omit, sa limite, le dépassement de cette dernière

mardi 25 mars 2014, par Maïeul

Les styles de citations de la famille verbose proposent une option bien pratique citepages=omit, qui permet de supprimer le contenu du champ pages lorsque une page est indiquée dans l’argument postnote. Cependant, si l’argument \postnote contient autre chose, l’option ne fonctionne pas. J’ai développé un package pour contourner (partiellement) ce problème.

Le problème

Prenons l’entrée suivante :

@article{Kaestli1993,
	Author = {Jean-Daniel Kaestli},
	Journal = {Apocrypha},
	Number = {3},
	Pages = {111-123},
	Subtitle = {à propos d'un récent article de K. Schäferdiek},
	Title = {Le rapport entre les deux vies latines de l'apôtre Jean},
	Year = {1993}}

Si nous l’appelons via \footcite{Kaestli1993}, nous obtenons l’entrée complète, avec le numéro de page :

Jean-Daniel Kaestli, « Le rapport entre les deux vies latines de l’apôtre Jean : à propos d’un récent article de K. Schäferdiek », in : Apocrypha 3 (1993), p. 111–123

En outre si nous avons passé l’option citepages=omit lors du chargement du package, nous pouvons citer juste une page sans que le champ pages soit repris. Ainsi \footcite[122]{Kaestli1993} donne :


Jean-Daniel Kaestli, « Le rapport entre les deux vies latines de l’apôtre Jean : à propos d’un récent article de K. Schäferdiek », in : Apocrypha 3 (1993), p. 122

En revanche, si on insére un texte après le numéro de page, cela ne fonctionne pas. Ainsi \footcite[\pno~122 du texte]{Kaestli1993} donne ;


Jean-Daniel Kaestli, « Le rapport entre les deux vies latines de l’apôtre Jean : à propos d’un récent article de K. Schäferdiek », in : Apocrypha 3 (1993), p. 111-123, p. 122 du texte

La seule solution par défaut est de contourner le problème via, \footnote{\cite[122]{Kaestli1993} du texte}
Ce qui n’est pas toujours pratique, et parfois même contre intuitif.

La solution

J’ai donc développé le package biblatex-true-citepages-omit qui se charge d’une manière normale et évite ce problème. Vous le trouverez prochainement sur le CTAN.

Il vous suffit d’appeler le package après le chargement de biblatex :

\usepackage[citestyle=verbose,citepages=omit...]{biblatex}
\usepackage{biblatex-true-citepages-omit}

Limites

Le package possèdent quelques limites :

  • Il doit être chargé après le package biblatex-source-division.
  • Il ne fonctionne que si l’argument postnote commence par \pno ou \ppno.
  • Certaines commandes peuvent faire planter LaTeX lorsqu’elles sont appelées directement dans l’argument postnote. Heureusement il est possible de déclarer ces commandes, via \realcitepagesomitcmd{<nom de la commande>}. Par exemple pour les commandes de bascule de langue de polyglossia :
    \realcitepagesomitcmd{textenglish}
    \realcitepagesomitcmd{textlatin}
    \realcitepagesomitcmd{textgreek}

Un message, un commentaire ?

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)