csl-clio/Documentation/GUIDE_CSL-Clio.md
2020-12-31 12:54:48 +01:00

42 KiB
Raw Blame History

title subtitle author date lang colorlinks toc lof
CSL/Clio Guide d'utilisation et de création de styles CSL supportant un formatage complexe des sources primaires Bastien Dumont 29/12/2020 fr-FR true true true

Introduction

Le but du projet CSL/Clio est de fournir une solution clé en main aux historiens pour utiliser des gestionnaires bibliographiques basés sur CSL, tels que Zotero, et mettre en forme automatiquement les citations et les bibliographies grâce aux processeurs CSL existants. Il comprend trois aspects :

  • Proposer des stratégies claires pour encoder des références bibliographiques dans le format CSL en contournant ses limitations plutôt qu'en l'étendant ;
  • Fournir des feuilles de style CSL qui poussent le plus loin possible l'automatisation de la mise en forme des citations et de la bibliographie en s'appuyant sur ces stratégies d'encodage ;
  • Fournir des outils de post-traitement (macros pour LibreOffice, filtres pour Pandoc) pour automatiser la plus grande partie des modifications qui doivent être effectuées sur le résultat produit par les processeurs CSL.

La première section développe les principes et les objectifs du projet. Malgré mes efforts, il est possible qu'elle reste quelque peu obscure à la première lecture. Sa lecture est utile, mais pas indispensable à la compréhension des sections suivantes ; il est possible de la parcourir rapidement, puis de revenir éventuellement plus tard, en ayant acquis un peu d'expérience. Les sections suivantes donnent des indications pratiques pour utiliser Zotero selon les principes de CSL/Clio, utiliser les outils fournis et étendre le nombre de styles proposés. Il est nécessaire, avant de les lire, d'être un minimum familiarisé avec l'interface et les fonctionnalités de base de Zotero.

Les outils fournis par CSL/Clio peuvent être utilisés soit avec Pandoc, soit avec LibreOffice, soit les deux combinés. Si vous ne souhaitez pas utiliser l'un de ces deux logiciels, vous pouvez passer les paragraphes qui les concernent spécifiquement. Il est également possible d'utiliser les styles avec Microsoft Word, mais le document DOCX obtenu devra ensuite être ouvert dans LibreOffice si vous souhaitez utiliser les outils de post-traitement.

Principes

Présentation de CSL

Citation Style Language (CSL) est un format de fichier basé sur XML qui décrit la manière dont doivent être mises en forme des références bibliographiques au sein d'un document. Il permet de mettre en forme différemment une référence selon qu'elle se trouve dans une citation ou dans la bibliographie, et de distinguer entre la première mention d'une référence et ses mentions ultérieures. Pour ce faire, il spécifie :

  • Les différentes variables qui peuvent être utilisées pour décrire une référence dans un gestionnaire de bibliographie : title, author, editor, issued, page,...
  • La manière dont doivent être rédigées les instructions de mise en forme dans une feuille de style ;
  • La manière dont ces instructions doivent être interprétées par les logiciels qui traitent ces feuilles de style pour procéder à la mise en forme, CSL n'étant pas lui-même un programme mais un format.

Les règles que doit respecter tout fichier CSL (variables utilisées, syntaxe,...) sont spécifiées dans un schéma, qui est une représentation formelle plutôt destinée à l'ordinateur qu'à un humain. Le contenu du schéma, les contraintes qu'il exprime et la manière dont doivent être interprétées les instructions d'une feuille de style sont explicitées dans les spécifications.

L'utilisation de CSL pour la mise en forme des citations met en œuvre quatre outils :

  • Un gestionnaire de bibliographie qui se base sur les règles spécifiées par CSL pour décrire les références. Dans la suite de ce document, nous prendrons l'exemple de Zotero, mais d'autres logiciels supportent CSL ;
  • Une feuille de style conforme à la fois au schéma CSL et aux directives de la revue, de la collection ou de la maison d'édition qui doit publier le travail en train d'être rédigé (les deux principaux dépôts étant celui du projet CSL et celui de Zotero) ;
  • Un processeur CSL, c'est-à-dire un programme qui traite les données enregistrées dans le gestionnaire de bibliographie selon les instructions données dans la feuille de style spécifiée pour produire une référence mise en forme dans un format qui lui est propre ;
  • Un programme qui convertit les données renvoyées par le processeur CSL dans le format du fichier où la référence doit être insérée.

De nombreux gestionnaires de bibliographie intègrent un processeur CSL, le plus souvent citeproc-js, et proposent des extensions pour les principaux logiciels de traitement de texte. Grâce à ceux-ci, lorsque l'auteur souhaite insérer une citation, il lui suffit de cliquer sur un bouton et d'indiquer dans la fenêtre qui s'ouvre à quels items il veut faire référence et quelles précisions supplémentaires il souhaite apporter ; le plugin appelle le processeur intégré en lui indiquant la feuille de style choisie par l'utilisateur et les informations relatives à la citation et intègre la citation produite par le processeur dans le document courant sous la forme d'une note de bas de page ou d'une référence dans le corps du texte. On en trouvera un exemple sur le site de Zotero. D'autres processeurs existent, notamment celui utilisé par Pandoc.

La mise en œuvre de cette chaîne opératoire pour la mise en forme des citations comporte de nombreux avantages sur un travail purement manuel. En automatisant la mise en forme des citations, elle réduit les risques d'incohérences et d'erreurs : on gagne ainsi du temps à la fois lors de la saisie des citations et à la relecture. Elle évite d'avoir à vérifier si une référence a déjà été citée ou non et dans quelle note. La séparation entre le stockage des références bibliographiques et leur mise en forme facilite également l'utilisation des mêmes références dans plusieurs publications soumises à des normes différentes. Elle permet même de changer les règles de mise en forme en cours de rédaction sans perdre de temps à modifier toutes les citations existantes, ce qui peut s'avérer précieux lorsque l'éditeur met à jour ses instructions ou lorsque l'on décide de soumettre à une autre revue que celle envisagée initialement. Certes, il est nécessaire de prendre un peu de temps pour apprendre à utiliser ces outils et pour enregistrer sa bibliographie dans le gestionnaire ; mais cet investissement est faible si l'on se contente d'utiliser ou de modifier légèrement des feuilles de styles existantes, et il est très rapidement rentabilisé.

Enfin, CSL présente toutes les garanties de durabilité. Les spécifications sont publiées sous license Creative Commons Attribution-ShareAlike, une license libre qui leur garantit une large diffusion. Les processeurs existants, ainsi que plusieurs logiciels de gestion de bibliographie (dont Zotero), sont relativement nombreux, dotés pour certains d'une importante communauté d'utilisateurs, en partie dépendants les uns des autres, et libres, ce qui rend très peu probable l'arrêt de leur développement. La large batterie de tests maintenue sur le dépôt en ligne de CSL permet aux développeurs de vérifier si le comportement de leur programme est conforme aux spécifications : ainsi, dans la plupart des cas, un style CSL donné produira bien les mêmes résultats quel que soit le processeur utilisé — et si tel n'est pas le cas, il est possible de signaler le problème sur le dépôt du code source du projet. Le principal risque pour l'utilisateur est qu'une modification des spécifications CSL impose de modifier les styles ou l'enregistrement des données dans le gestionnaire de bibliographie ; cependant, dans ce cas, des outils seront très probablement mis à disposition pour rendre la migration automatique, comme cela a été le cas lors du passage de la version 0.8 à la version 1.0 des spécifications.

Pour aller plus loin :

Limites actuelles de CSL pour les publications en Histoire

Si CSL a été développé principalement par des chercheurs pour les besoins de la publication scientifique, le fait qu'il soit pensé pour couvrir les besoins de l'ensemble des sciences humaines le rend peu adapté, au premier abord, à certains besoins particuliers.

Pour les historiens, son point faible le plus évident est le manque de support pour la gestion des sources primaires. En effet, CSL prévoit principalement une variable title^[ Titre dans Zotero. ] pour le titre d'une référence et une variable container-title^[ Dans Zotero, Titre du livre si l'item enregistré est un chapitre ou Publication s'il s'agit d'un article. ], pour l'ensemble dans lequel elle est insérée (livre pour un chapitre d'ouvrage, revue pour un article), mais rien pour le titre d'une source. Or, on ne peut pas renseigner le titre de la source comme title et celui de l'ouvrage dans lequel elle est publiée dans container-title car certaines sont publiées dans des articles ou des chapitres d'ouvrages. En outre, selon les éditeurs, il faut indiquer soit le titre de la source, soit celui de la publication, soit les deux : si l'on veut que les enregistrements dans la base de données bibliographique soient complets et indépendants des styles utilisés, une variable ad hoc est donc nécessaire. Or, le fait que l'utilisation d'une telle variable soit limitée aux historiens empêche qu'elle soit ajoutée dans les spécifications^[ Pour plus de détails, voir cette discussion sur le dépôt officiel du schéma CSL. ].

Bien que ce point ne soit pas explicité, les spécifications actuelles de CSL (v. 1.0.1) semblent supposer que la localisation d'un passage dans une publication se fait en fonction d'un critère unique, tel que la page, le chapitre ou la ligne. Les processeurs, en accord avec les tests officiels, ne prévoient en tout cas que ce cas de figure. Or, le plus souvent, lorsque l'on précise la ligne, on indique aussi la page, le folio ou la colonne. De même, on peut avoir besoin de citer une source à la fois selon les divisions internes de la source (p. ex. VI, 5) et selon la page dans l'édition. De ce fait, dans les boîtes de dialogue d'ajout de citation, on ne peut renseigner qu'un des deux critères de localisation dans le champ approprié, l'autre étant à ajouter en suffixe (voir [@fig:double-locator-zotero]). Cela pose problème à double titre : d'abord parce que certains localisateurs, dans certains styles, sont rendus différemment selon qu'ils sont seuls ou combinés à d'autres^[ Comparer p. ex. « La Fontaine, À Fouquet, l. 7 » (ligne seule) et « La Fontaine, Le Songe de Vaux, p. 26^5^ » (page et ligne en exposant). Voir aussi cette discussion. ] ; ensuite parce que cette lacune oblige à mettre en forme une partie des localisateurs directement dans le champ Suffixe, ce qui peut poser problème en cas de modification des normes suivies. Par ailleurs, CSL prévoit une grande variété de critères de localisation dans les citations, mais pas dans les références bilbiographiques : ainsi, on peut se référerer à un folio précis d'un manuscrit dans une citation, mais non indiquer la localisation d'une œuvre dans un manuscrit dans la bibliographie.

Localisation selon la page et la ligne dans la fenêtre classique d'ajout de citation de Zotero{#fig:double-locator-zotero}

Concernant les titres de revues, les spécifications CSL prévoient une variable container-title-short qui permet d'indiquer une forme abrégée. Zotero propose en outre une option pour ignorer cette variable et utiliser à la place la liste d'abréviations de l'Index Medicus. Toutefois, ces deux approches ne sont pas satisfaisantes, d'une part parce qu'elles ne prévoient pas un mécanisme semblable pour les titres de collections, d'autre part parce que les listes d'abréviations varient selon les éditeurs et les revues. Pour l'instant, seul Pandoc permet de fournir une liste d'abréviations en plus du fichier CSL en utilisant un mécanisme généralisable à toutes les variables (dont collection-title). Cependant, il faut acquérir des connaissances de bases sur le format JSON et CSL pour constituer une telle liste, et les utilisateurs de logiciels de traitement de texte tels que Word ou LibreOffice ne peuvent pas en bénéficier. Zotero devrait aussi acquérir cette fonctionnalité dans le futur^[ En réalité, une solution existe déjà mais elle n'est pas officiellement documentée et est assez délicate à metre en œuvre. Nous l'expliquons néanmoins plus loin. ].

Enfin, il manque des solutions claires pour l'encodage de certains éléments. Il n'existe pas, dans CSL, de types de documents tels que « actes de colloque », « répertoire », « blog » ou « site Web ». Il n'est pas prévu non plus de rôle pour les collaborateurs^[ Il existe bien un champ Collaborateur dans Zotero, mais il n'est relié à aucune variable dans CSL. ]. Comme nous l'avons évoqué plus haut, il n'est pas possible de localiser autrement une partie d'ouvrage dans la bibliographie que par pages, volume ou partie : il n'est donc pas possible d'indiquer à quels folios ou dans quelles colonnes de la Patrologie grecque se trouve une source (bien que ce soit possible dans les citations).

Heureusement, les membres du projet CSL sont parfaitement conscients de ces limites que les nombreux retours d'utilisateurs mettent en évidence, et ils travaillent à faire évoluer les spécifications pour y apporter des réponses. À l'heure à laquelle ce guide est rédigé, les spécifications officielles, qui sont implémentées par les processeurs, portent le numéro de version 1.0.1. Elles devraient bientôt évoluer vers la version 1.0.2, qui introduira quelques nouveautés sans véritablement résoudre les problèmes que nous avons identifiés. À plus long terme, CSL sera plus profondément remanié dans la version 1.1. Les discussions en cours sont très prometteuses, mais nul ne sait quand elles aboutiront, et il faudra encore un délai supplémentaire pour que les processeurs soient mis à jour. En attendant, il nous faut trouver des moyens de surmonter les limites actuelles de CSL en faisant avec l'existant.

En savoir plus sur l'évolution de CSL :

Objectifs de CSL/Clio

Actuellement, pour bénéficier malgré tout des avantages de CSL, chacun doit définir des stratégies d'encodage ad hoc et créer des styles qui reposent sur elles en fonction de ses besoins. Cela requiert beaucoup de recherches et de temps pour comprendre comment fonctionne CSL, découvrir des fonctionnalités peu connues de Zotero, programmer des outils et corriger ensuite ses erreurs. Pour des raisons fort compréhensibles, peu de chercheurs ont le temps ou l'envie de se consacrer à ces tâches. Le but du projet CSL/Clio est de réduire le plus possible l'investissement requis en fournissant des solutions clés en main pour utiliser CSL et automatiser le plus possible le travail de post-traitement qui reste nécessaire. Ainsi, le temps d'apprentissage nécessaire pour maîtriser les principes et les outils présentés dans ce guide sera largement compensé par le temps et l'énergie gagnés lors du processus de rédaction. De plus, ce travail pourra servir de base pour coordonner les efforts des individus qui souhaiteront apporter des améliorations ou de nouvelles fonctionnalités, au lieu que chacun perde son temps en partant de zéro. Les lignes directrices du projet sont exposées maintenant, avant de passer à la pratique.

Fournir des stratégies d'encodage communes

On peut surmonter de trois manières différentes le fait que les spécifications CSL et les gestionnaires de bibliographie ne déterminent pas de stratégies d'encodage claire pour une partie des besoins relatifs à la discipline historique :

#. N'utiliser que les fonctionnalités offertes, en modifiant et en complétant à la main le résultat produit par le processeur CSL. Ainsi, pour indiquer une source, on peut enregistrer la publication dans laquelle elle est éditée dans Zotero, choisir un style assez proche de celui de la revue visée et ajouter à la main la mention de l'auteur et du nom de la source. Cette solution n'implique aucun bricolage, limite au minimum le temps d'apprentissage et laisse aux revues la possibilité de proposer des styles CSL sur les dépôts officiels qui ne sont pas complètement conformes à leurs directives, mais suivent en revanche rigoureusement les spécifications de CSL. Elle ne permet toutefois pas de tirer pleinement profit des possibilités de CSL et impose un long temps de vérification et de correction ; #. Inventer des variables qui ne figurent pas dans les spécifications CSL et rédiger des feuilles de style qui les utilisent. Cette solution est applicable dans la mesure où le processeur utilisé supporte les variables non standard, ce qui est le cas de citeproc-js (le plus répandu) et de citeproc (sur lequel s'appuie Pandoc) ; #. Utiliser des variables existantes d'une manière qui n'est pas prévue par les spécifications, ce qui permet de respecter formellement le schéma CSL et de créer des styles compatibles avec tous les processeurs. Plus précisément, cette stratégie consiste à spécialiser des variables très abstraites (telles que annote pour indiquer un titre de source) et à détourner des variables plus spécialisées dont les historiens n'ont a priori pas besoin (telles que original-publisher pour indiquer la langue d'origine d'un document traduit).

Le projet CSL/Clio repose sur la troisième option. Certes, l'invention de nouvelles variables présente l'avantage de la clarté, et le détournement de variables existantes pourrait entrer en conflit avec des besoins imprévus. J'ai choisi de privilégier la compatibilité avec le plus grand nombre de processeurs. De plus, l'utilisation de variables non standard interdirait de placer les styles développés dans le cadre de CSL/Clio dans les dépôts de CSL et de Zotero. J'espère que les évolutions futures de CSL permettront de se passer du détournement de variables ; si les adaptations nécessaires à notre discipline se limitent à des spécialisations, une intégration aux dépôts officiels deviendra envisageable.

Ces règles sont exposées dans la partie Gérer ses données bibliographiques avec Zotero.

Créer un ensemble de styles cohérent et interopérables

Le premier objectif de CSL/Clio est donc de fournir des règles communes pour encoder des bibliographies selon les catégories prévues par CSL, en définissant quelles variables peuvent être spécialisées ou détournées pour quels types d'information. Ce vocabulaire commun constitue une condition préalable à la création de styles interopérables, c'est-à-dire qui puissent tous être utilisés avec une base de données bibliographique qui suit ces règles. Une autre condition est l'existence de règles communes pour structurer les styles. L'idée principale est de diviser le code en modules, c'est-à-dire de petites unités, de manière à ce que l'on puisse facilement comprendre comment il est organisé et créer un autre style en le modifiant.

Considérons, par exemple, la structure non modulaire suivante (écrite en pseudo-code et non en XML) :

Pour toute citation, réaliser les étapes suivantes 
en séparant les segments par des virgules :
— Afficher le nom de l'auteur avec le prénom abrégé 
  avant le nom en petites capitales ;
— Afficher le titre en italiques s'il s'agit d'un 
  livre, en caractères droits avec des guillemets 
  s'ils s'agit d'un article ;
— Afficher la maison d'édition en caractères droits 
  s'il s'agit d'un livre, la nom de la revue en 
  italiques s'il s'agit d'un article.

Si l'on veut modifier un seul aspect (p. ex. retirer les guillemets d'un titre d'article), il faut parcourir tout le code pour trouver le passage concerné ; or, les règles des revues en histoire sont souvent beaucoup plus raffinées que cela. Le code modulaire suivant sera beaucoup plus facile à comprendre et à manier à mesure qu'il se complexifiera :

Pour toute citation, réaliser les étapes suivantes 
en séparant les segments par des virgules :
— Appliquer la macro "nom de l'auteur" ;
— Appliquer la macro "titre" ;
— Appliquer la macro "publication".

Macro "nom de l'auteur" :
— Afficher le nom de l'auteur avec le prénom abrégé 
  avant le nom en petites capitales.

Macro "titre" :
— Afficher le titre en italiques s'il s'agit d'un 
  livre, en caractères droits avec des guillemets 
  s'il s'agit d'un article.

Macro "publication" :
— Afficher la maison d'édition en caractères droits 
  s'il s'agit d'un livre, la nom de la revue en 
  italiques s'il s'agit d'un article.

Si l'on reprend l'exemple précédent, on saura immédiatement qu'il faut modifier la macro "titre" pour supprimer les guillemets, et ce d'autant plus s'il est convenu que tous les styles doivent indiquer la mise en forme du titre principal du document (et seulement cela) dans un macro appelée "titre".

Pour garantir que les styles produise bien la mise en forme attendue, ils sont contrôlés automatiquement après chaque modification. D'une part, CSL/Clio intrègre une bibliographie type d'une cinquantaine d'items représentant chacun une configuration différente. D'autre part, chaque style est associé à un fichier qui indique la mise en forme attendue par la revue ou l'éditeur pour chacun de ces items dans différentes situations (première citation, citation ultérieure, en combinaison,...). Un style ne sera pas mis en ligne tant qu'il ne produira pas un rendu conforme, et il ne sera pas modifié si la modification proposée entraîne des effets indésirables.

Les conventions suivies dans CSL/Clio sont exposées dans la partie Programmer de nouveaux styles. Contrairement aux règles d'enregistrement des données bibliographiques, il n'est pas nécessaires de les connaître si l'on ne souhaite pas en programmer soi-même de feuille de style CSL. Cependant, il est bon d'avoir conscience que les styles mis à disposition par le projet CSL/Clio suivent des stratégies précises qui ne sont pas suivies par ceux des dépôts officiels. Le lecteur sera également rassuré de savoir que les conventions suivies permettent de produire des styles fiables et que l'on peut aisément corriger ou modifier pour produire d'autres styles.

Coupler CSL avec des outils de post-traitement

Quelles que soient les stratégies utilisées, certaines exigences d'éditeurs et de revues ne peuvent pas être satisfaites en se limitant à CSL. Pour ne citer qu'un exemple, il est impossible, dans la bibliographie, d'introduire les références aux folios par « f. » s'il n'y en a qu'un et « ff. » s'il y en a plusieurs. Pour cette raison, CSL/Clio fournit deux types d'outils de post-traitement qui permettent de limiter le plus possible le travail manuel requis pour corriger les imperfections de la mise en forme automatique : des filtres Lua (encore peu nombreux) à utiliser avec Pandoc et des macros pour LibreOffice Writer. Pour l'instant, je n'ai pas prévu de réécrire les macros pour en faire une version utilisable avec Microsoft Word ; heureusement, la suite LibreOffice est gratuite et peut très bien traiter des documents au format DOCX rédigés sous Word. Chaque style est fourni avec un document qui précise ses limites et indique quelles macros utiliser et quelles tâches doivent être accomplies manuellement.

Les informations sur les outils de post-traitement figurent dans la partie Automatiser la mise en forme.

Un projet évolutif et ouvert aux retours des utilisateurs

Pour l'instant, le projet CSL/Clio est surtout informé par ma pratique de doctorant en histoire du Proche-Orient médiéval. Il est possible que je n'aie pas rencontré les mêmes problèmes que vous, que je n'aie pas eu les mêmes besoins. Si, par exemple, vous trouvez un bug dans les outils proposés, si certains passages de ce guide ne vous paraissent pas clair, si vous avez besoin d'un style de revue qui n'est pas fourni, si les outils de post-traitement n'effectuent pas une tâche dont vous avez besoin, ou si vous souhaitez participer, n'hésitez pas à me contacter via le dépôt du projet.

Gérer ses données bibliographiques avec Zotero

Pour pouvoir utiliser les styles de CSL/Clio, il est tout d'abord primordial de bien enregistrer sa bibliographie dans son gestionnaire. Dans cette partie, nous allons tout d'abord indiquer quelques fonctionnalités auxquelles nous ferons référence par la suite, puis nous allons indiquer les conventions utilisées par CSL/Clio pour l'enregistrement des données bibliographiques. Comme le reste de ce manuel, cette section prend l'exemple de Zotero parce que c'est le logiciel que j'utilise. Si vous utilisez un autre logiciel et que vous constatiez des différences, n'hésitez pas à me les signaler : je me ferai un plaisir de les indiquer dans ce guide.

Utilisation avancée de Zotero

Parmi les fonctionnalités de Zotero que nous allons passer en revue, seules les trois premières sont indispensables.

Indications de mise en forme dans une valeur de champ

Il est possible de mettre certaines parties des valeurs que vous renseignez dans les champs en italiques, gras, petites capitales, indice ou exposant. C'est utile, notamment, lorsqu'un titre cite un autre titre, comme dans la [@fig:titre-dans-titre] (noter que, dans ce cas, si le titre principal était en italiques, Dialogica polymorpha antiiudaica serait en caractères droits).

Utilisations de balises pour mettre en valeur un titre cité dans un autre titre{#fig:titre-dans-titre}

Vous trouverez plus d'informations ici. Bien que cette fonctionnalité ne fasse pas partie des spécifications CSL, elle est supportée par de nombreux processeurs, avec quelques variantes : voir pour citeproc (utilisé par Pandoc) et citeproc-js (utilisé par Zotero et d'autres gestionnaires de bibliographie).

Champ Extra

L'interface de Zotero contient un champ Extra dans lequel l'utilisateur peut renseigner des variables qui ne sont pas prévues dans les champs proposés par défaut pour le type de document sélectionné. La syntaxe utilisée est variable: valeur, chaque variable étant séparée de la précédente par un passage à la ligne. Une valeur peut contenir des espaces. Pour citer un individu, il faut séparer son nom de son prénom par deux barres verticales (Altgr+6 sur un clavier AZERTY). Si une variable contient plusieurs valeurs (par exemple editor), il faut un enregistrement complet par valeur. Le nom de la variable est celui prévu dans les spécifications CSL, pas celui affiché dans l'interface de Zotero !

Exemples :

annote: Titre de la source
editor: Nom || Prénom
annote: "Titre de la source"
Éditeur: Nom || Prénom Éditeur: Nom || Prénom, Autrenom || Autreprénom

Intervalles de dates

Le champ Date ne supporte pas les intervalles tels que « 20092011 ». Lorsque vous entrez plusieurs nombres séparés par des tirets, Zotero les interprète comme des indications de jour, mois et année. Pour indiquer un intervalle de date dans Zotero, vous devez laisser le champ Date vide et renseigner la date dans le champ Extra comme valeur de la variable issued en utilisant la syntaxe année-mois-jour/année-mois-jour, où mois et jour sont optionnels et où les deux dates doivent compter le même nombre d'éléments.

Exemples :

issued: 1999-09/1999-12
issued: 1999-09/2000-01
issued: 1999/2000
issued: 1999-09/12
issued: 1999-09/2000

Console JavaScript

Une console JavaScript est accessible dans l'interface de Zotero via le menu Outils > Développeur > Run JavaScript. Elle permet d'automatiser certaines tâches laborieuses dans la gestion de la base de données bibliographique, et peut être utile si vous avez besoin de modifier de manière systématique l'enregistrement de certaines informations pour utiliser les styles de CSL/Clio. À titre d'exemple, il fut un temps où j'enregistrais les titres de sources dans le champ Résumé ; lorsque j'ai dû les transférer de la variable abstract (correspondant au champ Résumé) à la variable annote (à enregistrer dans Extra), j'ai pu le faire en utilisant le code suivant (les lignes commençant par // sont des commentaires que j'ai ajoutés pour expliquer le déroulement de l'algorithme) :

// Récupérer la collection sélectionnée dans l'interface.
var collection = ZoteroPane.getSelectedCollection();
// Récupérer les notices dans la collection.
var items = collection.getChildItems();
// Pour chaque notice...
for (let item of items) {
  // Récupérer la valeur du champ Résumé.
  let sourceName = item.getField('abstractNote')
  // Passer directement à la notice suivante si cette
  // valeur est nulle.
  if (!sourceName) continue
  // Si cette valeur est renseignée, récupérer la
  // valeur du champ Extra.
  let extraField = item.getField('extra')
  // Ajouter à cette valeur un passage à la ligne (\n),
  // puis "annote: ", puis la valeur de Résumé.
  item.setField('extra', extraField + '\nannote: ' + sourceName)
  // Vider le champ Résumé.
  item.setField('abstractNote', '')
  // Sauvegarder le résultat.
  item.saveTx()
}

On pourra trouver sur le site d'apprentissage de la Fondation Mozilla des ressources sur JavaScript (seules les connaissances les plus basiques sont requises). Le site de Zotero contient une introduction et de nombreux exemples. N'hésitez pas à demander de l'aide !

Attention : avant d'utiliser la console, faites une sauvegarde de votre répertoire de données, dont l'emplacement peut être trouvé via le menu Édition > Préférences > Avancées > Fichiers et dossiers. Les modifications ne sont pas réversibles ! Après avoir appliqué vos modifications, il peut être judicieux de cliquer sur Vérifier l'intégrité de la base de données dans le même menu.

Export d'une collection en format CSL JSON

Zotero permet également, par un simple clic droit, d'exporter une collection dans le format de votre choix. Vous pouvez ainsi exporter une collection dans un fichier texte, opérer des modifications automatiques et réimporter le fichier obtenu dans Zotero. Dans ce cas, le format CSL JSON est à préférer car il est facile à comprendre et utilise les variables de CSL. Notez toutefois que vous perdrez vos notes, marqueurs et fichiers attachés si vous procédez ainsi.

Listes d'abréviations

CSL ne propose qu'un mécanisme rudimentaire pour les abréviations : la variable container-title-short. D'une part, cette variable n'est pas prévue pour les collections ; d'autre part, son utilité est diminué par le fait que les revues et les éditeurs divergent quant aux abréviations à utiliser. Pandoc et Zotero fournissent tous deux un mécanisme pour abréger automatiquement les titres selon une liste fournie par l'utilisateur. Dans les deux cas, il faut fournir un fichier JSON présentant la structure suivante :

{ 
    "default": {
        "nom-de-la-variable-a-abreger": {
            "Titre long": "Abrev",
            "Titre long 2": "Abrev2"
        },
        "nom-autre-variable": {
            "Titre long 3": "Abrev3"
        }
    }
}

Pour Pandoc, son utilisation est assez simple : il suffit de reprendre cette structure, d'indiquer les noms de revues ou de collections telles qu'elles apparaissent dans la base de données et d'utiliser l'option --citation-abbreviations ou la métadonnées citation-abbreviations pour indiquer au programme où se trouve le fichier d'abréviations à utiliser lors de son invocation. Sachant que les noms de revues sont représentés par la variable container-title, un fichier court mais complet pourrait ressembler à :

{ 
    "default": {
        "container-title": {
            "Revue de l'histoire religieuse": "RHR",
            "Jerusalem Studies in Arabic and Islam": "JSAI"
        },
        "collection-title": {
            "Sources chrétiennes": "SC"
        }
    }
}

Pour Zotero, le cas est plus complexe. Il faut en effet transformer les titres complets selon les règles suivantes :

  • Passer toutes les capitales en minuscules ;
  • Supprimer les mots suivants : and et y und la le the l' d' ;
  • Supprimer les caractères suivants : ! " # $ % & ' ( * ) + , . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~ ;
  • Lorsque plusieurs espaces se suivent, n'en conserver qu'un.

En outre, il faut placer en début de document l'objet suivant :

"info": {
    "URI": "http://www.zotero.org/abbreviations/nom.json",
    "name": "Nom du fichier d'abréviations"
}

Si l'on reprend l'exemple précédent, cela donne :

{
    "info": {
        "URI": "http://www.zotero.org/abbreviations/nom.json",
        "name": "Nom du fichier d'abréviations"
    },
    "default": {
        "container-title": {
            "revue de histoire religieuse": "RHR",
            "jerusalem studies in arabic islam": "JSAI"
        },
        "collection-title": {
            "sources chrétiennes": "SC"
        }
    }
}

Pour que le fichier soit pris en compte, il doit être enregistré obligatoirement sous le nom abbreviations.json à la racine de votre répertoire de données, dont l'emplacement peut être trouvé via le menu Édition > Préférences > Avancées > Fichiers et dossiers. Il faut donc conserver l'ensemble des fichiers d'abréviations avec chacun son titre dans un répertoire distinct ou dans le même répertoire et copier celui que vous voulez utiliser en donnant ce nom à la copie. À la suite de cette opération, Zotero doit être redémarré s'il est ouvert pour que le changement de fichier soit pris en compte. Enfin, dans votre logiciel de traitement de texte, il faut ouvrir les préférences de l'extension Zotero et cocher la case Utiliser les abréviations MEDLINE des titres de revues (voir [@fig:preferences-medline]) ; si cette option n'apparaît pas, c'est que le style n'utilise pas les formes abrégées.

Quoique je n'aie pas testé d'autres possibilités, d'autres variables peuvent être abrégées, par exemple l'éditeur (variable publisher). Si les abréviations que vous avez prévues ne fonctionnent pas, vérifiez que le style CSL que vous utilisez prévoit l'utilisation des formes abrégés (p. ex. <text variable="container-title" form="short"/>) : si ce n'est pas le cas, en fonction de la provenance du style, vous pouvez écrire à la liste CSL/Clio, créer un ticket sur le site du projet ou suivre les instructions pour demander un changement dans un style hébergé par Zotero.

Préférences du document dans l'extension Zotero pour LibreOffice{#fig:preferences-medline}

Demander de l'aide et signaler des bugs

Si vous rencontrez un problème qui concerne Zotero et non CSL/Clio, vous pouvez tout d'abord consulter la documentation et la FAQ et faire une recherche dans le forum. Si vous ne trouvez toujours pas de solution, cette page vous indiquera comment demander de l'aide.

Enregistrement des documents selon les conventions de CSL/Clio

Cette section passe en revue les stratégies d'encodage propres à CSL/Clio. Pour plus de clarté, vous pouvez vous référer à la collection de test du projet, que vous pouvez importer dans Zotero.

Rôles

Sources primaires

Le type d'une source primaire est celui de la publication qui la contient. Les informations relatives à cette publication sont enregistrées normalement, à l'exception des points suivants :

  • L'auteur de la publication est indiqué comme éditeur ou traducteur ; pour certains types, comme Thèse, cette information doit être enregistrée dans Extra ;
  • Le champ Auteur doit être réservé à l'auteur de la source ;
  • Si la source est publiée dans un chapitre d'ouvrage collectif, l'éditeur du livre doit être renseigné dans le champ Auteur du livre ;
  • Si la source est publliée dans une compilation d'articles d'un ou plusieurs auteurs sans qu'il n'y ait d'éditeur, les auteurs du livre doivent être enregistrés dans Extra avec la variable container-author (voir [@fig:enregistrement-doctrina-jacobi]).

Les informations suivantes peuvent être ajoutées :

  • Le titre de la source doit être renseigné dans Extra comme valeur de la variable annote ;
  • Si le titre de la source et celui de la publication sont redondants, utilisez la variable year-suffix dans Extra avec une valeur telle que « titre redondant ». Selon le style utilisé, cela conduira à afficher seulement l'un des deux titres dans la bibliographie. (N.-B. : La variable year-suffix doit être réservée à cet usage.) ;
  • Indiquer les noms de répertoires dans Extra avec la variable references (par exemple, CPG 1536). La référence entrée sera affichée telle quelle dans la bibliographie : s'il vous faut une espace insécable entre le nom du répertoire et le numéro, il faut que l'espace soit insécable dans votre enregistrement. Notez que CSL permet seulement d'afficher ou non cette variable, mais non de choisir entre plusieurs valeurs.

Enregistrement de la Doctrina Jacobi dans Zotero{#fig:enregistrement-doctrina-jacobi}

Manuscrits

Actes de colloque, revues, sites webs, blogs

Ouvrages traduits

Ouvrages en plusieurs volumes

Classement de la bibliographie en catégories

Apostrophes et guillemets

Localisation d'un passage dans le document cité

Pratiques à éviter

Faire confiance à l'enregistrement automatique des références à partir du navigateur

Mettre en forme les informations en fonction d'un style donné

Automatiser la mise en forme

Installation

Fichiers CSL

Filtres

Macros

Ajout d'une citation et d'une bibliographie

Utilisation des outils de post-traitement

Filtres

Macros

Programmer de nouveaux styles

Ressources fournies par le projet CSL

Directives spécifiques à CSL/Clio