Ne pas afficher les sous-entrées bibliographiques

dimanche 4 septembre 2011, mise à jour mercredi 8 août 2012, par Maïeul
Suivre la vie du site RSS 2.0 Forum

J’utilise la technique des sous-entrées bibliographiques pour gérer la division des sources primaires. J’en suis très satisfait. Toutefois cette technique a un inconvénient : elle affiche ces sous-entrées dans la bibliographie finale, ce qui peut s’avérer non pertinent [1]

Comment faire pour éviter cela ? Il faut utiliser la possibilité de filtrer la commande \printbibliography, en utilisant l’option check, en corrélation avec la commande \defbibcheck.

Principe

Lorsque j’appelle la commande \printbibliography, je lui passe l’argument check=principaux :

\printbibliography[check=principaux]

Et j’écris les lignes suivantes dans mon préambule [2] :

\defbibcheck{principaux}{%
\iffieldundef{crossref}{}{\skipentry}}%

La première ligne signifie que je définis un manière de contrôler le contenu de la bibliographie, cette manière est appelée « principaux ». La ligne suivante contient le contenu de cette définition : je teste si le champ crossref est non défini (\iffieldundef{crossref}), si c’est le cas, je ne fais rien de spécial ; en revanche si ce n’est pas le cas — c’est à dire si le champ est défini — alors je décide ne pas afficher l’entrée dans la bibliographie (\skipentry).

Je constate avec les entrées suivantes :

@book{DeDoctChrIIviii18-20,
	Crossref = {DeDoctChr},
	Pages = {150-155},
	Titleaddon = {II, \textsc{viii}, 12-13}}

@book{DeDoctChr,
	Annotator = {Isabelle Bochet and Goulven Madec},
	Author = {Augustin},
	Editor = {Madeleine Moreau},
	Introduction = {Madeleine Moreau},
	Number = {11 / 2},
	Read = {1},
	Series = {Bibliothèque Augustinienne},
	Title = {De doctrina christiana},
	Translator = {Madeleine Moreau}}

que mon code semble fonctionner, puisque je n’ai que l’entrée principale, DeDoctChr, qui apparaît dans la bibliographie.

Oui, mais …

Il peut m’arriver d’utiliser le champ crossref autrement que pour indiquer une division de source. Par exemple l’entrée suivante :

@inbook{DeDoctChrintro,
	Author = {Madeleine Moreau},
	Crossref = {DeDoctChr},
	Pages = {9-62},
	Title = {Introduction}}

Il est légitime que cette entrée soit affichée dans la bibliographie finale. Heureusement, je sais aisément distinguer les sous-entrées indiquant une division de source des sous-entrées « classique » : les premières utilisent le champ titleaddon, les autres non.

Je vais donc procéder à un test sur l’existence du champ titleaddon, grâce à la commande \iffieldundef. Ce qui me donne :

\defbibcheck{principaux}{%
\iffieldundef{crossref}{}{%
	\iffieldundef{titleaddon}{}{%
		\skipentry%
		}%
	}%
}%

Notez la disposition des accolades, pour mieux lire le code.

Avec ceci, mon introduction faite par Madeleine Moreau apparaît bien dans la bibliographie finale.

Notes

[1Selon le type de travail que je produis.

[2Ou ailleurs.

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 champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Acheter XeLaTeX appliqué aux sciences humaines

À propos

Titulaire d’un doctorat en théologie et d’un doctorat en histoire, sous la direction conjointe de Frédéric Amsler et d’Élisabeth_Malamut, je commence à partir du 1er août 2017 un travail d’édition critique des Actes de Barnabé.

Dans le cadre de la rédaction de mon mémoire de master puis de ma thèse de doctorat, 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. Ceci m’a conduit à maintenir ou créer plusieurs packages LaTeX et à donner plusieurs formations.

J’ai reçu en 2018 le prix DANTE e.V pour mon travail autour de LaTeX, en particulier autour de reledmac et reledpar.

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