From 0ef8fa7073475905309382b161722851b2bedbed Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Mon, 21 Dec 2020 18:04:08 +0100 Subject: [PATCH 001/131] =?UTF-8?q?Cr=C3=A9ation=20de=20la=20documentation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Documentation/GUIDE_CSL-Clio.md diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md new file mode 100644 index 0000000..e69de29 From 071ab86f8c3988bfe0335b43cb0b19a6ef652a06 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Mon, 21 Dec 2020 23:26:14 +0100 Subject: [PATCH 002/131] Structure du guide --- Documentation/GUIDE_CSL-Clio.md | 56 +++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index e69de29..f0bc8f5 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -0,0 +1,56 @@ +--- +title: "CSL — Clio" +subtitle: "Guide d'utilisation et de création de styles CSL supportant un formatage complexe des sources primaires" +author: Bastien Dumont +lang: fr-FR +--- + +# Introduction + +## Brève présentation de CSL + + + + + + + + + +## Limites actuelles de CSL pour les publications en Histoire + + + + + + + + + + + +## Objectifs de CSL — Clio + +### Créer un ensemble de styles cohérent et interopérables + +### Fournir des stratégies d'encodage claires + +### Poser des principes pour l'encodage des sources primaires + +### Coupler CSL avec des outils de post-traitement + + + + +# Gérer ses données bibliographiques avec Zotero et CSL — Clio + + +# Utiliser les styles CSL — Clio + + +# Programmer de nouveaux styles CSL — Clio From 896e4de8f59f9442549740604c465d2b80e08ca6 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Mon, 28 Dec 2020 15:28:14 +0100 Subject: [PATCH 003/131] =?UTF-8?q?Premier=20jet=20pr=C3=A9sentation=20de?= =?UTF-8?q?=20CSL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 56 ++++++++++++++++++++++++--------- 1 file changed, 41 insertions(+), 15 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index f0bc8f5..aa4c432 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -3,38 +3,64 @@ title: "CSL — Clio" subtitle: "Guide d'utilisation et de création de styles CSL supportant un formatage complexe des sources primaires" author: Bastien Dumont lang: fr-FR +colorlinks: true --- # Introduction -## Brève présentation de CSL +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 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 LibreOffice, filtres Pandoc) pour automatiser la plus grande partie des modifications qui doivent être effectuées sur le résultat produit par les processeurs CSL. + +Cette introduction développe les principes et les objectifs du projet. Les sections suivantes donneront des indications pratiques pour utiliser son gestionnaire de références bibliographiques selon les principes de *CSL — Clio*, utiliser les outils fournis et étendre le nombre de styles proposés. - +## Présentation de CSL - +*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 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. + +Ainsi, 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*](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 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](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. + +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 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*](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/). + +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](https://creativecommons.org/licenses/by-sa/3.0/), une license [libre](https://www.gnu.org/philosophy/free-sw.html) 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](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 :** +> +> * [Site de CSL](https://citationstyles.org/) +> * [Introduction à CSL](https://docs.citationstyles.org/en/1.0.1/primer.html) ## Limites actuelles de CSL pour les publications en Histoire + + + + + + - - - - - - -## Objectifs de CSL — Clio +## Objectifs de *CSL — Clio* ### Créer un ensemble de styles cohérent et interopérables @@ -47,10 +73,10 @@ lang: fr-FR -# Gérer ses données bibliographiques avec Zotero et CSL — Clio +# Gérer ses données bibliographiques avec Zotero -# Utiliser les styles CSL — Clio +# Automatiser la mise en forme -# Programmer de nouveaux styles CSL — Clio +# Programmer de nouveaux styles From 32736d4cb6504378d365b536c5bdabf40429e15d Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Mon, 28 Dec 2020 15:49:17 +0100 Subject: [PATCH 004/131] Premier jet limitations CSL (sources primaires) --- Documentation/GUIDE_CSL-Clio.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index aa4c432..ff773f1 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -44,7 +44,15 @@ Enfin, CSL présente toutes les garanties de durabilité. Les spécifications so ## 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](https://github.com/citation-style-language/schema/issues/388) sur le dépôt officiel du schéma CSL. +]. From 2a6863f87b265e1d6175ea51a796aad2d9400b3b Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Mon, 28 Dec 2020 20:37:04 +0100 Subject: [PATCH 005/131] =?UTF-8?q?Premier=20jet=20limitations=20CSL=20(ab?= =?UTF-8?q?r=C3=A9viations)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index ff773f1..8459458 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -54,9 +54,15 @@ Pour les historiens, son point faible le plus évident est le manque de support Pour plus de détails, voir [cette discussion](https://github.com/citation-style-language/schema/issues/388) 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](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 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*](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 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`). 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à](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 néanmoins plus loin. +]. From 5397a6931b17680c9c1f02872fe60cd0d476d9c5 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Mon, 28 Dec 2020 20:42:04 +0100 Subject: [PATCH 006/131] Image pour double localisation --- Documentation/double-locator-zotero.png | Bin 0 -> 60728 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Documentation/double-locator-zotero.png diff --git a/Documentation/double-locator-zotero.png b/Documentation/double-locator-zotero.png new file mode 100644 index 0000000000000000000000000000000000000000..a957e8364bb275669b4410e2c49357c4ca35578a GIT binary patch literal 60728 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 V+W`)ZQVs Date: Tue, 29 Dec 2020 11:52:28 +0100 Subject: [PATCH 007/131] Organisation --- Documentation/GUIDE_CSL-Clio.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 8459458..137e720 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -2,10 +2,16 @@ title: "CSL — Clio" subtitle: "Guide d'utilisation et de création de styles CSL supportant un formatage complexe des sources primaires" author: Bastien Dumont +date: 29/12/2020 lang: fr-FR colorlinks: 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*](https://www.zotero.org/), et mettre en forme automatiquement les citations et les bibliographies grâce aux processeurs CSL existants. Il comprend trois aspects : @@ -61,7 +67,7 @@ Bien que ce point ne soit pas explicité, les spécifications actuelles de CSL ( ![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 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`). 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à](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 néanmoins plus loin. + En réalité, [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 néanmoins plus loin. ]. From 55dce8932534ed4cc7fec49faa35e400337bd498 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Tue, 29 Dec 2020 12:36:56 +0100 Subject: [PATCH 008/131] =?UTF-8?q?Cosm=C3=A9tique=20et=20fin=20des=20limi?= =?UTF-8?q?tations=20CSL=20(=C3=A9l=C3=A9ments=20manquants=20et=20=C3=A9vo?= =?UTF-8?q?lutions)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 137e720..9754e36 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -1,5 +1,5 @@ --- -title: "CSL — Clio" +title: "CSL/Clio" subtitle: "Guide d'utilisation et de création de styles CSL supportant un formatage complexe des sources primaires" author: Bastien Dumont date: 29/12/2020 @@ -14,13 +14,13 @@ colorlinks: 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*](https://www.zotero.org/), et mettre en forme automatiquement les citations et les bibliographies grâce aux processeurs CSL existants. Il comprend trois aspects : +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 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 LibreOffice, filtres Pandoc) pour automatiser la plus grande partie des modifications qui doivent être effectuées sur le résultat produit par les processeurs CSL. -Cette introduction développe les principes et les objectifs du projet. Les sections suivantes donneront des indications pratiques pour utiliser son gestionnaire de références bibliographiques selon les principes de *CSL — Clio*, utiliser les outils fournis et étendre le nombre de styles proposés. +Cette introduction développe les principes et les objectifs du projet. Les sections suivantes donneront des indications pratiques pour utiliser son gestionnaire de références bibliographiques selon les principes de *CSL/Clio*, utiliser les outils fournis et étendre le nombre de styles proposés. ## Présentation de CSL @@ -70,17 +70,21 @@ Concernant les titres de revues, les spécifications CSL prévoient une variable En réalité, [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 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. -## Objectifs de *CSL — Clio* +> **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é identifiés 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* ### Créer un ensemble de styles cohérent et interopérables From 5dbcad5413b919b740d499a72b2e745a9c9031a1 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Tue, 29 Dec 2020 12:57:46 +0100 Subject: [PATCH 009/131] =?UTF-8?q?Cosm=C3=A9tique=20et=20fin=20des=20limi?= =?UTF-8?q?tations=20CSL=20(=C3=A9l=C3=A9ments=20manquants=20et=20=C3=A9vo?= =?UTF-8?q?lutions)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 9754e36..84dda95 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -86,6 +86,8 @@ Heureusement, les membres du projet CSL sont parfaitement conscients de ces limi ## 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. Les lignes directrices du projet sont exposées maintenant, avant de passer à la pratique. + ### Créer un ensemble de styles cohérent et interopérables ### Fournir des stratégies d'encodage claires @@ -96,6 +98,9 @@ Heureusement, les membres du projet CSL sont parfaitement conscients de ces limi +### 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 byzantine. 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 le présent guide n'est 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 en utilisant [le dépôt du projet](). # Gérer ses données bibliographiques avec Zotero From 6121c481adab1ed05528ea17a3419f1de628d985 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Tue, 29 Dec 2020 12:58:28 +0100 Subject: [PATCH 010/131] =?UTF-8?q?Revert=20"Cosm=C3=A9tique=20et=20fin=20?= =?UTF-8?q?des=20limitations=20CSL=20(=C3=A9l=C3=A9ments=20manquants=20et?= =?UTF-8?q?=20=C3=A9volutions)"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 5dbcad5413b919b740d499a72b2e745a9c9031a1. --- Documentation/GUIDE_CSL-Clio.md | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 84dda95..9754e36 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -86,8 +86,6 @@ Heureusement, les membres du projet CSL sont parfaitement conscients de ces limi ## 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. Les lignes directrices du projet sont exposées maintenant, avant de passer à la pratique. - ### Créer un ensemble de styles cohérent et interopérables ### Fournir des stratégies d'encodage claires @@ -98,9 +96,6 @@ Actuellement, pour bénéficier malgré tout des avantages de CSL, chacun doit d -### 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 byzantine. 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 le présent guide n'est 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 en utilisant [le dépôt du projet](). # Gérer ses données bibliographiques avec Zotero From 17c91fb9dc209eb8050a094ee30a986ef2880c1c Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Tue, 29 Dec 2020 20:02:38 +0100 Subject: [PATCH 011/131] =?UTF-8?q?Requalification=20de=20la=20plus=20gran?= =?UTF-8?q?de=20partie=20de=20l'introduction=20en=20premi=C3=A8re=20partie?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 9754e36..ae7fe15 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -20,7 +20,11 @@ Le but du projet *CSL/Clio* est de fournir une solution clé en main aux histori * 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 LibreOffice, filtres Pandoc) pour automatiser la plus grande partie des modifications qui doivent être effectuées sur le résultat produit par les processeurs CSL. -Cette introduction développe les principes et les objectifs du projet. Les sections suivantes donneront des indications pratiques pour utiliser son gestionnaire de références bibliographiques selon les principes de *CSL/Clio*, utiliser les outils fournis et étendre le nombre de styles proposés. +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*. + + + +# Principes ## Présentation de CSL @@ -86,16 +90,24 @@ Heureusement, les membres du projet CSL sont parfaitement conscients de ces limi ## 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. Les lignes directrices du projet sont exposées maintenant, avant de passer à la pratique. + +### Fournir des stratégies d'encodage communes + +Nous connaissons trois moyens de surmonter 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 que rencontrent certains historiens : + + #. 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 ; + #. + ### Créer un ensemble de styles cohérent et interopérables -### Fournir des stratégies d'encodage claires - -### Poser des principes pour l'encodage des sources primaires - ### Coupler CSL avec des outils de post-traitement +### 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 byzantine. 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 en utilisant [le dépôt du projet](). # Gérer ses données bibliographiques avec Zotero From 8ac4a6782ae3d4980b8fcecc6d778ccc250e565e Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Tue, 29 Dec 2020 20:49:33 +0100 Subject: [PATCH 012/131] =?UTF-8?q?Objectifs=20(strat=C3=A9gies=20d'encoda?= =?UTF-8?q?ge=20communes)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index ae7fe15..13a6cad 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -90,14 +90,17 @@ Heureusement, les membres du projet CSL sont parfaitement conscients de ces limi ## 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. Les lignes directrices du projet sont exposées maintenant, avant de passer à la pratique. +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 -Nous connaissons trois moyens de surmonter 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 que rencontrent certains historiens : +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 de manière détournée, ce qui permet de respecter formellement les spécifications CSL et de créer des styles compatibles avec tous les processeurs. Cette stratégie requiert la disponibilité de variables très abstraites (telles que `note`) dont on peut faire un usage spécialisé, ainsi que de variables plus spécialisées (telles que `jurisdiction`) dont les historiens n'ont a priori pas besoin. + +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. ### Créer un ensemble de styles cohérent et interopérables From d524c339803f20a702e046201e54a55d2d7c9395 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 11:35:53 +0100 Subject: [PATCH 013/131] =?UTF-8?q?Pr=C3=A9ciser=20sp=C3=A9cialisation/d?= =?UTF-8?q?=C3=A9tournement?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 13a6cad..6ecf003 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -98,7 +98,7 @@ On peut surmonter de trois manières différentes le fait que les spécification #. 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 de manière détournée, ce qui permet de respecter formellement les spécifications CSL et de créer des styles compatibles avec tous les processeurs. Cette stratégie requiert la disponibilité de variables très abstraites (telles que `note`) dont on peut faire un usage spécialisé, ainsi que de variables plus spécialisées (telles que `jurisdiction`) dont les historiens n'ont a priori pas besoin. + #. 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 `jurisdiction` 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. From 633d751e475b1afd4d929410151fc4ec59bb8137 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 11:47:24 +0100 Subject: [PATCH 014/131] =?UTF-8?q?Pr=C3=A9ciser=20sch=C3=A9ma/sp=C3=A9cif?= =?UTF-8?q?ications?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 6ecf003..bf50962 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -34,10 +34,12 @@ La première section développe les principes et les objectifs du projet. Malgr * 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. -Ainsi, l'utilisation de CSL pour la mise en forme des citations met en œuvre quatre outils : +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*](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 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](https://github.com/citation-style-language/styles) et [celui de Zotero](https://www.zotero.org/styles)) ; + * 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](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. From f540d3a2debe296bf2d37c7f4aa75fc0bae3e9e9 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 12:44:22 +0100 Subject: [PATCH 015/131] Premier jet de Objectifs de CSL/Clio (styles) --- Documentation/GUIDE_CSL-Clio.md | 37 +++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index bf50962..5c06e3d 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -104,8 +104,45 @@ On peut surmonter de trois manières différentes le fait que les spécification 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*](#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'ils 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](#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 From c508989c61c36c832300b1c0f9ffeec678a76c11 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 13:10:51 +0100 Subject: [PATCH 016/131] Premier jet de Objectifs de CSL/Clio (post-traitement) --- Documentation/GUIDE_CSL-Clio.md | 38 +++++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 5c06e3d..9d71ed0 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -5,6 +5,8 @@ author: Bastien Dumont date: 29/12/2020 lang: fr-FR colorlinks: true +toc: true +lof: true --- +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 en faire une version utilisable avec *Microsoft Word* ; heureusement, la suite *LibreOffice* est gratuite et peut très bien traiter des documents 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*](#automatiser-la-mise-en-forme). ### Un projet évolutif et ouvert aux retours des utilisateurs From a9ee6a611a6b65141258f69c259317980c55dd13 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 13:13:37 +0100 Subject: [PATCH 017/131] Je ne suis pas seulement byzantiniste --- Documentation/GUIDE_CSL-Clio.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 9d71ed0..b2a92f8 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -159,13 +159,13 @@ Les conventions suivies dans *CSL/Clio* sont exposées dans la partie [*Programm ### 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 en faire une version utilisable avec *Microsoft Word* ; heureusement, la suite *LibreOffice* est gratuite et peut très bien traiter des documents 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. +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 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*](#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 byzantine. 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 en utilisant [le dépôt du projet](). +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 From 8158533970dd940ee366f5e658a972fa86b7bbea Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 14:03:14 +0100 Subject: [PATCH 018/131] Plan --- Documentation/GUIDE_CSL-Clio.md | 48 +++++++++++++++++++++++++++++++-- 1 file changed, 46 insertions(+), 2 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index b2a92f8..c1a8b81 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -75,7 +75,7 @@ Bien que ce point ne soit pas explicité, les spécifications actuelles de CSL ( ![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 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`). 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à](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 néanmoins plus loin. + En réalité, [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 néanmoins [plus loin](#liste-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^[ @@ -167,10 +167,54 @@ Les informations sur les outils de post-traitement figurent dans la partie [*Aut 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 +# Gérer ses données bibliographiques avec *Zotero* +## Utilisation avancée de *Zotero* + +### Indications de mise en forme dans une valeur de champ + +### Champ *Extra* + +### Console JavaScript + + + +### Export d'une collection en format CSL JSON + +### Liste d'abréviations + +### Demander de l'aide et signaler des bugs + +## Enregistrement des documents selon les conventions de *CSL/Clio* + +### Sources primaires + +### Rôles + +### Actes de colloque, revues, sites webs, blogs + +### # 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* From a7d09aaa4ee9e420ef9f8315b36c51cda8b5557a Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 14:11:14 +0100 Subject: [PATCH 019/131] =?UTF-8?q?Pr=C3=A9cisions=20sur=20d=C3=A9pendance?= =?UTF-8?q?s=20logicielles?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index c1a8b81..92b895b 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -20,10 +20,12 @@ Le but du projet *CSL/Clio* est de fournir une solution clé en main aux histori * 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 LibreOffice, filtres Pandoc) pour automatiser la plus grande partie des modifications qui doivent être effectuées sur le résultat produit par les processeurs CSL. + * 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 From bf3d08616aa33352af0f967af7fddc23c4c63e17 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 14:31:38 +0100 Subject: [PATCH 020/131] =?UTF-8?q?D=C3=A9veloppement=20du=20plan?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 92b895b..1d09dc9 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -104,7 +104,7 @@ On peut surmonter de trois manières différentes le fait que les spécification #. 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 `jurisdiction` pour indiquer la langue d'origine d'un document traduit). + #. 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. @@ -175,6 +175,8 @@ Pour l'instant, le projet *CSL/Clio* est surtout informé par ma pratique de doc ### Indications de mise en forme dans une valeur de champ +### Intervalles de dates + ### Champ *Extra* ### Console JavaScript @@ -189,13 +191,29 @@ Pour l'instant, le projet *CSL/Clio* est surtout informé par ma pratique de doc ## Enregistrement des documents selon les conventions de *CSL/Clio* +### Rôles + + + ### Sources primaires -### Rôles +### Manuscrits ### Actes de colloque, revues, sites webs, blogs -### +### Ouvrages traduits + +### Ouvrages en plusieurs volumes + +### Classement de la bibliographie en catégories + +### Apostrophes et guillemets + +## Pratiques à éviter + +### Abréger les prénoms + +### Faire confiance à l'enregistrement automatique des références à partir du navigateur # Automatiser la mise en forme From 58eeb08e544ffe6b30bb02c24dedc7cfd6af2e01 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 16:29:20 +0100 Subject: [PATCH 021/131] =?UTF-8?q?Premier=20jet=20Utilisation=20avanc?= =?UTF-8?q?=C3=A9e=20de=20Zotero?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 73 +++++++++++++++++++++++++++++++-- 1 file changed, 69 insertions(+), 4 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 1d09dc9..d96f0fc 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -171,22 +171,83 @@ Pour l'instant, le projet *CSL/Clio* est surtout informé par ma pratique de doc # 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* ### Indications de mise en forme dans une valeur de champ -### Intervalles de dates +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](titre-dans-titre.png){#fig:titre-dans-titre} + +Vous trouverez plus d'informations [ici](https://citationstyles.org/authors/#/rich-text-within-fields). Il s'agit d'une fonctionnalité recommandée par CSL (mais absente des spécifications) et supportée au moins par les processeurs [*citeproc*](https://pandoc.org/MANUAL.html#specifying-bibliographic-data) (utilisé par *Pandoc*) et [*citeproc-js*](https://www.zotero.org/support/fr/kb/rich_text_bibliography) (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). *Le nom de la variable est celui prévu dans les [spécifications CSL](https://docs.citationstyles.org/en/1.0.1/specification.html#appendix-iv-variables), 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~~ + +### Intervalles de dates + +Le champ *Date* ne supporte pas les intervalles tels que « 2009–2011 ». 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) : + +~~~ {.javascript} +// 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 de la Mozilla Foundation](https://developer.mozilla.org/en-US/docs/Web/Tutorials) des ressources sur JavaScript (seules les connaissances les plus basiques sont requises). 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. ### 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. + + + ### Liste d'abréviations + ### Demander de l'aide et signaler des bugs ## Enregistrement des documents selon les conventions de *CSL/Clio* @@ -211,10 +272,14 @@ Pour l'instant, le projet *CSL/Clio* est surtout informé par ma pratique de doc ## Pratiques à éviter -### Abréger les prénoms - ### 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 From b09a0108d8b09cc8305a8512a0548f55d23e7b78 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 19:26:28 +0100 Subject: [PATCH 022/131] Ajout d'image pour balisage dans valeurs de variables --- Documentation/titre-dans-titre.png | Bin 0 -> 55419 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Documentation/titre-dans-titre.png diff --git a/Documentation/titre-dans-titre.png b/Documentation/titre-dans-titre.png new file mode 100644 index 0000000000000000000000000000000000000000..874f9b78b54f0bca307250ca82d5baee71ac010c GIT binary patch literal 55419 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.!NPC7VJwi+=zEk-ISitL!~{~o#Hc`wWCs_Sx$ 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 literal 0 HcmV?d00001 From 16c8d1c9f02d28b7fb2a65c748682df663267b51 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 19:57:48 +0100 Subject: [PATCH 023/131] =?UTF-8?q?R=C3=A9solution=20de=20quelques=20r?= =?UTF-8?q?=C3=A9f=C3=A9rences?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index d96f0fc..94e3f3a 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -38,7 +38,7 @@ Les outils fournis par *CSL/Clio* peuvent être utilisés soit avec *Pandoc*, so * 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*](). +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 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*](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 : @@ -181,7 +181,7 @@ Il est possible de mettre certaines parties des valeurs que vous renseignez dans ![Utilisations de balises pour mettre en valeur un titre cité dans un autre titre](titre-dans-titre.png){#fig:titre-dans-titre} -Vous trouverez plus d'informations [ici](https://citationstyles.org/authors/#/rich-text-within-fields). Il s'agit d'une fonctionnalité recommandée par CSL (mais absente des spécifications) et supportée au moins par les processeurs [*citeproc*](https://pandoc.org/MANUAL.html#specifying-bibliographic-data) (utilisé par *Pandoc*) et [*citeproc-js*](https://www.zotero.org/support/fr/kb/rich_text_bibliography) (utilisé par *Zotero* et d'autres gestionnaires de bibliographie). +Vous trouverez plus d'informations [ici](https://citationstyles.org/authors/#/rich-text-within-fields). 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*](https://pandoc.org/MANUAL.html#specifying-bibliographic-data) (utilisé par *Pandoc*) et [*citeproc-js*](https://www.zotero.org/support/fr/kb/rich_text_bibliography) (utilisé par *Zotero* et d'autres gestionnaires de bibliographie). ### Champ *Extra* @@ -235,7 +235,7 @@ for (let item of items) { } ~~~ -On pourra trouver sur [le site de la Mozilla Foundation](https://developer.mozilla.org/en-US/docs/Web/Tutorials) des ressources sur JavaScript (seules les connaissances les plus basiques sont requises). 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). 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. From c265b0e1dffdc093edfaee18386a81a36535e7c0 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 20:08:04 +0100 Subject: [PATCH 024/131] =?UTF-8?q?Pr=C3=A9voir=20liste=20mail?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 94e3f3a..6437c9e 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -167,7 +167,7 @@ Les informations sur les outils de post-traitement figurent dans la partie [*Aut ### 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](). +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* @@ -250,6 +250,8 @@ Attention : avant d'utiliser la console, faites une sauvegarde de votre répert ### Demander de l'aide et signaler des bugs + + ## Enregistrement des documents selon les conventions de *CSL/Clio* ### Rôles From 876675b9a97a43c0004762948f457d7680c875e3 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 20:09:24 +0100 Subject: [PATCH 025/131] =?UTF-8?q?Cosm=C3=A9tique?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 6437c9e..4106276 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -77,7 +77,7 @@ Bien que ce point ne soit pas explicité, les spécifications actuelles de CSL ( ![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 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`). 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à](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 néanmoins [plus loin](#liste-dabréviations). + En réalité, [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 néanmoins [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^[ @@ -245,7 +245,7 @@ Attention : avant d'utiliser la console, faites une sauvegarde de votre répert -### Liste d'abréviations +### Listes d'abréviations ### Demander de l'aide et signaler des bugs From b9c5a0ee02b017a099989964a7af3ac335e5e990 Mon Sep 17 00:00:00 2001 From: Bastien Dumont Date: Wed, 30 Dec 2020 23:34:02 +0100 Subject: [PATCH 026/131] =?UTF-8?q?Listes=20d'abr=C3=A9viations=20+=20typo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/GUIDE_CSL-Clio.md | 81 ++++++++++++++++++++++++-- Documentation/preferences-medline.png | Bin 0 -> 93531 bytes 2 files changed, 76 insertions(+), 5 deletions(-) create mode 100644 Documentation/preferences-medline.png diff --git a/Documentation/GUIDE_CSL-Clio.md b/Documentation/GUIDE_CSL-Clio.md index 4106276..fc5e3d2 100644 --- a/Documentation/GUIDE_CSL-Clio.md +++ b/Documentation/GUIDE_CSL-Clio.md @@ -189,9 +189,9 @@ L'interface de *Zotero* contient un champ *Extra* dans lequel l'utilisateur peut Exemples : -> annote: Titre de la source -> editor: Nom || Prénom -> ~~annote: "Titre de la source"~~ +> annote: Titre de la source\ +> editor: Nom || Prénom\ +> ~~annote: "Titre de la source"~~\ > ~~Éditeur: Nom || Prénom~~ ### Intervalles de dates @@ -202,8 +202,8 @@ Exemples : > issued: 1999-09/1999-12\ > issued: 1999-09/2000-01\ -> issued: 1999/2000 -> ~~issued: 1999-09/12~~ +> issued: 1999/2000\ +> ~~issued: 1999-09/12~~\ > ~~issued: 1999-09/2000~~ ### Console JavaScript @@ -247,6 +247,77 @@ Attention : avant d'utiliser la console, faites une sauvegarde de votre répert ### 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](https://www.json.org/json-fr.html) 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*](https://pandoc.org/MANUAL.html#specifying-a-citation-style), 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. + +![Préférences du document dans l'extension *Zotero* pour *LibreOffice*](preferences-medline.png){#fig:preferences-medline} ### Demander de l'aide et signaler des bugs diff --git a/Documentation/preferences-medline.png b/Documentation/preferences-medline.png new file mode 100644 index 0000000000000000000000000000000000000000..6c5bb32a3897c74515f665c1c52f7b7aff08d599 GIT binary patch literal 93531 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