Principe
Le champ series
contient la collection dans laquelle un livre est publié. Le champ shortseries
contient une version abrégée de la collection.
Par défaut, c’est le champ series
qui est imprimé. Ce tutoriel propose :
- d’expliquer comment afficher le champ
shortseries
à la place deseries
. - d’expliquer comment ajouter un tableau de correspondance entre forme abrégée et forme longue.
Exemples
Notre base de donnée d’exemple contient quatre entrées. Trois avec collection, une sans [1] :
Ce qui s’affiche ainsi, par défaut :
Concilia Africae. Corpus Christianorum Series Latina 140. De Nativitate Mariae. Corpus Christianorum Series Apocryphorum 10. La forme la plus ancienne du Protvangile de Jacques. Bruxelles, 1961. Pseudo-Matthaei Evangelium. Corpus Christianorum Series Apocryphorum 9.
Afficher la version abrégée de la collection
Nous allons modifier les styles pour afficher la version abrégée de la collection, si elle existe, à la place de la version longue.
Par défaut, le macro qui affiche la collection est la suivante [2] :
Nous allons la modifier, en la redéfinissant ainsi :
.
La seule modification est ligne 2 : nous testons le champ shortseries
. S’il n’existe pas, nous affichons le champ series
. Sinon, nous affichons le champ shortseries
.
Affichage d’une table de correspondance
Principe de base
Dans la précédente version, j’expliquais comment afficher une table de correspondance entre les versions abrégées et les versions longues. C’est ici que la nouvelle version de BibLaTeX permet de simplifier la gestion.
Elle propose une nouvelle commande, \printbiblist
qui permet de produire rapidement une liste avec :
- un champ en label.
- un ou plusieurs champ en contenu.
Pour pouvoir utiliser cette commande, il suffit de créer une nouveau type de liste bibliographique, avec la commande \DeclareBibliographyDriver
. Cette commande reçoit :
- comme premier argument le nom du champ à imprimer en Label.
- comme second argument, des commandes BibLaTeX à exécuter. Par exemple, pour imprimer un champ.
Dans le cas présent, nous allons donc imprimer le champ shortseries
en label, donc en premier argument, et le champ series
en contenu. Le second argument contiendra donc une commande d’impression du champ.
Il suffit désormais d’utiliser la commande \printbiblist
, pour imprimer notre tableau de correspondance. Le premier, et unique, argument de la commande est le nom du champ en label.
Ce qui imprime la liste suivante :
CCSL Corpus Christianorum Series Latina
CCSA Corpus Christianorum Series Apocryphorum
CCSA Corpus Christianorum Series Apocryphorum
Par défaut, le titre de la liste, en français, est « Sigle ». Mais il est possible de préciser à partir d’un argument facultatif.
Affinage
Vous pouvez constatez deux problèmes :
- Le tri n’est pas correct.
- Si une
shortseries
est définie plusieurs fois, elle apparaît plusieurs fois.
Il faut donc définir :
- Un système de tri.
- Un système de filtrage, via
\defbibcheck
.
Système de tri
Si on définit un schéma de tri du nom du champ de label, il sera automatiquement appliqué à la liste bibliographique. Un tel système de tri est très aisé à définir :
- L. 1 : définition du schéma de tri.
- L. 2 : définition du premier (et unique) critère de classement :
- L. 3 : on trie selon le champ
shortseries
et c’est tout.
- L. 3 : on trie selon le champ
Ce qui donne, après nouvelle compilation Biber :
CCSA Corpus Christianorum Series Apocryphorum
CCSA Corpus Christianorum Series Apocryphorum
CCSL Corpus Christianorum Series Latina
Filtrage
Pour filtrer la liste, il suffit de déclarer un « bibcheck » du nom de la liste. Le filtrage sera automatiquement effectué, à partir de BibLaTeX 3.0. Pour la version 2.9, il faut spécifier ce bibcheck explicitement :
Voici donc une manière de définir :
- L. 1 : définition du bibcheck.
- L. 2 : si une entrée n’a pas de champ
shortseries
défini, on ne l’affiche pas dans la liste (logique !) - L. 3 : de même si pas de champ
series
défini. - L. 4 : en revanche si ces deux champs sont définis, on teste l’existence d’une commande dont le nom est composé du champ
shortseries
et du champseries
:- L. 5 : si cette commande est déjà définie, cela veut dire que le couple shortseries/series a déjà été affiché. Dans ce cas, on ne l’affiche pas une nouvelle fois.
- L. 6 : si cette commande n’est pas définie, cela veut dire que le couple shortseries/series n’a pas encore été affiché. Dans ce cas on défini la commande ad hoc.
Par rapport à la précédente version, ce nouveau bibcheck est beaucoup plus sûr : il vérifie aussi qu’une même abréviation n’a pas été utilisée deux fois pour deux collections différentes.
On obtient ainsi une version correcte de notre liste d’abréviations :
CCSA Corpus Christianorum Series Apocryphorum
CCSL Corpus Christianorum Series Latina
Vos commentaires
# Le 31 mars 2017 à 06:21, par Wiener En réponse à : Collection abrégée avec
shortseries
: simplificationBonjour,
Merci pour ce tutoriel ! Après bien des recherches sur internet, c’est évidemment encore une fois chez vous que j’ai trouvé la solution :-)
Mais j’aimerais encore faire davantage. J’aimerais une liste qui combine abréviations des journaux, des collections et des ouvrages encyclopédique (pour les articles, que l’abréviation apparaisse, par exemple TDNT pour le Kittel et que, dans la liste d’abréviation apparaisse la référence du Kittel).
J’ai de nouveau, bien sûr, fouiné un peu partout (je crois) sur internet, sans succès.
Une piste ? Merci d’avance...
Bien à vous,
Hélène.
# Le 31 mars 2017 à 10:11, par Maïeul En réponse à : Collection abrégée avec
shortseries
: simplificationMalheureusement ce n’est pas possible en natif. Il me semble que j’avais posé la question aux responsable de biblatex, qui ne voulait pas implanter une telle option.
Vous pouvez tenter de le relancer. Sinon, la solution est de partir de mon ancienne astuce, en affichant une bibliographie qu’on filtre. Il faut juste l’adapter un peu.
# Le 31 mars 2017 à 16:03, par Wiener En réponse à : Collection abrégée avec
shortseries
: simplificationMerci, je vais me pencher sur votre ancienne solution qui consiste, si je comprends bien, à tout regrouper sous shortseries. À moins que je ne finisse par faire deux listes d’abréviations (collections et articles). Merci en tout cas !
# Le 31 mars 2017 à 16:25, par Maïeul En réponse à : Collection abrégée avec
shortseries
: simplificationnon, ce n’est pas de regrouper tous sous shortseries. Je peux essayer de faire un article à ce sujet ce week-end, dès que j’ai envoyé ma thèse au jury.
# Le 31 mars 2017 à 17:28, par Wiener En réponse à : Collection abrégée avec
shortseries
: simplificationBRA-VO pour la thèse !!!!!! :-)
# Le 1er avril 2017 à 16:13, par Maïeul En réponse à : Collection abrégée avec
shortseries
: simplificationMerci.
Je pense que je vais faire un package spécifique.
Par contre je suis pas certain de comprendre ce que tu entends par TDNT pour Kittel. Est-ce que par hasard tu n’aurais pas besoin de quelque chose comme ce qui est proposé dans l’article Gérer les claves avec biblatex. ? Afficher le titre d’un ouvrage de référence sur forme abrégé pour le lier à une notice ?
# Le 3 avril 2017 à 03:50, par Wiener En réponse à : Collection abrégée avec
shortseries
: simplificationOK, j’ai finalement réussi à faire une liste abrégée de titres d’ouvrages tels que le TDNT, grâce à biblatex-claves et quelques adaptations dans la bibliographie.
J’ai donc maintenant trois listes : celle obtenue par biblatex-claves pour le TDNT, et celles obtenues, l’une pour les shortjournal (titres de journaux/revues) et l’autre pour les shortseries (collections), par \printlistbib (commande de biblatex) en utlisant \DeclareBibliographyDriver, \DeclareSortingScheme et \defbibcheck.
Pour moi, l’idéal serait d’obtenir une fusion des trois listes (merge ?), avec classement alphabétique de toutes les abréviations (sinon où serait l’intérêt) et aussi, ce serait encore mieux, maintien des italiques pour les titres abrégés d’articles et des caractères droits pour les titres abrégés de collection. Je n’ai absolument AUCUNE idée de ce qui pourrait permettre d’arriver à un tel résultat... Mais je sais aussi que c’est comme ça qu’on avance, en imaginant un possible et en le réalisant finalement (plutôt que de se coincer dans ce que l’on sait réalisable)...
Voilà, je vous ai décrit mon idéal en la matière, mais c’est déjà une belle avancée pour moi que d’avoir obtenu ces trois listes...
En tout cas, grand merci pour toute l’aide déjà apportée !
Meilleures salutations, H.W.
# Le 3 avril 2017 à 09:47, par Maïeul En réponse à : Collection abrégée avec
shortseries
: simplificationJ’ai commencé un package, qui gère pour le moment la fusion journal / collection. Il reste à brancher les claves, mais c’est plus complexe car c’est en réalité une exception. Mais je peux envisager cela. Peut être ce week-end si j’ai du temps.