Markdown et Zotero
Billet rédigé par ✏️ Frédérique Flamerie, ✏️ Raphaël Grolimund et ✏️Vincent Carlino
La rédaction a sollicité pour ce billet un rédacteur invité, Vincent Carlino. Merci Vincent pour ta contribution et tes éclairages concernant Zotpick!
Ce billet est l’occasion d’inaugurer deux nouvelles extensions du blog, une bibliothèque de groupe Zotero pour partager les ressources citées, et un entrepôt GitHub pour partager le matériel supplémentaire aux billets. Nous espérons ainsi vous fournir sous la forme la plus réutilisable possible des contenus associés aux billets.
Introduction
Après Zotero et LaTeX l’an dernier, pourquoi nous intéressons-nous à Zotero et Markdown cette année?
Tout d’abord, Markdown est de plus en plus utilisé non seulement pour documenter du code mais pour d’autres usages : il s’agit ainsi de proposer à ceux qui l’utilisent pour rédiger au sens large des pistes pour assurer la partie bibliographique de l’écriture avec Zotero.
Ce billet vise ensuite à fournir une alternative à ceux qui utilisent Zotero mais pas LaTeX et qui souhaiteraient abandonner Word.
Sommaire
- Quelques mots sur Markdown
- Rédiger un écrit académique : insérer des citations (appels de citation ou notes) et une bibliographie
- Insérer des citations dans Jupyter notebook
- Autres usages bibliographiques et bricolage
- Revue d’outils
Quelques mots sur Markdown
Nous avons évoqué en introduction l’abandon de Word. Plusieurs raisons peuvent motiver cet abandon, qu’elles soient d’ordre pragmatique (il suffit d’avoir rédigé un document de plusieurs centaines de pages avec Word pour les percevoir immédiatement) ou d’ordre épistémologique. Nous vous invitons vivement s’agissant de ce dernier point à lire le billet de Julien Dehut au titre évocateur, En finir avec Word ! Pour une analyse des enjeux relatifs aux traitements de texte et à leur utilisation 1.
Ajoutons quelques brefs éléments de présentation du remède que nous vous proposons.
Qu’est-ce que Markdown?
Markdown désigne la syntaxe légère pour mettre en forme des documents sur le web et le logiciel qui convertit les documents markdown vers le format qu’on souhaite (historiquement HTML, mais beaucoup de formats se sont ajoutés à la liste, notamment avec Pandoc, voir infra).
Markdown se caractérise ainsi par une syntaxe minimaliste, dont vous trouverez les principaux éléments sur le site CommonMark 2, ainsi que leurs variantes en fonction des différents déclinaisons de Markdown, de l’originale 3 à celle de GitHub 4. Il se révèle ainsi beaucoup plus facile de s’approprier la syntaxe Markdown que celle d’autres langages d’écriture pour le web, comme la syntaxe wiki par exemple 5.
La simplicité est donc l’un des atouts de Markdown. Citons également la versatilité, et, pendant de la simplicité, la diminution des distractions. Ces atouts sont détaillés pour le contexte académique dans une présentation de J. Zimmerman 6.
Voyons maintenant concrètement comment combiner l’écriture à la ligne de commande permise par Markdown et l’usage de Zotero, le tout sans recourir à Word, à la différence d’autres méthodes très détaillées, mais aboutissant à un fichier Word 7.
Rédiger un écrit académique : insérer des citations (appels de citation ou notes) et une bibliographie
Les méthodes que nous allons vous présenter dans cette partie diffèrent finalement uniquement du point de vue de l’utilisateur. La méthode 1 revient en effet à proposer un environnement intégrant tous les composants de la méthode 2 sans qu’il soit nécessaire à l’utilisateur de les décomposer et de les installer.
Nous présentons cette méthode en premier lieu, car elle peut permettre une transition en douceur de Word vers Markdown, sans nécessiter l’installation d’applications spécifiques.
Méthode 1 : service en ligne
La liste des auteurs étant de plus en plus longue dans les publications scientifiques 8, la rédaction collaborative est de plus en plus courante. Des plateformes facilitant ce travail ont donc naturellement fait leur apparition, OverLeaf et Authorea en tête.
OverLeaf étant orienté LaTeX, il ne nous intéresse pas dans le cadre de ce billet. Authorea, par contre, permet de rédiger en Markdown (entre autre). Voyons donc comment s’y prendre.
L’interface d’Authorea est très épurée et la rédaction est assez transparente.
L’insertion des citations, elle, est basé sur les mécanismes de LaTeX. L’utilisateur n’a toutefois pas à comprendre comment LaTeX fonctionne. L’export peut ensuite se faire au format Word, LaTeX ou PDF.
L’avantage d’Authorea est qu’un utilisateur de Word s’y retrouvera facilement dans l’interface WYSIWYG et qu’un utilisateur LaTeX pourra rédiger en LaTeX. Il faut toutefois admettre que les LaTeX power users seront frustrés par les limites qu’Authorea impose.
Authorea est l’outil le plus logique pour une transition en douceur de Word vers LaTeX, en passant par Markdown. À moins de rester à Markdown et de ne jamais passer à LaTeX…
Les prérequis
- un compte Authorea
Les processus
1. Pour ajouter une citation dans Authorea, il faut cliquer sur le bouton cite.
2. Pour ajouter une référence depuis Zotero, cliquez sur Add citations from reference managers.
3. Ajoutez la référence d’un glisser-déposer depuis Zotero (attention! BibTeX ou BibLaTeX doit être paramétré comme export par défaut dans les préférences de Zotero)
4. Si le format vous convient, validez en cliquant sur le bouton Cite and Close.
5. La citation, ainsi que la référence en fin de document, sont ajoutées.
Comme Authorea fait tout cela sans que l’utilisateur s’en rende compte, arrêtons-nous un instant sur le principe général de citation des sources dans un document Markdown. Cela nous permettra de vous présenter ensuite les différentes déclinaisons de la deuxième méthode, les différentes manières d’accommoder concrètement les grands principes.
Les grands principes de la rédaction bibliographique dans Markdown
Lorsqu’on veut citer ses sources dans un fichier Markdown, le principe général est le suivant:
- On utilise un éditeur de texte de son choix pour rédiger.
- On gère les sources grâce à un fichier BibTeX.
- Le style de citation peut être personnalisé grâce un fichier CSL.
- Le tout est ensuite combiné dans Pandoc pour générer un fichier de sortie (Word, PDF, LaTeX, etc.).
Avant d’aller plus loin, il convient de présenter Pandoc, le couteau-suisse de l’édition. Ce logiciel peut transformer n’importe quel texte en n’importe quel format. Il s’utilise en ligne de commande et il est utile dans d’autres contextes comme par exemple pour convertir un document Word en .odt, PDF ou encore en eBook. Pour un aperçu plus complet et en français sur Pandoc, nous vous recommandons la lecture de l’article du Flash Informatique de l’EPFL de 2013 à ce sujet 9.
Dans la suite de ce billet, on utilise plus précisément pandoc-citeproc
qui permet de gérer des références bibliographiques dans des textes rédigés en Markdown. La documentation de Pandoc citeproc est disponible dans le manuel Pandoc 10, à la rubrique Citations.
Maintenant que nous avons vu les grands principes de fonctionnement d’une méthode “brute”, voyons comment sophistiquer un peu tout cela, en alimentant le fichier BibTex automatiquement à partir de Zotero et en utilisant un plugin pour insérer les citations (plutôt que de saisir à la main les clés BibTeX).
Outre Pandoc, un autre outil est en effet commun à ces 2 chaînes, BetterBibTex, évoqué dans le précédent billet Zotero et Latex. Nous aurons ici recours principalement à sa fonction d’export automatique et sélectif (détaillée dans la page Customizing the export), pour créer et mettre à jour automatiquement un fichier BibTeX. L’export sélectif à partir d’une collection est vivement conseillé afin de ne pas allonger le temps de traitement en exportant l’ensemble de la bibliothèque.
Nous allons ainsi présenter 2 “chaînes de production” testées et utilisées par les rédacteurs. Il en existe d’autres, combinant d’autres outils, n’hésitez pas à nous signaler en commentaires celles et ceux que vous utilisez avec succès.
Méthode 2.a: installation locale multiplateforme
Cette chaîne peut être adoptée quel que soit votre sytème d’exploitation, et requiert peu de configuration.
Les prérequis
- Applications : Atom, Zotero, Pandoc
- Module complémentaire Zotero : BetterBibTex
- Package Atom : autocomplete-bibtex, pour chercher et insérer facilement une référence depuis votre fichier bibtex
- Fichier de style CSL que vous souhaitez utiliser 11, à télécharger depuis l’entrepôt Zotero
Les processus
Etape 1/6
Créez un répertoire dédié dans lequel vous enregistrerez les fichiers nécessaires à la production/compilation de votre document, i. e.:
- votre fichier markdown, disons
article.md
- votre fichier bibtex, disons
biblio_article.bib
- le fichier CSL du style que vous souhaitez appliquer pour la mise en forme des citations et de la bibliographie, disons
ieee.csl
Vous pouvez télécharger ces fichiers d’exemple à partir de notre entrepôt Github: zfrancophone-blog/2018-11-markdown.
Etape 2/6
Pour créer automatiquement votre fichier biblio_article.bib
et l’enregistrer au bon emplacement, créez une collection portant le même intitulé dans Zotero, rangez dans cette collection les documents à citer, exportez cette collection au format BetterBibTex, en cochant la case “Garder à jour”, comme détaillé supra.
Vous avez ainsi d’un seul coup créé votre fichier BibTeX et l’export automatique.
Etape 3/6
Paramétrez autocomplete-bibtex pour qu’il aille bien chercher les propositions de référence de son menu d’auto-complétion dans votre fichier biblio_article.bib
.
Etape 4/6
Au début de votre fichierarticle.md
, insérez un bloc de métadonnées YAML, qui vous permettra notamment de spécifier la langue si vous souhaitez produire un PDF non anglophone.
---
title: Titre d'un article
author: Blog Zotero francophone
date: 20 janvier 2018
lang: fr
---
À cette étape, vous pouvez intégrer bien d’autres paramètres pour la mise en forme de votre PDF (ajouter la numérotation des titres par exemple), détaillés par Jonathan en une page très claire et détaillée 12.
Etape 5/6
Écrivez votre article, tapez@
puis le début d’un nom d’auteur pour appeler la fenêtre d’insertion de citation et les propositions de référence d’autocomplete-bibtex.
Votre bibliographie sera insérée automatiquement à la fin de votre document; n’oubliez pas d’insérer un intertitre “Bibliographie” si applicable.
Etape 6/6
Compilez votre document avec Pandoc, en utilisant la commande suivante pour produire un PDF. Nous fournissons les commandes pour les versions 1 et 2 de Pandoc, mais n’avons pu tester que celle de la version 1.
pandoc v2:
pandoc article.md --pdf-engine=xelatex --filter pandoc-citeproc --bibliography=biblio_article.bib --csl=ieee.csl -f markdown+smart -o article.pdf
pandoc v1:
pandoc article.md --latex-engine=xelatex --filter pandoc-citeproc --bibliography=biblio_article.bib --csl=ieee.csl -S -o article.pdf
où vous remplacez:
article.md
par le nom du fichier Markdown à convertir,biblio_article.bib
par le nom de votre fichier bibtex,ieee.csl
par le nom du fichier CSL à appliquer,article.pdf
par le nom du fichier PDF à produire.
En revanche, veillez à ne pas supprimer --filter pandoc-citeproc
faute de quoi vous ne génèrerez ni citations ni bibliographie. Afin de produire des PDF “smart”, respectant les règles et conventions typographiques, conservez la commande -S
. Enfin, la commande -o
indique à Pandoc de produire le résultat de la commande sous la forme du fichier indiqué.
Il est à noter que les paramètres bibliography
et csl
peuvent être précisés dans le bloc de métadonnées YAML présenté à l’étape 4, plutôt que dans la commande Pandoc. Dans ce cas, on a ainsi un bloc de métadonnées plus complet, et une commande Pandoc plus générique.
Bloc de métadonnées:
---
title: Titre d'un article
author: Blog Zotero Francophone
date: 20 janvier 2018
lang: fr
csl: ieee.csl
bibliography: biblio_article.bib
---
Commande Pandoc version 1:
pandoc article.md --latex-engine=xelatex --filter pandoc-citeproc -S -o article.pdf
Méthode 2.b: installation locale pour les utilisateurs de Mac
Sur Mac, l’utilitaire Zotpick facilite la sélection des entrées bibliographiques à citer. Cet AppleScript rend le processus indépendant de votre éditeur de texte. Concrètement, cela signifie que vous pouvez appeler vos références depuis votre logiciel préféré, qu’il s’agisse d’un éditeur Markdown, un navigateur web, TextEdit, et même Word…
Les prérequis
- Applications: Ulysses (ou autre éditeur), Pandoc
- Plugins Zotero: BetterBibTeX, Zotpick : voir comment installer et paramétrer de Zotpick – vidéo en anglais
- Fichier(s) de style au format CSL, à télécharger depuis l’entrepôt Zotero
Le workflow
- Écrire son texte en Markdown (titres, liens, emphases, etc.)
- Ouvrir des crochets :
[]
- Appeler Zotpick et choisir sa référence (ajouter n° de page, préfixe et suffixe si besoin)
- Enregistrer le texte
- Exporter vos références bibliographiques au format
.bib
grâce à BetterBibTex dans Zotero (voir ci-dessus) - Passer le tout dans Pandoc
Zotpick ouvre une boîte de dialogue sous la forme d’une barre de recherche. Tapez les premières lettres d’un auteur ou d’un titre et les documents correspondants s’affichent en temps réel. Une fois le document repéré, il suffit de le sélectionner avec la souris ou les flèches directionnelles du clavier puis appuyer sur Entrée. La référence n’est pas encore insérée dans le texte. Vous pouvez d’ailleurs en sélectionner d’autres pour citer plusieurs auteurs ou documents à la suite. Un clic sur les références permet de préciser si besoin un numéro de page et d’ajouter préfixe et suffixe.
Une fois les références prêtes à être citées, appuyez sur Entrée pour les insérer dans votre texte au format Markdown. Avec notre exemple cela donne :
[@chateauraynaud2011, p. 135; voir aussi @chateauraynaud2017 chap. 4]
Pas besoin de se soucier du résultat final, Pandoc se chargera tout seul de transformer ce code en quelque chose de plus propre comme : (Chateauraynaud, 2011, p. 135 ; voir aussi 2017, chap. 4) en fonction de la norme bibliographique avec laquelle vous travaillez.
Dès que le texte est prêt à être exporté, il faut le passer dans Pandoc. Avant cela, prenez le temps d’ajouter un titre tel que #Bibliographie
à la toute fin de votre texte. Votre bibliographie s’insèrera à la suite de ce titre.
Lorsque le document Markdown est enregistré, préparez le fichier .bib
contenant vos références bibliographiques ainsi que le fichier .csl
correspondant au style bibliographique que vous utilisez. Il reste à ouvrir une fenêtre de Terminal (Applications > Utilitaires > Terminal) pour combiner ces trois fichiers :
pandoc article.md --bibliography biblio.bib --csl chicago.csl -S -o article.pdf
Notez que Pandoc produit un fichier de sortie (-o
signifie output) dans l’extension que vous lui indiquez. Utilisez .docx
ou .odt
pour obtenir un fichier traitement de texte compatible Word et Libre Office.
Si les 2 méthodes que nous venons de vous présenter couvrent une écriture académique classique, nous n’avons pour autant pas épuisé tous les contextes d’écriture comportant une part de rédaction bibliographique. Nous poursuivons ainsi ce billet avec un autre usage scientifique appelé à se développer, celui de la documentation des données et processus de recherche.
Insérer des citations dans Jupyter notebooks
De plus en plus utilisé pour l’analyse de données, les Jupyter notebooks permettent aussi de rédiger en Markdown. Dans une optique Open Science, c’est idéal car il est ainsi possible de documenter le processus menant des données aux figures (nettoyage, sélection, outils utilisés pour l’analyse, etc.) de façon transparente. Il est aussi possible de transformer le notebook en présentation reveal.js en une commande. Mais ce n’est pas tout: grâce au plugin cite2c, il est possible de citer les références présentes dans sa bibliothèque Zotero!
De ce fait, même si un Jupyter notebook n’est pas destiné à rédiger un article scientifique, il peut néanmoins servir de document de travail, incluant la citation des méthodes ou études sur lesquelles se basent l’analyse des données.
Pour en savoir plus sur Jupyter, la documentation officielle (en anglais) est un bon début: https://jupyter.readthedocs.io. Si vous préférez démarrer avec une aide en français, jetez un œil à “Python 3: apprendre à programmer avec Pyzo et Jupyter notebook”13.
Autres usages bibliographiques et bricolage
Nous ne pouvions pas effectuer ce tour d’horizon en nous cantonnant aux usages strictement académiques décrits jusqu’à présent. Dans certains contextes, il peut en effet être nécessaire d’insérer des références bibliographiques correctement mises en forme, sans qu’il soit pour autant nécessaire (voire souhaitable) de recourir au système d’appels de citation et de bibliographie finale.
Le système des appels de citation et de la bibliographie finale demeure finalement un outil de navigation textuelle pour le lecteur. Lorsque ce dernier rencontre un appel de citation au fil de sa lecture, il peut se référer à la bibliographie pour voir les détails de la source citée, puis revenir à l’emplacement où il avait interrompu sa lecture pour en reprendre le fil. Ce système suppose donc qu’un tel retour soit possible, que le texte dispose d’un système de repères tel qu’un numéro de page permettant au lecteur de reprendre aisément le fil de sa lecture.
Or dans certains contextes un tel retour se révèle compliqué, voire impossible.
Le premier contexte auquel on peut penser est celui d’une présentation produite sous forme de diapositives présentées successivement au public par l’orateur. Le public se voit projeté le contenu par fragment, et ne peut naviguer au sein du texte. Il convient par conséquent que le contenu de chaque diapositive soit un minimum intelligible en soi. Ainsi si une source est citée, un appel de citation sera insuffisant, car le public ne pourra pas de lui-même et immédiatement se reporter à la bibliographie finale pour consulter la référence complète. Dans l’exemple suivant, il est ainsi difficile d’identifier le document cité. Insérer une référence bibliographique complète permettrait en revanche au public d’identifier immédiatement la source. Cette pratique n’empêcherait pas par ailleurs d’intégrer une bibliographie récapitulative à la fin du diaporama, ou en annexe au diaporama.
Le deuxième contexte que l’on peut évoquer est celui d’un texte publié en HTML. À moins que la référence bibliographique complète ne soit fournie sous la forme d’un affichage marginal ou d’infobulle, le retour de la bibliographie à l’appel de citation où l’on a interrompu sa lecture impose de recourir à un ascenseur, sans savoir à quel étage s’arrêter. Là encore, le système des appels de citation et de la bibliographie finale se révèle peu ergonomique.
Finalement, il y a la bibliographie de cours regroupant l’ensemble des lectures recommandées aux étudiants par l’enseignant. Distribuée en début de semestre, cette liste autonome ne fait référence à aucun document ou partie du cours. Aucun appel de citation n’est donc utilisé.
Avant de présenter la solution retenue pour la rédaction bibliographique dans ces contextes, ajoutons deux autres facteurs qui ont motivé le choix de cette solution.
D’une part, BibTeX se révèle relativement pauvre lorsqu’on souhaite citer des types de document plus variés que les standards (article, livre, etc.). Or, dans un contexte professionnel ou d’enseignement, on peut être amené à citer à des pages web, des enregistrements vidéos ou encore des présentations, qui peuvent être référencés très précisément dans Zotero.
D’autre part, dans un souci d’économie de moyens, on peut aussi préférer éviter le détour par un fichier BibTeX et la compilation Pandoc pour des documents brefs ou créés en utilisant des logiciels qui incluent une compilation PDF.
La solution que nous utilisons pour tous ces contextes repose ainsi sur trois éléments simples:
- la création de bibliographies depuis la bibliothèque Zotero (clic-droit Créer une bibliographie),
- ou la Copie rapide, sous l’une de ces différentes activations (glisser-déposer, raccourci clavier Ctrl+C, clic-droit moyennant un paramétrage Zutilo),
- et un style CSL ad hoc, intégrant directement la syntaxe Markdown.
Un style de ce type peut être très rapidement créé, pour peu qu’on choisisse de partir d’un style comportant peu de mise en forme typographique. Ainsi si on choisit un style prévoyant seulement de l’italique pour quelques éléments, il suffira de remplacer dans le code CSL les attributs font-style="italic"
par des prefix="_"
et suffix="_"
de part et d’autre de l’élément à mettre en italique.
Nous vous proposons pour découvrir cette méthode des styles “hackés md”, les styles ISO 690.
ISO-690 (author-date, en français, sans le résumé)
ISO-690 (numérique, en français)
ISO-690 (author-date, en anglais)
ISO-690 (numérique, en anglais)
Cette solution n’est certes pas entièrement orthodoxe, elle fournit toutefois une option très économique pour citer correctement et en toutes circonstances les sources utilisées dans un fichier Markdown.
Revue d’outils
Nous souhaitons conclure ce billet en partageant avec vous les outils que nous avons testés et adoptés.
Sélection de Raphaël
Pour créer des présentations, j’utilise souvent HackMD. Il permet de créer et mettre à jour une présentation très rapidement, et il est possible de travailler à plusieurs en même temps, ce qui est un atout. HackMD a aussi été adopté par la rédaction du blog pour l’écriture collaborative des billets: ses fonctionnalités de commentaires et de notifications facilitent grandement la collaboration.
J’ai récemment commencé à utiliser Juypter Notebook. Je m’en sers en premier lieu pour analyser des données, mais il me permet également de créer des présentations. La possibilité d’installer un plugin Zotero est un avantage pour citer ses sources.
Pour les bibliographies de cours, j’utilise simplement un éditeur de texte (Atom au travail et MacDown à la maison) et un style de citation hacké pour créer une bibliographie formatée en Markdown.
Sélection de Frédérique
Pour créer des présentations sous forme de diaporama, j’utilise Marp. J’apprécie la compilation PDF intégrée, ainsi que le choix limité de modèles de document. Cette sobriété éloigne la tentation d’une mise en forme sophistiquée et souvent trop chargée, et incite au contraire à se concentrer sur la clarté du message.
Sur le conseil de Raphaël, j’ai adopté Atom au travail sous Windows et à la maison sous Mac. Outre autocomplete-bibtex précédemment cité, j’ai aussi très souvent recours au package markdown-themeable-pdf pour convertir rapidement des documents simples (sans appels de citation ni figures notamment).
Pour citer avec ces deux outils j’ai créé un style hacké Markdown dérivé du style APA.
Enfin, de façon beaucoup plus ponctuelle, j’ai recours au convertisseur en ligne développé par les bibliothèques de l’université d’Oklahoma. Fondé sur Pandoc, ce service en ligne propose à la fois un choix de feuilles de style et de formats d’export (html, pdf, epub, docx). Je le recommande davantage que je ne l’utilise moi-même, pour des utilisateurs qui ne peuvent pas ou ne souhaitent pas installer Pandoc, mais souhaitent pouvoir rédiger en Markdown et convertir en docx.
Sélection de Vincent
Je rédige tous mes textes Markdown dans Ulysses, éditeur de texte fonctionnant sous macOS. Son interface minimaliste et personnalisable en fait un éditeur de choix pour rédiger des articles pour des revues scientifiques et/ou pour le web. Présenté dans cet article, Zotpick est devenu un incontournable pour moi. Il est tout aussi important que mon éditeur de texte, sinon plus.
Tout comme Frédérique, il m’arrive d’utiliser Marp pour mes présentations.
Références citées
Toutes les références citées dans cet article sont disponibles dans la bibliothèque de groupe du blog.
- DEHUT, Julien, 2018. En finir avec Word ! Pour une analyse des enjeux relatifs aux traitements de texte et à leur utilisation. In : L’Atelier des Savoirs [en ligne]. 23 janvier 2018. [Consulté le 28 mai 2018]. Disponible à l’adresse : https://eriac.hypotheses.org/80. [↩]
- COMMONMARK, [sans date]. Markdown Reference – Help. In : CommonMark [en ligne]. [Consulté le 22 juin 2018]. Disponible à l’adresse : http://commonmark.org/help/. [↩]
- GRUBER, John, 2004. Syntax Documentation. In : Daring Fireball [en ligne]. 2004. [Consulté le 1 octobre 2018]. Disponible à l’adresse : https://daringfireball.net/projects/markdown/syntax. [↩]
- GITHUB, 2014. Mastering Markdown. In : GitHub Guides [en ligne]. 2014. [Consulté le 1 octobre 2018]. Disponible à l’adresse : https://guides.github.com/features/mastering-markdown/. [↩]
- BORBOËN, Nicolas, 2013. Markdown. In : Flash Informatique [en ligne]. 2013. n° 1, p. 5‑8. [Consulté le 1 octobre 2018]. Disponible à l’adresse : http://archiveweb.epfl.ch/flashinformatique.epfl.ch/spip.php%3Farticle2629.html. [↩]
- ZIMMERMAN, Jake, 2016. Writing at the Command Line. In : Jake Zimmerman [en ligne]. 19 novembre 2016. Disponible à l’adresse : https://jez.io/talks/writing-at-the-command-line/. [↩]
- KABO, Raphael, 2017. My workflow for transforming academic Markdown into beautiful Word documents. In : Raphael Kabo [en ligne]. 11 mai 2017. [Consulté le 23 octobre 2017]. Disponible à l’adresse : http://raphaelkabo.com/blog/posts/markdown-to-word. TENEN, Dennis et WYTHOFF, Grant, 2014. Sustainable Authorship in Plain Text using Pandoc and Markdown. In : Programming Historian [en ligne]. 19 mars 2014. [Consulté le 17 octobre 2017]. Disponible à l’adresse : https://programminghistorian.org/lessons/sustainable-authorship-in-plain-text-using-pandoc-and-markdown. [↩]
- WALLACE, Matthew L., LARIVIÈRE, Vincent et GINGRAS, Yves, 2012. A Small World of Citations? The Influence of Collaboration Networks on Citation Practices. In PLoS ONE. 7 mars 2012. Vol. 7, n° 3, p. e33339. DOI 10.1371/journal.pone.0033339. [↩]
- BONJOUR, Jean-Daniel, 2013. Création et conversion de documents avec Pandoc. In : Flash Informatique [en ligne]. 6 juillet 2013. n° 4, p. 3‑8. [Consulté le 1 octobre 2018]. Disponible à l’adresse : http://archiveweb.epfl.ch/flashinformatique.epfl.ch/spip.php%3Farticle2658.html. [↩]
- MACFARLANE, John, 2018. Pandoc User’s Guide [en ligne]. 2018. S.l. : s.n. Disponible à l’adresse : http://pandoc.org/MANUAL.html. [↩]
- Pour plus de détails sur Pandoc/CSL : PFEIFLE, Kurt, 2017. pandoc-csl-testing: Scripts and Howtos about using different CSL (Citation Style Language) files with pandoc. In : KurtPfeifle [GitHub] [en ligne]. 9 novembre 2017. [Consulté le 18 décembre 2017]. Disponible à l’adresse : https://github.com/KurtPfeifle/pandoc-csl-testing. [↩]
- CHIBOIS, Jonathan, 2018. Mettre en forme un document Markdown en PDF. In : laspic [en ligne]. 26 février 2018. [Consulté le 17 septembre 2018]. Disponible à l’adresse : https://www.laspic.eu/compiler-et-mettre-en-forme-un-document-markdown-en-pdf. [↩]
- CORDEAU, Bob, POINTAL, Laurent et SWINNEN, Gérard, 2017. Python 3: apprendre à programmer avec Pyzo et Jupyter notebook. Malakoff : Dunod. Info sup. ISBN 978-2-10-076636-9 [↩]
OpenEdition vous propose de citer ce billet de la manière suivante :
Collectif (14 novembre 2018). Markdown et Zotero. Le blog Zotero francophone. Consulté le 19 septembre 2024 à l’adresse https://doi.org/10.58079/vdwr
En complément Zotero-Markdown, voir aussi le démonstrateur Zotermite de Robin de Mourat :
* [l’application en ligne](https://zotermite.herokuapp.com/)
* [les sources](https://github.com/robindemourat/zotermite)
> Zotermite can be used to generate markdown bibliographies, but also reading notes templates (the purpose for which I made it in the first place), and whatever your shiny imagination can produce.
Intéressant ce Zotermite, je connaissais pas. Merci
outil pratique pour transformer du code html (le source d’une page web qui servira de ‘gabarit’) en markdown (moins puissant que pandoc mais ça peut dépanner et éviter le syndrome de la page blanche) :
https://domchristie.github.io/turndown/
Bonjour Julien,
Merci pour Zotermite et ce convertisseur! J’utilisais jusqu’à présent https://www.browserling.com/tools/html-to-markdown, je note de tester Turndown.
Bien à vous,
Frédérique
Bonjour,
Merci pour cet article que je trouve très clair et très utile pour transférer à des collègues.
Personnellement, j’ai un workflow avec Vim (et son plugin “citation” –» https://github.com/rafaqz/citation.vim) et Rmarkdown qu’il faudrait que je prenne le temps de vous présenter.
Il faut aussi que je m’attèle à modifier un style de biblio… mais j’ai pas eu le temps de me pencher dessus jusque là.
Belle soirée !
Bonjour,
Merci pour votre commentaire! La présentation de votre méthode avec Vim et Rmarkdown serait très intéressante, n’hésitez pas à nous en faire part sous une forme ou une autre si vous trouvez le temps de la rédiger. Notre dernier “billet CSL” concerne les outils d’édition : https://zotero.hypotheses.org/758, j’espère qu’il pourra vous être utile.
Bien à vous,
Frédérique
Bonjour,
Concernant la création de styles csl « hackés », je me suis inspiré de votre article pour créer un script permettant d’automatiser le processus. Le code source et les binaires (windows/linux) sont disponibles sur https://github.com/Eonm/csl-to-markdown. N’hésitez pas à faire vos retours ou à signaler les bugs.
Cordialement
Bonjour,
Merci beaucoup! Je ne suis pas entièrement équipée pour tester ce script, j’espère toutefois pouvoir le faire très rapidement.
Bien à vous,
Frédérique
À noter, l’outil stylo.ecrituresnumeriques.ca, un éditeur de texte scientifique utilisable dans sa version bêta qui associe un éditeur markdown, un éditeur de métadonnées (yaml), et une gestion de références avec synchronisation possible à un groupe Zotero public. Plus d’autres fonctionnalités utiles dont le versionning, un comparateur de versions et des exports en cours d’enrichissement.
Sources et infos sur stylo-doc.ecrituresnumeriques.ca
Bonjour Nicolas,
Merci pour votre contribution! Savez-vous s’il sera possible à plus long terme de brancher une bibliothèque Zotero personnelle ou de groupe mais non publique? La documentation précise seulement “NOTE: Il sera bientôt possible de synchroniser un dossier Zotero avec l’outil de bibliographie. Les références se mettront à jour alors automatiquement à jour avec le dossier Zotero.”
Bien à vous,
Frédérique
Superbe article, merci ! Je suis allé un petit peu plus loin dans l’association Markdown et Zotero pour l’écriture de mon mémoire en utilisant un générateur de site statique (un logiciel qui transforme des fichiers Markdown en site web) et en intégrant presque automatiquement un export Zotero (au format BibTeX). Certes cela demande quelques connaissances techniques, mais ensuite quel confort d’écriture ! L’objectif serait ensuite d’utiliser l’API de Zotero pour ne plus avoir à faire d’export. Le mémoire est ici https://memoire.quaternum.net/ et le dépôt là https://gitlab.com/antoinentl/systeme-modulaire-de-publication/
Merci Antoine, c’est très intéressant; en effet utiliser l’API ouvre des perspectives 🙂 Bravo
Merci Antoine! Magnifique. Cela fait déjà un moment que je souhaite tester l’association Jekyll/Zotero, mais je n’ai jamais trouvé le temps. Ce rappel est donc particulièrement bienvenue avec le break de Noël.
Pour l’utilisation de Jekyll + Zotero il faut aller voir Jekyll Scholar https://github.com/inukshuk/jekyll-scholar (et éventuellement utiliser Better BibTeX comme l’a soufflé Arthur https://github.com/retorquere/zotero-better-bibtex).
Encore merci pour ce billet très éclairant dont je me sers à intervalles réguliers. Juste un ajout sur une chose qui ne m’y paraît pas assez claire. Dans la mesure où l’on trouve de la doc sur citeproc dans le manuel de pandoc, on pourrait croire que citeproc est téléchargé en même temps que pandoc. Or après avoir installé Pandoc, dans mon cas du moins (Ubuntu 20), j’ai du installer citeproc (apt install pandoc-citeproc). Après tout a été ok. Bonne continuation.
Merci pour cette précision.
Bien à vous,
Raphaël
Bonjour,
Merci beaucoup pour ce billet très clair qui m’a conduit à rédiger ma thèse en markdown.
Je me permets de vous écrire car je rencontre un problème au moment de la conversion d’un fichier Markdown en PDF en utilisant pandoc, si cela ne vous dérange pas. J’écris mon fichier sur vs code et au moment de la conversion, le message d’erreur suivant s’affiche : . Le caractère en question sert à signaler le numéro de revue d’un article et il est bien absent du PDF après conversion par pandoc. Auriez-vous une solution à cette erreur ? Je n’ai rien trouvé sur stackoverflow qui puisse m’aider concernant ce caractère unicode manquant.
Je me permets de vous copier ci-dessous le YAML de mon fichier en espérant que cela puisse vous aider à cerner le problème :
—
#Front matter
title: L’autodétermination comme principe d’autonomie politique. Histoire et appropriation d’un droit équivoque en Bolivie et au Chili de 1970 à 2019
author: Pablo Barnier-Khawam
abstract:
keywords:
lang: fr
#Bibliography
csl: le-tapuscrit-note-modified.csl
bibliography: bibtex_these.bib
#Formatting
geometry: “margin=2.5cm”
output: pdf_document
indent: true
toc: true
toc-title: “Sommaire”
fontfamily: lmodern
fontsize: 12pt
linestretch: 1.5
documentclass: report
header-includes:
– \usepackage{setspace}
– \usepackage[utf8]{inputenc}
—
Je vous remercie d’avance pour votre aide.
Bien cordialement,
Pablo Barnier-Khawam.
Bonjour,
Malheureusement le message d’erreur a sauté lorsque vous avez publié votre commentaire…
Est-ce que cela arrive avec toutes vos références, ou seulement avec certaines d’entre elles?
Si j’essaie de deviner: si le problème ne concerne que les numéros de revue, mais toutes les références qui en ont, peut-être que le problème vient de la manière dont les styles CSL francophones définissent le terme «numéro» dans sa version abrégée: nᵒ (la source est là: https://github.com/citation-style-language/locales/blob/master/locales-fr-FR.xml).
Cela dit, je ne vois pas pourquoi cela devrait poser problème, il me semble que Pandoc devrait savoir gérer ce caractère. Peut-être votre propre fichier n’est-il pas en UTF-8? Essayez peut-être de vérifier ce point…
Une autre piste dans cette direction serait de redéfinir le terme dans votre fichier CSL (Je vois qu’il est «modified» donc vous avez peut-être déjà apporté des changements?)
Vous pourriez ajouter quelque chose comme:
<term name="issue" form="short">n°</term>
dans l’élément terms de votre fichier CSL.(À noter que typographiquement, ce n’est pas correct, puisque j’ai utilisé le signe «degré» et non le signe «petit o en exposant». Mais bon, le chercheur n’est (a priori) pas typographe!)
Mais avant de suivre ces pistes, il serait sans doute préférable de republier le message d’erreur.
Bonjour,
Je vous remercie pour cette réponse rapide. Oui, effectivement le message a sauté, le voici : Missing character: There is no ᵒ (U+1D52) in font [lmroman10-regular]:mapping=tex-text;!
Tous les articles de revue qui ont un numéro d’indiqué n’ont pas le signe “petit o en exposant” en note de bas de page ou bibliographie. J’ai essayé de générer le document en utilisant le style APA et le même message d’erreur est apparu alors que le style n’inclut pas le signe.
Mon fichier est bien en UTF-8. J’ai effectivement apporté de légers changements au style tapuscrit mais je n’ai fait que retiré le nombre total de pages pour les références en bibliographie et un espace en trop dans les citations de page web.
J’ai essayé la modification du fichier CSL comme vous me l’avez proposé, mais l’erreur persiste. Dans tous les cas, le signe “degré” me convient très bien !
Encore merci pour votre aide.
C’est donc bien le caractère «petit o en exposant» (Unicode U+1D52) qui pose problème… parce que la police de caractères que vous avez choisie ne le contient pas, comme le dit le message.
À votre place, j’essaierais simplement de trouver une police de caractères qui contient ce caractère. Malheureusement je ne m’y connais pas en polices LaTeX, mais quelqu’un d’autre saura sûrement vous aider! Si ça se trouve, il y a même une version de la police que vous avez choisie avec plus de caractères Unicode.
Si ce n’est pas possible ou que vous y tenez, deux autres idées: L’une est technique: LibreOffice par exemple, utilise une autre police lorsqu’un caractère ne peut pas être affiché dans la police principale du document. Peut-être y a-t-il un moyen d’en faire autant dans le workflow Markdown -> LaTeX -> PDF. Mais je ne saurais vous aider, il faudra qu’un expert en la matière indique si c’est faisable (à moins qu’il n’y ait une solution quelque part: une recherche google pour “latex unicode font fallback” semble prometteuse, mais je n’ai pas creusé). L’autre idée est plus laborieuse: si vraiment cela arrive avec tous les styles CSL, cela suggère que le «petit o en exposant» figure non seulement dans les références générées, mais aussi ailleurs, soit directement dans votre document (un copié-collé peut-être?), soit dans les métadonnées d’une de vos références Zotero (vous devriez pouvoir trouver en cherchant le caractère ᵒ dans votre bibliothèque). Il faudrait alors remplacer ce caractère par autre chose. Mais bien sûr cela ne tiendra que jusqu’à ce qu’un autre caractère manquant dans votre police ne se glisse dans votre document…
Bonjour,
Merci beaucoup pour cette réponse détaillée et claire. Le problème a effectivement été résolu en utilisant la police EB Garamond qui semble contenir le signe manquant, comme j’ai pu le trouver ici : https://www.fontspace.com/unicode/char/1D52-modifier-letter-small-o. Néanmoins, il semble que la police par défaut de Latex cm-unicode devrait également contenir le signe mais l’erreur suivant s’affiche au moment de convertir le fichier en PDF, alors que j’ai bien téléchargé le package sur Miktex : LaTeX Error: File `cm-unicode.sty’ not found. Il semble que ce soit une erreur de dossier que je n’arrive malheureusement pas à résoudre. Le problème semble récurrent mais je n’ai pas compris la solution proposée : https://tex.stackexchange.com/questions/64133/sty-file-not-found.
J’ai aussi tenté la deuxième solution mais je n’ai malheureusement pas trouvé la formulation exacte dans le YAML pour que le signe soit pris en compte. Je débute un peu 🙂 J’ai également fait une recherche afin de voir si la troisième solution pouvait fonctionner mais après avoir retiré les possibles occurrences dans le fichier Markdown ou Zotero, le problème persiste.
Si vous le permettez, je me permets de vous faire part d’un autre problème que je rencontre dans certaines références de ma bibliographie. Tout d’abord, le guillemet français qui ouvre un article est légèrement plus espacé du mot qui suit en comparaison à celui qui ferme le titre de l’article, alors qu’un espace sépare bien le titre des deux guillemets (j’espère que cela est clair). Le deuxième problème est que dans certaines citations d’articles qui contiennent des guillemets dans le titre, au lieu d’avoir un guillemet ouvrant et fermant, deux guillemets fermants entourent le mot en question. En Unicode, ce sont deux 0x275e au lieu de 0x275d pour ouvrir le passage entre guillemets.
Si jamais cela vous prend trop de temps de répondre, je comprends parfaitement 🙂 Encore merci.
Bonjour,
Concernant le problème des guillemets, avez-vous pu identifier s’il provenait de vos données Zotero (en générant une bibliographie au format .rtf par exemple), du style CSL (en changeant de style) ou enfin de votre distribution LaTeX (ou de votre éditeur Markdown)? Vous pourrez probablement trouver davantage d’aide sur le forum Zotero, en indiquant précisément toute votre configuration (système d’exploitation, logiciels, versions de logiciel).
Le détour par un export Word pour générer le PDF pourrait-il constituer une option?
Bien à vous,
Frédérique