Chemin principal : Accueil > LaTeX > BibLaTeX > Gérer les revues qui publient en plusieurs étapes

Autre chemin : (Aller directement au contenu de l'article)

Gérer les revues qui publient en plusieurs étapes

vendredi 25 octobre 2013, par Maïeul
Suivre la vie du site RSS 2.0 Forum

Un certain nombre de revues publient leur volume annuel en plusieurs étapes, par mois, trimestre ou semestre.

La pagination court alors de début de l’année à la fin : chaque volume physique commence, en terme de pagination, là où s’arrête le précédent.

Chaque volume physique a son propre numéro, mais l’ensemble des numéros d’une année constituent un volume logique, avec :

  • une pagination continue
  • un numéro unique
  • une table des matières communes.

Comment gère-t-on cela avec BibLaTeX [1] ?

Exemple

Prenons un article de Rémi Gounelle dans la Revue d’Histoire et de Philosophie Religieuse de 2006, une revue qui publie quatre fois par an.

En bas de page nous voyons :

  • le numéro associé à l’année, que la revue appelle "tome" et qui ici est 86. Il correspond au champ Volume de BibLaTeX
  • le numéro au sein de l’année, que la revue appelle "n°" et qui ici est 3. Il correspond au champ Number.

Ce qui dans le cas présent, donnerait donc l’entrée suivante :

  1. @article{Gounelle2006,
  2. Author={Rémi Gounelle},
  3. Title={L'enfer selon
  4. l'\emph{Évangile de Nicodème}},
  5. Journal={Revue d'histoire et de philosophie religieuse},
  6. Year={2006},
  7. Volume={86},
  8. Number={3},
  9. Pages={313-333}
  10. }

Télécharger

Qui affichera :

Rémi GOUNELLE, « L’enfer selon l’Évangile de Nicodème », in : Revue d’histoire et de philosophie religieuse 86.3 (2006), p. 313-333

Personnaliser l’affichage

J’ai reçu une demande pour modifier l’affichage sous la forme "vol. x, n°x" [2]. Voici comment.

Si l’on consulte le fichier standard.bbx [3], on trouve le driver d’affichage des entrées de type @article :

  1. \DeclareBibliographyDriver{article}{%
  2. \usebibmacro{bibindex}%
  3. \usebibmacro{begentry}%
  4. \usebibmacro{author/translator+others}%
  5. \setunit{\labelnamepunct}\newblock
  6. \usebibmacro{title}%
  7. \newunit
  8. \printlist{language}%
  9. \newunit\newblock
  10. \usebibmacro{byauthor}%
  11. \newunit\newblock
  12. \usebibmacro{bytranslator+others}%
  13. \newunit\newblock
  14. \printfield{version}%
  15. \newunit\newblock
  16. \usebibmacro{in:}%
  17. \usebibmacro{journal+issuetitle}%
  18. \newunit
  19. \usebibmacro{byeditor+others}%
  20. \newunit
  21. \usebibmacro{note+pages}%
  22. \newunit\newblock
  23. \iftoggle{bbx:isbn}
  24. {\printfield{issn}}
  25. {}%
  26. \newunit\newblock
  27. \usebibmacro{doi+eprint+url}%
  28. \newunit\newblock
  29. \usebibmacro{addendum+pubstate}%
  30. \setunit{\bibpagerefpunct}\newblock
  31. \usebibmacro{pageref}%
  32. \newunit\newblock
  33. \iftoggle{bbx:related}
  34. {\usebibmacro{related:init}%
  35. \usebibmacro{related}}
  36. {}%
  37. \usebibmacro{finentry}}

Télécharger

On voit que ce qui est appelée après le dans est la macro journal+issuetitle.

Celle-ci est ainsi définie :

  1. \newbibmacro*{journal+issuetitle}{%
  2. \usebibmacro{journal}%
  3. \setunit*{\addspace}%
  4. \iffieldundef{series}
  5. {}
  6. {\newunit
  7. \printfield{series}%
  8. \setunit{\addspace}}%
  9. \usebibmacro{volume+number+eid}%
  10. \setunit{\addspace}%
  11. \usebibmacro{issue+date}%
  12. \setunit{\addcolon\space}%
  13. \usebibmacro{issue}%
  14. \newunit}

Télécharger

Il faut donc se rendre à la définition de volume+number+eid :

  1. \newbibmacro*{volume+number+eid}{%
  2. \printfield{volume}%
  3. \setunit*{\adddot}%
  4. \printfield{number}%
  5. \setunit{\addcomma\space}%
  6. \printfield{eid}}

Télécharger

Voilà donc la macro que l’on va redéfinir, ainsi :

  1. \renewbibmacro*{volume+number+eid}{%
  2. \iffieldundef{volume}%
  3. {}%
  4. {\bibstring{volume}\addspace}%
  5. \printfield{volume}%
  6. \setunit*{\addspace}%
  7. \iffieldundef{number}%
  8. {}%
  9. {\bibstring{number}\addspace}%
  10. \printfield{number}%
  11. \setunit{\addcomma\space}%

Télécharger

  • L. 2, on teste le champ Volume :
    • L. 3, s’il est absent on n’affiche rien.
    • L. 4, s’il est présent on affiche la chaîne de langue volume, suivie d’une espace.
  • L. 6, à la place de séparer Volume et Number par un point, on les sépare par une espace.
  • L. 7, on teste le champ Number :
    • L. 8, s’il est absent on n’affiche rien.
    • L. 9, s’il est présent on n’affiche la chaîne de langue number, suivie d’une espace.

Ce qui nous donne :

Rémi GOUNELLE, « L’enfer selon l’Évangile de Nicodème », in : Revue d’histoire et de philosophie religieuse t. 86 no 3 (2006), p. 313–333

Il ne nous reste plus qu’à modifier les chaînes de langues :

  1. \DefineBibliographyStrings{french}{%
  2. volume = {vol.},%
  3. number = {n°}
  4. }

Télécharger

Pour obtenir :

Rémi GOUNELLE, « L’enfer selon l’Évangile de Nicodème », in : Revue d’histoire et de philosophie religieuse vol. 86 n° 3 (2006), p. 313–333

P.-S.

On pourra aussi utiliser :

  • month si la publication est mensuel, mais que la numérotation est annuelle.
  • issue si on veut préciser une numérotation non numérique, par exemple « printemps ».

Je trouve le choix des champs Volume et Number particulièrement piégeur, puisqu’ils sont exactement inversés par rapport à un livre. En effet :

  • dans le cadre d’une revue, le numéro de Volume augmente régulièrement, tandis que le numéro de Number recommence régulièrement à 1.
  • dans le cadre d’un collection, le numéro de Number augmente régulièrement, mais un même Number peut avoir plusieurs Volume.

Documents joints

Notes

[1Cet article vient compléter mon livre, où j’omet de parler de ce problème (mais la prochaine version en tiendra compte). Il est vrai que je déteste cette habitude de double numérotation, qui peut entraîner des confusions. C’est pourquoi je ne mentionne en général que le numéro de l’année. Bref, voici qui comblera mon oublie.

[2En fait c’est cette demande qui m’a forcé à me repencher sur ce problème. Merci Axelito.

[3Voir mon article sur comment trouver les fichiers par défaut.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici
  • Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

À propos

Titulaire d’un master en sciences religieuses de l’Université de Strasbourg, je suis depuis août 2012 assistant-diplômé en histoire du christianisme antique et littérature apocryphe chrétienne à l’Université de Lausanne, où je prépare une thèse sous la direction de Frédéric Amsler.

Dans le cadre de la rédaction de mon mémoire de master, j’ai été emmené à utiliser LaTeX, et j’ai donc décider de partager mes techniques. En effet, au cours de mes premiers apprentissages, j’ai découvert que les ressources indiquant les outils pour l’utilisation de LaTeX en sciences humaines étaient rares.

Par ailleurs, je suis membre actif de la communauté SPIP, au sein de laquelle j’administre le site Spip-Contrib. Je propose sur ce site quelques notes sur SPIP, en général à destination de webmestre.

Il m’arrive également de faire un petit peu de Python, de temps en temps.

Enfin, je tiens un blog de réflexions politiques et religieuses.

Maïeul