Remplacement des espaces insécables par fines avant ;?!

This commit is contained in:
Bastien Dumont 2021-02-10 01:32:23 +01:00
parent bca23b9652
commit 7908cc97da

View File

@ -18,8 +18,8 @@ top-level-division: part
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*](https://www.zotero.org/), et mettre en forme automatiquement leurs références et leurs bibliographies grâce aux processeurs CSL existants. Il comprend trois volets :
* 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 ;
* 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. Il est possible de la parcourir rapidement, voire de la laisser de côté dans un premier temps, puis d'y 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*.
@ -35,23 +35,23 @@ Les outils fournis par *CSL/Clio* peuvent être utilisés soit avec *Pandoc*, so
*Citation Style Language* (CSL) est un format de fichier basé sur [XML](https://www.w3.org/standards/xml/core) 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 traiter 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 utilisations 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 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 de fichier.
Les règles que doit respecter tout fichier CSL (variables utilisées, syntaxe,...) sont spécifiées dans un [*schéma*](https://github.com/citation-style-language/schema/tree/v1.0.1), qui est une représentation formelle destinée à l'ordinateur plutôt qu'à un être 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*](http://docs.citationstyles.org/en/1.0.1/specification.html).
L'utilisation de CSL pour la mise en forme des citations met en œuvre quatre outils :
* Un gestionnaire de bibliographie qui se fonde 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*](https://www.zotero.org/), mais [d'autres logiciels supportent CSL](https://en.wikipedia.org/wiki/Comparison_of_reference_management_software) ;
* 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 cours (les deux principaux dépôts étant [celui du projet CSL](https://github.com/citation-style-language/styles) et [celui de Zotero](https://www.zotero.org/styles)) ;
* 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 gestionnaire de bibliographie qui se fonde 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*](https://www.zotero.org/), mais [d'autres logiciels supportent CSL](https://en.wikipedia.org/wiki/Comparison_of_reference_management_software) ;
* 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 cours (les deux principaux dépôts étant [celui du projet CSL](https://github.com/citation-style-language/styles) et [celui de Zotero](https://www.zotero.org/styles)) ;
* 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 (format DOCX, ODT, mais aussi, selon les processeurs, HTML, LaTeX et bien d'autres...).
De nombreux gestionnaires de bibliographie intègrent un processeur CSL, le plus souvent [*citeproc-js*](https://citeproc-js.readthedocs.io/en/latest/), et proposent des greffons 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 greffon 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 des exemples de greffons [sur le site de *Zotero*](https://www.zotero.org/support/word_processor_integration). [D'autres processeurs existent](https://citationstyles.org/developers/#/csl-processors), notamment celui utilisé par [*Pandoc*](https://pandoc.org/).
De nombreux gestionnaires de bibliographie intègrent un processeur CSL, le plus souvent [*citeproc-js*](https://citeproc-js.readthedocs.io/en/latest/), et proposent des greffons 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 greffon 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 des exemples de greffons [sur le site de *Zotero*](https://www.zotero.org/support/word_processor_integration). [D'autres processeurs existent](https://citationstyles.org/developers/#/csl-processors), notamment celui utilisé par [*Pandoc*](https://pandoc.org/).
L'utilisation de cette chaîne opératoire pour la mise en forme des citations comporte de nombreux avantages sur un travail purement manuel. En automatisant le processus, 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 réduit 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é.
L'utilisation de cette chaîne opératoire pour la mise en forme des citations comporte de nombreux avantages sur un travail purement manuel. En automatisant le processus, 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 réduit 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 est un format pérenne. Les spécifications sont publiées sous license [Creative Commons Attribution-ShareAlike](https://creativecommons.org/licenses/by-sa/3.0/deed.fr), une license [libre](https://www.gnu.org/philosophy/free-sw.html) qui leur garantit une large diffusion. Les processeurs et les logiciels de gestion de bibliographie qui l'utilisent 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](https://github.com/citation-style-language/test-suite) 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](https://github.com/citation-style-language/utilities/blob/master/update-styles-0.8.1-to-1.0.sh) lors du passage de la version 0.8 à la version 1.0 des spécifications.
Enfin, CSL est un format pérenne. Les spécifications sont publiées sous license [Creative Commons Attribution-ShareAlike](https://creativecommons.org/licenses/by-sa/3.0/deed.fr), une license [libre](https://www.gnu.org/philosophy/free-sw.html) qui leur garantit une large diffusion. Les processeurs et les logiciels de gestion de bibliographie qui l'utilisent 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](https://github.com/citation-style-language/test-suite) 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](https://github.com/citation-style-language/utilities/blob/master/update-styles-0.8.1-to-1.0.sh) lors du passage de la version 0.8 à la version 1.0 des spécifications.
> **Pour aller plus loin :**
>
@ -74,11 +74,11 @@ Bien que ce point ne soit pas explicité, les spécifications actuelles de CSL (
Il semblerait que [*citeproc-js* supporte les cas les plus simples de localisations selon plusieurs critères](https://forums.zotero.org/discussion/comment/350840). Je n'ai pas réussi à reproduire l'exemple donné.
]. 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 localiser un passage dans une source à la fois selon les divisions internes de la source (p. ex. VI, 5) et selon la pagination de l'édition publiée. 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](https://github.com/citation-style-language/schema/issues/342).
] ; ensuite parce que cette lacune oblige à mettre en forme une partie des localisateurs directement dans le champ *Suffixe*, ce qui oblige, le cas échéant, à les modifier à la main. Par ailleurs, CSL prévoit une grande variété de critères de localisation dans les citations, mais pas dans la bibliographie finale : 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.
] ; ensuite parce que cette lacune oblige à mettre en forme une partie des localisateurs directement dans le champ *Suffixe*, ce qui oblige, le cas échéant, à les modifier à la main. Par ailleurs, CSL prévoit une grande variété de critères de localisation dans les citations, mais pas dans la bibliographie finale : 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*](double-locator-zotero.png){#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](https://www.zotero.org/support/kb/journal_abbreviations) 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 officiellement de fournir une liste d'abréviations en plus du fichier CSL [en utilisant un mécanisme généralisable à toutes les variables](https://pandoc.org/MANUAL.html#specifying-a-citation-style) (dont `collection-title`). *Zotero* devrait aussi acquérir cette fonctionnalité dans le futur ; en attendant, [une solution existe déjà](https://forums.zotero.org/discussion/comment/155854/#Comment_155854) mais elle n'est pas officiellement documentée et est assez délicate à metre en œuvre. Nous l'expliquons [plus loin](#listes-dabréviations).
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](https://www.zotero.org/support/kb/journal_abbreviations) 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 officiellement de fournir une liste d'abréviations en plus du fichier CSL [en utilisant un mécanisme généralisable à toutes les variables](https://pandoc.org/MANUAL.html#specifying-a-citation-style) (dont `collection-title`). *Zotero* devrait aussi acquérir cette fonctionnalité dans le futur ; en attendant, [une solution existe déjà](https://forums.zotero.org/discussion/comment/155854/#Comment_155854) mais elle n'est pas officiellement documentée et est assez délicate à metre en œuvre. Nous l'expliquons [plus loin](#listes-dabréviations).
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.
@ -88,10 +88,10 @@ Heureusement, les membres du projet CSL sont parfaitement conscients de ces limi
> **En savoir plus sur l'évolution de CSL :**
>
> * Le blog de CSL contient un [article très synthétique sur les évolutions envisagées](https://citationstyles.org/2020/07/11/seeking-public-comment-on-CSL-1-0-2/) ;
> * Sur la version 1.0.2, en gardant à l'esprit qu'il s'agit encore d'un travail en cours, quoique très avancé, on peut prendre connaissance des [spécifications](https://github.com/citation-style-language/documentation/blob/master/specification.rst). Un document synthétique listant les évolutions par rapport à la version 1.0.1 est disponible [ici](https://docs.google.com/document/d/1wY1cOOamDYYh8VNW7h_uleqieBDGOa_LYsRiVdQy1RI/) ;
> * Sur la version 1.1, on peut consulter la [liste des problèmes identifiés ou en cours de traitement](https://github.com/citation-style-language/schema/milestone/1) ;
> * À plus long terme encore, [quelques objectifs ont été définis pour une version 1.2](https://github.com/citation-style-language/schema/labels/1.2) ;
> * Le blog de CSL contient un [article très synthétique sur les évolutions envisagées](https://citationstyles.org/2020/07/11/seeking-public-comment-on-CSL-1-0-2/) ;
> * Sur la version 1.0.2, en gardant à l'esprit qu'il s'agit encore d'un travail en cours, quoique très avancé, on peut prendre connaissance des [spécifications](https://github.com/citation-style-language/documentation/blob/master/specification.rst). Un document synthétique listant les évolutions par rapport à la version 1.0.1 est disponible [ici](https://docs.google.com/document/d/1wY1cOOamDYYh8VNW7h_uleqieBDGOa_LYsRiVdQy1RI/) ;
> * Sur la version 1.1, on peut consulter la [liste des problèmes identifiés ou en cours de traitement](https://github.com/citation-style-language/schema/milestone/1) ;
> * À plus long terme encore, [quelques objectifs ont été définis pour une version 1.2](https://github.com/citation-style-language/schema/labels/1.2) ;
> * Voir aussi la [liste des propositions pour de futures versions de CSL](https://github.com/orgs/citation-style-language/projects/3) (toutes versions confondues).
## Objectifs de *CSL/Clio*
@ -102,11 +102,11 @@ Actuellement, pour bénéficier malgré tout des avantages de CSL, chacun doit d
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 dans *Zotero* la publication dans laquelle elle est éditée, choisir un style assez proche de celui de la revue visée et ajouter à la main l'auteur et le nom de la source, en plus des autres ajustements requis. Cette solution n'implique aucune programmation, 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 rigoureusement les spécifications de CSL. Elle ne permet toutefois pas de tirer pleinement profit des possibilités de CSL et impose un travail fastidieux de vérification et de correction, avec les risques d'erreur que cela implique ;
#. 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*)^[Le logiciel [*Juris-M*](https://juris-m.github.io/), basé sur *Zotero*, fait un usage important de cette possibilité et utilise même des extensions à la syntaxe de CSL qui sont implémentées dans *citeproc-js*. Il offre des fonctionnalités intéressantes, mais [celles qui pourraient être utilisées pour les références aux sources primaires](https://forums.zotero.org/discussion/81644/classical-sources-numbers-and-pages) ne résolvent pas tous les problèmes et risquent d'en poser pour la bibliographie finale. En outre, le format CSL-M ne comble pas toutes les lacunes de CSL pour les historiens et n'est compatible qu'avec *citeproc-js*.] ;
#. 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 dans *Zotero* la publication dans laquelle elle est éditée, choisir un style assez proche de celui de la revue visée et ajouter à la main l'auteur et le nom de la source, en plus des autres ajustements requis. Cette solution n'implique aucune programmation, 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 rigoureusement les spécifications de CSL. Elle ne permet toutefois pas de tirer pleinement profit des possibilités de CSL et impose un travail fastidieux de vérification et de correction, avec les risques d'erreur que cela implique ;
#. 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*)^[Le logiciel [*Juris-M*](https://juris-m.github.io/), basé sur *Zotero*, fait un usage important de cette possibilité et utilise même des extensions à la syntaxe de CSL qui sont implémentées dans *citeproc-js*. Il offre des fonctionnalités intéressantes, mais [celles qui pourraient être utilisées pour les références aux sources primaires](https://forums.zotero.org/discussion/81644/classical-sources-numbers-and-pages) ne résolvent pas tous les problèmes et risquent d'en poser pour la bibliographie finale. En outre, le format CSL-M ne comble pas toutes les lacunes de CSL pour les historiens et n'est compatible qu'avec *citeproc-js*.] ;
#. 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* met en œuvre 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.
Le projet *CSL/Clio* met en œuvre 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.
Les choix d'encodage opérés dans ce cadre sont exposées dans la partie [*Gérer ses données bibliographiques avec* Zotero](#gérer-ses-données-bibliographiques-avec-zotero).
@ -120,10 +120,10 @@ Considérons, par exemple, une structure non modulaire dont on pourrait exprimer
Pour toutes les citations, 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 ;
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 ;
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.
@ -139,8 +139,8 @@ Si l'on veut modifier un seul aspect (p. ex. retirer les guillemets d'un titre
~~~
Pour toutes les 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 "nom de l'auteur" ;
— Appliquer la macro "titre" ;
— Appliquer la macro "publication".
Macro "nom de l'auteur" :
@ -166,8 +166,8 @@ Les conventions suivies dans *CSL/Clio* sont exposées dans la partie [*Directiv
### 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](https://pandoc.org/lua-filters.html) (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 *Microsoft Word* ; heureusement, la suite *LibreOffice* est gratuite et traite assez bien les documents au format DOCX rédigés sous *Word*^[
<!-- À supprimer si le bug est résolu. -->Assez bien, mais pas parfaitement. En particulier, *LibreOffice* corrompt les références automatiques aux numéros de figures, tableaux et notes (mais pas de page) dans les documents DOCX. Il faut donc remplacer dans *Word* les champs automatiques correspondants par les mêmes chiffres insérés manuellement avant d'ouvrir le document sous *LibreOffice* ; il semblerait que cela puisse se faire en sélectionnant le champ et en appuyant sur `Crtl+Shift+F9`. Heureusement, c'est une fonctionnalité qu'on utilise généralement peu à l'échelle d'un article.
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](https://pandoc.org/lua-filters.html) (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 *Microsoft Word* ; heureusement, la suite *LibreOffice* est gratuite et traite assez bien les documents au format DOCX rédigés sous *Word*^[
<!-- À supprimer si le bug est résolu. -->Assez bien, mais pas parfaitement. En particulier, *LibreOffice* corrompt les références automatiques aux numéros de figures, tableaux et notes (mais pas de page) dans les documents DOCX. Il faut donc remplacer dans *Word* les champs automatiques correspondants par les mêmes chiffres insérés manuellement avant d'ouvrir le document sous *LibreOffice* ; il semblerait que cela puisse se faire en sélectionnant le champ et en appuyant sur `Crtl+Shift+F9`. Heureusement, c'est une fonctionnalité qu'on utilise généralement peu à l'échelle d'un article.
]. 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 section [*Automatiser la mise en forme*](#automatiser-la-mise-en-forme).
@ -176,7 +176,7 @@ Les informations sur les outils de post-traitement figurent dans la section [*Au
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 et 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, vous pouvez :
* Écrire à la liste mail du projet : <!-- REF --> ;
* Écrire à la liste mail du projet : <!-- REF --> ;
* [Ouvrir un ticket](<!-- REF -->) sur le dépôt du projet (plus spécifiquement pour les bugs ou les demandes de fonctionnalités supplémentaires).
# Gérer ses données bibliographiques avec *Zotero*
@ -229,7 +229,7 @@ Le champ *Date* ne supporte pas les intervalles tels que « 20092011 ». Lo
Vous pouvez avoir besoin qu'une même information soit enregistrée de plusieurs manières différentes dans votre gestionnaire de bibliographie : par exemple si vous écrivez dans plusieurs langues différentes, ce qui implique de traduire certaines informations telles que le lieu d'édition ou la valeur de la variable [`original-publisher`](#documents-traduits), ou si vous voulez renvoyer à un même manuscrit par des abréviations différentes selon les articles où vous le citez. Dans ce cas, vous pouvez créer une collection spécifique pour chacun de vos travaux en cours en plus des collections thématiques que vous alimentez au fil de vos lectures. Pour alimenter ces collections par travaux, vous avez deux possibilités :
* Copier par un simple « cliquer-déposer » les documents utilisés de la collection thématique où ils se trouvent vers la collection dédiée à votre travail en cours : dans ce cas, la notice copiée sera la même que celle qui se trouve dans la collection d'origine, si bien que toute modification dans une collection modifiera aussi l'enregistrement dans l'autre. Cette méthode ne doit donc être utilisée que si vous n'avez pas besoin de modifier la notice ;
* Copier par un simple « cliquer-déposer » les documents utilisés de la collection thématique où ils se trouvent vers la collection dédiée à votre travail en cours : dans ce cas, la notice copiée sera la même que celle qui se trouve dans la collection d'origine, si bien que toute modification dans une collection modifiera aussi l'enregistrement dans l'autre. Cette méthode ne doit donc être utilisée que si vous n'avez pas besoin de modifier la notice ;
* Faire un clic droit sur le document dans le panneau central, cliquer sur *Dupliquer le document* et modifier comme désiré la deuxième notice ainsi créée. Vous pouvez ensuite copier cette seconde notice dans la collection dédiée au travail en cours puis la supprimer de la collection thématique où vous l'avez créée. Vous conservez ainsi la notice d'origine intacte dans la collection thématique. Dans ce cas, je conseillerais de créer une note ou marqueur dans la deuxième notice pour indiquer qu'il s'agit d'une version adaptée aux contraintes spécifiques du travail que vous êtes en train de mener.
Le fait de constituer une collection spécifique pour chaque travail vous permettra non seulement de retrouver plus facilement les documents quand vous voudrez les citer, mais aussi de pouvoir vérifier facilement si toutes les notices qui se trouvent dans cette collection présentent bien les caractéristiques souhaitées.
@ -246,7 +246,7 @@ Il est possible que certaines expressions insérées automatiquement, telles que
#### 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) :
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) :
~~~ {.javascript}
// Obtenir la collection sélectionnée dans l'interface.
@ -273,9 +273,9 @@ for (let item of items) {
}
~~~
On pourra trouver sur [le site d'apprentissage de la Fondation Mozilla](https://developer.mozilla.org/fr/docs/Apprendre/JavaScript) des ressources sur JavaScript (seules les connaissances les plus basiques sont requises, et la maîtrise d'HTML et de CSS n'est pas utile pour *Zotero*). Le [site de *Zotero*](https://www.zotero.org/support/dev/client_coding/javascript_api) contient une introduction et de nombreux exemples. N'hésitez pas à [demander de l'aide](#demander-de-laide-et-signaler-des-bugs) !
On pourra trouver sur [le site d'apprentissage de la Fondation Mozilla](https://developer.mozilla.org/fr/docs/Apprendre/JavaScript) des ressources sur JavaScript (seules les connaissances les plus basiques sont requises, et la maîtrise d'HTML et de CSS n'est pas utile pour *Zotero*). Le [site de *Zotero*](https://www.zotero.org/support/dev/client_coding/javascript_api) contient une introduction et de nombreux exemples. N'hésitez pas à [demander de l'aide](#demander-de-laide-et-signaler-des-bugs) !
**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.
**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, modification et réimport d'une collection au format CSL JSON
@ -283,7 +283,7 @@ On pourra trouver sur [le site d'apprentissage de la Fondation Mozilla](https://
#### 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 souvent 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](https://www.json.org/json-fr.html) structuré de la manière suivante :
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 souvent 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](https://www.json.org/json-fr.html) structuré de la manière suivante :
~~~
{
@ -317,9 +317,9 @@ CSL ne propose qu'un mécanisme rudimentaire pour les abréviations : la variab
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 : ! " # $ % & ' ( * ) + , . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~ ;
* 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 :
@ -351,7 +351,7 @@ Si l'on reprend l'exemple précédent, cela donne :
}
~~~
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é 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 du greffon *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.
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é 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 du greffon *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évoie l'utilisation des formes abrégés (p. ex. `<text variable="container-title" form="short"/>`) : si ce n'est pas le cas, vous pouvez demander de l'aide ou une modification, en fonction de la provenance du style, soit à [*CSL/Clio*](#un-projet-évolutif-et-ouvert-aux-retours-des-utilisateurs), soit à [*Zotero*](#demander-de-laide-et-signaler-des-bugs).
@ -371,8 +371,8 @@ Cette section passe en revue les stratégies d'encodage propres à *CSL/Clio*. P
L'indication des rôles pose généralement peu de problèmes. Le cas des sources primaires mis à part, il suffit de respecter trois règles :
* Un éditeur d'ouvrage collectif doit être indiqué comme *Éditeur* (voir cependant [ci-dessous](#sources-primaires) le cas d'une source publiée dans un ouvrage collectif) ;
* Un collaborateur doit être désigné comme *Directeur de collection* : en effet, CSL ne prévoit pas de variable `collaborator`, aussi le champ *Collaborateur* de *Zotero* n'est-il pas pris en compte par les processeurs ;
* Un éditeur d'ouvrage collectif doit être indiqué comme *Éditeur* (voir cependant [ci-dessous](#sources-primaires) le cas d'une source publiée dans un ouvrage collectif) ;
* Un collaborateur doit être désigné comme *Directeur de collection* : en effet, CSL ne prévoit pas de variable `collaborator`, aussi le champ *Collaborateur* de *Zotero* n'est-il pas pris en compte par les processeurs ;
* Si une notice relative à un article contenu dans un ensemble plus vaste porte la mention d'un collaborateur, celui-ci est toujours considéré comme ayant collaboré à la rédaction du document sur lequel porte la notice, non de l'ensemble dans lequel il est publié. Par exemple, l'enregistrement reproduit dans la [@fig:collaborateur-avec-container] est rendu ainsi selon les normes de la *Revue des études byzantines* (en utilisant un [fichier d'abréviations](#listes-dabréviations)) :
> P. [Andrist]{.smallcaps}, avec la collaboration de V. [Déroche]{.smallcaps}, Questions ouvertes autour des *Dialogica polymorpha antiiudaica*, dans C. [Zuckermann]{.smallcaps} (éd.), *Constructing the Seventh Century* (TM 17), Paris 2013, p. 926.
@ -384,18 +384,18 @@ L'indication des rôles pose généralement peu de problèmes. Le cas des source
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 publié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]) ;
* 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 publié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]) ;
* *Titre abrégé* est interprété comme le titre abrégé de la source, non de la publication.
Les informations suivantes peuvent être ajoutées :
* L'auteur de la source doit être renseigné dans le champ *Auteur* ;
* Le titre de la source doit être renseigné dans *Extra* comme valeur de la variable `annote` ;
* L'auteur de la source doit être renseigné dans le champ *Auteur* ;
* 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.\
**Attention :** La variable `year-suffix` doit être réservée à cet usage ;
**Attention :** 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 : `references: CPG 1536`). La référence 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 espace doit être insécable dans votre enregistrement. Notez que CSL permet seulement d'afficher ou non cette variable, pas de choisir entre plusieurs valeurs.
Les champs *Éditeur* et *Traducteur* ne sont pas disponibles pour certains types de documents dans l'interface de *Zotero*. Quand vous enregistrez, par exemple, une source publiée dans une thèse, vous devez renseigner les variables `editor` et `translator` dans *Extra*.
@ -410,12 +410,12 @@ Vous trouverez un exemple assez complet dans la [@fig:enregistrement-doctrina-ja
Pour un manuscrit, renseigner :
* Le nom de la ville de conservation dans *Lieu* ;
* La bibliothèque dans *Archive* ;
* Le dépôt dans *Localisation dans l'archive* ;
* Le numéro dans *Cote* ;
* La référence dans un catalogue dans *Catalogue de bibl.* ;
* L'identifiant dans un répertoire (comme Diktyon) dans *Extra* comme valeur de la variable `scale` ;
* Le nom de la ville de conservation dans *Lieu* ;
* La bibliothèque dans *Archive* ;
* Le dépôt dans *Localisation dans l'archive* ;
* Le numéro dans *Cote* ;
* La référence dans un catalogue dans *Catalogue de bibl.* ;
* L'identifiant dans un répertoire (comme Diktyon) dans *Extra* comme valeur de la variable `scale` ;
* La forme abrégée de la référence au manuscrit dans *Extra* comme valeur de la variable `container-title-short` et/ou une forme standard (pas utilisée directement par les styles) comme valeur de `container-title` (voir le dernier paragraphe).
**Attention :** Les valeurs entrées dans *Catalogue de bibl.* et `scale` seront affichées telles quelles. Si vous souhaitez insérer une espace insécable, il convient de le faire dans la base de données bibliographique. Notez que certaines macros *LibreOffice* appliquent une mise en forme supplémentaire quand elle est requise (par exemple, pour la *Revue des Études byzantines*, les chaînes de caractères « CPG » et « BHG » sont mises en italiques).
@ -444,10 +444,10 @@ Pour les actes de colloque, vous pouvez indiquer comme valeur de la variable `sc
Pour des traductions de la littérature secondaire, on indiquera :
* Le nom du traducteur dans *Traducteur* ;
* La langue accompagnée de la préposition dans *Extra* comme valeur de `original-publisher` ;
* Le lieu de publication de l'édition originale comme valeur de `original-publisher-place` ;
* Le titre d'origine comme valeur de `original-title` ;
* Le nom du traducteur dans *Traducteur* ;
* La langue accompagnée de la préposition dans *Extra* comme valeur de `original-publisher` ;
* Le lieu de publication de l'édition originale comme valeur de `original-publisher-place` ;
* Le titre d'origine comme valeur de `original-title` ;
* La date de la publication d'origine comme valeur de `original-date` (suivant les mêmes règles que [la variable `issued`](#intervalles-de-dates)).
Notez que le détournement de la variable `original-publisher` rend impossible l'enregistrement de l'éditeur de la publication originale. Si un style requiert cette information, il est envisageable d'adopter un traitement *ad hoc* pour cette variable, ce qui impliquerait de créer des [enregistrements parallèles](#créer-plusieurs-enregistrements-dun-même-document).
@ -466,8 +466,8 @@ Pour les documents écrits dans certaines langues telles que l'hébreu, il est f
Trois cas de figure sont à envisager :
* Pour citer l'ouvrage entier, il suffit d'indiquer le nombre de volumes dans le champ dédié. Si la publication est échelonnée sur plusieurs années, voir [comment indiquer un intervalle d'années](#intervalles-de-dates) ;
* Pour citer un volume de l'ouvrage qui ne porte pas lui-même de titre spécifique, il faut enregistrer le titre du livre dans *Titre* et le numéro de volume dans *Volume* (voir [@fig:volume-sans-titre-particulier]). Dans ce cas, à moins que vous ne souhaitiez indiquer l'année précise de publication du volume cité dans le cas d'un ouvrage paru en plusieurs fois, vous pouvez aussi utiliser la notice de l'ouvrage entier et indiquer le volume comme localisateur au moment de l'ajout de la citation, comme dans la [@fig:citation-volume] ;
* Pour citer l'ouvrage entier, il suffit d'indiquer le nombre de volumes dans le champ dédié. Si la publication est échelonnée sur plusieurs années, voir [comment indiquer un intervalle d'années](#intervalles-de-dates) ;
* Pour citer un volume de l'ouvrage qui ne porte pas lui-même de titre spécifique, il faut enregistrer le titre du livre dans *Titre* et le numéro de volume dans *Volume* (voir [@fig:volume-sans-titre-particulier]). Dans ce cas, à moins que vous ne souhaitiez indiquer l'année précise de publication du volume cité dans le cas d'un ouvrage paru en plusieurs fois, vous pouvez aussi utiliser la notice de l'ouvrage entier et indiquer le volume comme localisateur au moment de l'ajout de la citation, comme dans la [@fig:citation-volume] ;
* Pour citer un volume qui porte son propre titre, indiquer le titre du volume dans *Titre*, le numéro de volume dans *Volume* et le titre du livre entier dans *Extra* comme valeur de la variable `container-title` [@fig:volume-avec-titre-particulier]).
![Volume sans titre particulier dans *Zotero*](volume-sans-titre-particulier.png){#fig:volume-sans-titre-particulier}
@ -480,22 +480,22 @@ Trois cas de figure sont à envisager :
Les sources publiées dans la *Patrologie grecque*, la *Patrologie latine* et la *Patrologie orientale* doivent être enregistrées dans le type *Article de revue* :
* Il est possible de renseigner le titre de la source à la fois comme valeur de la variable `annote` et dans le champ *Titre* de manière à ce qu'il s'affiche dans le panneau central de *Zotero* ; dans ce cas, il faut utiliser la variable `year-suffix` comme expliqué [à propos des sources primaires](#sources-primaires) ;
* Le titre de la collection doit être renseigné dans *Publication* et le volume dans *Volume* ;
* Il est possible de renseigner le titre de la source à la fois comme valeur de la variable `annote` et dans le champ *Titre* de manière à ce qu'il s'affiche dans le panneau central de *Zotero* ; dans ce cas, il faut utiliser la variable `year-suffix` comme expliqué [à propos des sources primaires](#sources-primaires) ;
* Le titre de la collection doit être renseigné dans *Publication* et le volume dans *Volume* ;
* Les numéros de colonnes doivent être renseignés comme valeur de la variable `chapter-number`.
### Apostrophes et guillemets
Là où vous utilisez les caractères « droits » ASCII (i. e. `"` et `'`), les processeurs `citeproc-js` et `citeproc` choisissent automatiquement les guillemets typographiques correspondant à la langue dans laquelle vous écrivez (en français, « ou » et ') ; de même si vous utilisez les guillemets droits pour mettre en évidence une citation à l'intérieur d'une citation (`"il dit 'courir', je dis 'marcher'"` →  il dit “courir”, je dis “marcher” »*). Il convient de prendre garde à trois points :
Là où vous utilisez les caractères « droits » ASCII (i. e. `"` et `'`), les processeurs `citeproc-js` et `citeproc` choisissent automatiquement les guillemets typographiques correspondant à la langue dans laquelle vous écrivez (en français, « ou » et ') ; de même si vous utilisez les guillemets droits pour mettre en évidence une citation à l'intérieur d'une citation (`"il dit 'courir', je dis 'marcher'"` →  il dit “courir”, je dis “marcher” »*). Il convient de prendre garde à trois points :
* Si vous utilisez une [liste d'abréviations](#listes-dabréviations), veillez à ce que les enregistrements dans *Zotero* soient cohérents avec elle. En particulier, si vous importez les références à partir de votre navigateur ou utilisez des copier-coller, certains titres de revues ou de collections risquent de contenir des apostrophes typographiques^[
Dites aussi guillemets-apostrophes, car elles recouvrent aussi bien les apostrophes que les guillemets ouvrants à l'intérieur de citations en anglais. Voir le tableau répertoriant les différents encodages de l'apostrophe [sur Wikipedia](https://fr.wikipedia.org/wiki/Apostrophe_(typographie)#Informatique).
] : si vous ne les remplacez pas par des apostrophes ASCII (touche 4 du clavier AZERTY), le processeur ne reconnaîtra pas ces titres comme faisant partie de la liste d'abréviations^[
À moins, bien entendu, que vous n'y ayez également introduit ces apostrophes typographiques, auquel cas il faudra qu'elles soient présentes dans tous les enregistrements du titre correspondant dans *Zotero*.
]. Heureusement, la différence de forme entre les apostrophes ASCII et les apostrophes typographiques dans la police utilisée par *Zotero* (trait droit contre virgule) aide à repérer les anomalies ;
]. Heureusement, la différence de forme entre les apostrophes ASCII et les apostrophes typographiques dans la police utilisée par *Zotero* (trait droit contre virgule) aide à repérer les anomalies ;
* Dans les titres écrits en langues étrangères, si vous souhaitez que la typographie d'origine soit respectée, vous devez utiliser les caractères correspondants : par exemple `“Semper Vagus”: The Anatomy of a Mobile Monk` et non `"Semper Vagus": The Anatomy of a Mobile Monk`, qui serait rendu ainsi dans un article en français : *« Semper Vagus »: The Anatomy of a Mobile Monk*^[
Le champ *Langue* devrait permettre, dans un futur plus ou moins lointain, de différencier la mise en forme en fonction de la langue de rédaction de l'ouvrage, comme dans [Juris-M](https://juris-m.github.io/).
] ;
] ;
* Dans les titres écrits dans la langue dans laquelle vous rédigez, il est préférable d'utiliser les guillemets ASCII de manière à ce qu'ils soient convertis en guillemets intérieurs si le style utilisé place lui-même les titres entre guillemets.
**Attention :** `citeproc` de Pandoc convertit aussi les guillemets typographiques intérieurs du français (“ et ”). Prévoyez un filtre à appliquer après `citeproc` pour rétablir la graphie souhaitée dans les passages correspondants.
@ -522,22 +522,22 @@ Les styles *CSL/Clio* classent la bibliographie par catégories : d'abord les s
> keyword: grec chronique\
> keyword: monastères économie
Les entrées seront regroupées en sections selon les mots-clefs associés et placées dans l'ordre alphabétique ; il vous appartiendra ensuite d'insérer les titres correspondants et, éventuellement, de les réordonner. Comme pour toute modification manuelle, vous devez auparavant vous assurer que vous n'avez plus besoin d'utiliser l'outil d'ajout ou de modification de citation de *Zotero*.
Les entrées seront regroupées en sections selon les mots-clefs associés et placées dans l'ordre alphabétique ; il vous appartiendra ensuite d'insérer les titres correspondants et, éventuellement, de les réordonner. Comme pour toute modification manuelle, vous devez auparavant vous assurer que vous n'avez plus besoin d'utiliser l'outil d'ajout ou de modification de citation de *Zotero*.
## Pratiques à éviter
J'ai tenté de lister ici quelques pratiques que l'on adopte parfois spontanément et qui s'avèrent contre-productives. Je me suis en grande partie inspiré de mon expérience : n'hésitez pas à me faire part de vos malheurs pour enrichir cette section !
J'ai tenté de lister ici quelques pratiques que l'on adopte parfois spontanément et qui s'avèrent contre-productives. Je me suis en grande partie inspiré de mon expérience : n'hésitez pas à me faire part de vos malheurs pour enrichir cette section !
### Faire confiance à l'enregistrement automatique des références
*Zotero* propose [différents outils](https://www.zotero.org/support/adding_items_to_zotero) qui permettent d'enregistrer automatiquement des références dans le gestionnaire de bibliographie. Outre les modifications requises par *CSL/Clio*, il convient d'être attentif aux points suivants :
* Si une valeur est renseignée dans le champ *URL*, elle risque d'être utilisée par certains styles : ne la laissez que si vous souhaitez ce comportement ;
* Si vous laissez l'URL, supprimez l'indication de proxy de votre institution ;
* Mêmes remarques pour les DOI ; il faudra de plus en retrancher la partie qui ne relève pas de [l'identifiant proprement dit](https://en.wikipedia.org/wiki/Digital_object_identifier#Nomenclature_and_syntax) (p. ex. *https://doi.org/* ou *doi:*) ;
* Vérifiez que les noms soient renseignés sous la forme la plus généralement acceptée et de manière cohérente au sein de votre base de données : les notices d'autorité [de la Bibliothèque nationale de France](https://data.bnf.fr/) ou de la [Bibliothèque du Congrès](https://authorities.loc.gov) vous permettent de savoir quelles sont les formes attestées et quelle est la forme standard du nom de nombreux auteurs ;
* Dans les catalogues de bibliothèques, les titres sont souvent renseignés selon des normes uniformes (p. ex. titre et sous-titre séparés par deux points, suppression du *title case*) : vous aurez souvent besoin de les retoucher pour restituer leur typographie originelle ;
* Faites attention aux caractères employés pour les [apostrophes et les guillemets](#apostrophes-et-guillemets) ;
* Si une valeur est renseignée dans le champ *URL*, elle risque d'être utilisée par certains styles : ne la laissez que si vous souhaitez ce comportement ;
* Si vous laissez l'URL, supprimez l'indication de proxy de votre institution ;
* Mêmes remarques pour les DOI ; il faudra de plus en retrancher la partie qui ne relève pas de [l'identifiant proprement dit](https://en.wikipedia.org/wiki/Digital_object_identifier#Nomenclature_and_syntax) (p. ex. *https://doi.org/* ou *doi:*) ;
* Vérifiez que les noms soient renseignés sous la forme la plus généralement acceptée et de manière cohérente au sein de votre base de données : les notices d'autorité [de la Bibliothèque nationale de France](https://data.bnf.fr/) ou de la [Bibliothèque du Congrès](https://authorities.loc.gov) vous permettent de savoir quelles sont les formes attestées et quelle est la forme standard du nom de nombreux auteurs ;
* Dans les catalogues de bibliothèques, les titres sont souvent renseignés selon des normes uniformes (p. ex. titre et sous-titre séparés par deux points, suppression du *title case*) : vous aurez souvent besoin de les retoucher pour restituer leur typographie originelle ;
* Faites attention aux caractères employés pour les [apostrophes et les guillemets](#apostrophes-et-guillemets) ;
* Vérifiez qu'il n'y ait pas de renseignements manquants.
### Mettre en forme les informations en fonction d'un style donné
@ -552,7 +552,7 @@ Il y a toutefois quelques cas, inévitables, où la valeur que vous entrerez ser
# Automatiser la mise en forme
Une fois que l'on a constitué sa base de données bibliographique, il faut s'en servir ! Dans cette partie, nous verrons comment installer et utiliser les ressources fournies par *CSL/Clio*.
Une fois que l'on a constitué sa base de données bibliographique, il faut s'en servir ! Dans cette partie, nous verrons comment installer et utiliser les ressources fournies par *CSL/Clio*.
## Installation
@ -605,8 +605,8 @@ Si vous utilisez un gestionnaire autre que *Zotero*, il est probable qu'il ait a
#### Chiffres arabes ou romains
Contrairement au champ *Volume*, par exemple, dans la base de données bibliographique, les valeurs que vous entrez dans la fenêtre d'ajout de citation pour la localisation du passage cité (volume, page, ligne, folio,...) ne sont pas traitées comme des nombres, mais comme du texte. Par conséquent, si vous souhaitez qu'un numéro de volume, de page ou autre soit indiqué en chiffres romains, il faut le renseigner en caractères de bas de casse latins correspondants ; si vous souhaitez qu'il soit affiché comme un chiffre arabe, en utilisant les chiffres arabes correspondants.\
**Attention :** En principe, le processeur doit rendre les chiffres romains en minuscules, majuscules ou petites capitales selon les instructions données dans la feuille de style. Cependant, le processeur de *Zotero* a un bug à ce niveau, si bien que, dans la fenêtre d'ajout de citation, vous devez entrer les chiffres romains en utilisant directement la casse souhaitée, comme dans la [@fig:citation-volume]. Ce bug a été signalé et corrigé dans `citeproc-js` ; il faut attendre que *Zotero* mette à jour sa version du processeur. En revanche, la mise en forme des minuscules en petites capitales fonctionne.
Contrairement au champ *Volume*, par exemple, dans la base de données bibliographique, les valeurs que vous entrez dans la fenêtre d'ajout de citation pour la localisation du passage cité (volume, page, ligne, folio,...) ne sont pas traitées comme des nombres, mais comme du texte. Par conséquent, si vous souhaitez qu'un numéro de volume, de page ou autre soit indiqué en chiffres romains, il faut le renseigner en caractères de bas de casse latins correspondants ; si vous souhaitez qu'il soit affiché comme un chiffre arabe, en utilisant les chiffres arabes correspondants.\
**Attention :** En principe, le processeur doit rendre les chiffres romains en minuscules, majuscules ou petites capitales selon les instructions données dans la feuille de style. Cependant, le processeur de *Zotero* a un bug à ce niveau, si bien que, dans la fenêtre d'ajout de citation, vous devez entrer les chiffres romains en utilisant directement la casse souhaitée, comme dans la [@fig:citation-volume]. Ce bug a été signalé et corrigé dans `citeproc-js` ; il faut attendre que *Zotero* mette à jour sa version du processeur. En revanche, la mise en forme des minuscules en petites capitales fonctionne.
#### Localisation selon plusieurs critères
@ -646,7 +646,7 @@ Pour assurer le plus de souplesse possible, les styles *CSL/Clio* ne prévoient
N'insérez la bibliographie que quand vous n'avez plus à retoucher le document. Dans votre logiciel de traitement de texte, une fois la bibliographie insérée, vous pouvez supprimer un partie des références en positionnant le curseur dans la bibliographie et en cliquant sur le bouton *Insérer une bibliographie*.
Certains styles mettent en forme la bibliographie de manière à ce qu'elle puisse ensuite être utilisée par certaines macros de post-traitement. Par exemple, la macro de la *Revue des études byzantines* abrège la première référence à item cité dans la bibliographie (qui est en réalité une liste d'abréviations) ; à cette fin, l'abréviation et la référence complète sont séparées par le caractère « | » pour permettre un meilleur traitement par la macro correspondante. Dans ce cas, la même macro s'occupera aussi la mise en forme finale (dans le cas cité, elle remplace les caractères « | » par «  :  » dans la bibliographie).
Certains styles mettent en forme la bibliographie de manière à ce qu'elle puisse ensuite être utilisée par certaines macros de post-traitement. Par exemple, la macro de la *Revue des études byzantines* abrège la première référence à item cité dans la bibliographie (qui est en réalité une liste d'abréviations) ; à cette fin, l'abréviation et la référence complète sont séparées par le caractère « | » pour permettre un meilleur traitement par la macro correspondante. Dans ce cas, la même macro s'occupera aussi la mise en forme finale (dans le cas cité, elle remplace les caractères « | » par «  :  » dans la bibliographie).
Une fois les éventuelles macros appliquées, vous pouvez procéder, le cas échéant, à l'insertion de [titres de sections dans la bibliographie](#classement-de-la-bibliographie-en-catégories).
@ -666,9 +666,9 @@ Dans la fenêtre où votre document est ouvert, cliquez sur *Outils > Macros > E
Deux répertoires peuvent vous intéresser :
* *ApZotRevues* : Vous y trouverez les macros à exécuter pour adapter la mise en forme à la revue ou à l'éditeur de votre choix ;
* *ApZotRevues* : Vous y trouverez les macros à exécuter pour adapter la mise en forme à la revue ou à l'éditeur de votre choix ;
* *ApZotUtilities* : Contient pour l'instant deux macros qui peuvent avoir leur utilité :
* *CountOccurrencesPerReference* : Cette macro est à appliquer sur le document ODT, avant la conversion en DOCX. Elle crée à la fin de votre document une liste de l'ensemble des références citées triées par nombre d'occurrences. Elle ne fonctionne pas sur un document DOCX. Le résultat n'est pas agréable à lire, mais il peut aider à décider pour quelles références vous allez fournir une liste d'abréviations ; de toutes façon, cette liste est destinée à être supprimée ;
* *CountOccurrencesPerReference* : Cette macro est à appliquer sur le document ODT, avant la conversion en DOCX. Elle crée à la fin de votre document une liste de l'ensemble des références citées triées par nombre d'occurrences. Elle ne fonctionne pas sur un document DOCX. Le résultat n'est pas agréable à lire, mais il peut aider à décider pour quelles références vous allez fournir une liste d'abréviations ; de toutes façon, cette liste est destinée à être supprimée ;
* *ChangeGreekFont* : J'ai créé cette macro alors que la *Revue des Études byzantines* demandait encore à ce qu'on utilise une police différente du texte principal pour le grec. Vous pouvez modifier la police choisie en éditant le module *ApZotGlobalOptions* et en remplaçant `IFAO-Grec Unicode`.
Certaines macros requièrent quelques interventions manuelles après leur application ou n'effectuent pas la totalité des modifications nécessaires pour rendre le document conforme aux directives de l'éditeur. Veuillez vous référer à la documentation fournie au format PDF avec le fichier CSL correspondant.
@ -692,24 +692,24 @@ Certaines macros requièrent quelques interventions manuelles après leur applic
* `container-author` :
* Co-auteur d'un ouvrage dans lequel est publié une source :
* Éditeur d'un ouvrage dans lequel est publié une source.
* `keyword` : suite de mots-clefs utilisés pour opérer un tri secondaire des références ;
* Localisateur (*locator*) `section` (à ne pas confondre avec la variable du même nom) : référence au passage cité selon les divisions internes de la source ;
* `keyword` : suite de mots-clefs utilisés pour opérer un tri secondaire des références ;
* Localisateur (*locator*) `section` (à ne pas confondre avec la variable du même nom) : référence au passage cité selon les divisions internes de la source ;
## Liste des variables détournées
* `annote` : titre d'une source ;
* `collection-editor` : collaborateur ;
* `chapter-number` : numéro de colonne ;
* Localisateur (*locator*) `issue` : un numéro dans une source composée comme une collection (uniquement pour les sources) ;
* `jurisdiction` : langue de l'ouvrage original ;
* `original-publisher` : syntagme à insérer dans « traduit... par X » pour un document de littérature secondaire traduit (ex : « de l'anglais ») ;
* `annote` : titre d'une source ;
* `collection-editor` : collaborateur ;
* `chapter-number` : numéro de colonne ;
* Localisateur (*locator*) `issue` : un numéro dans une source composée comme une collection (uniquement pour les sources) ;
* `jurisdiction` : langue de l'ouvrage original ;
* `original-publisher` : syntagme à insérer dans « traduit... par X » pour un document de littérature secondaire traduit (ex : « de l'anglais ») ;
* `page` : pour un manuscrit dans la base de données bibliographique, numéro de folio :
* `references` : répertoire dans lequel est cité une source et numéro dans le répertoire ;
* `references` : répertoire dans lequel est cité une source et numéro dans le répertoire ;
* `scale` :
* Dans un document de type *Manuscrit* (`manuscript`), une référence dans un répertoire ;
* Dans un document de type *Manuscrit* (`manuscript`), une référence dans un répertoire ;
* Dans un document de type *Article d'actes de colloque* (`paper-conference`), chaîne de caractères à insérer le cas échéant entre le *Titre des actes* (`container-title`) et l'*Intitulé du colloque* (`event`).
* `verse` : verset ou vers ;
* `year-suffix` : variable à renseigner si titre de la source et celui de la publication sont redondants
* `verse` : verset ou vers ;
* `year-suffix` : variable à renseigner si titre de la source et celui de la publication sont redondants.
## Liste des éléments des spécifications CSL ignorées par *CSL/Clio*