Une micro-chaîne éditoriale multicanal pour l’écriture scientifique

Collecter, lire, annoter, expérimenter, rédiger, publier, discuter…

Presque toutes les étapes du travail scientifique impliquent des formes d’écriture. Les outils qui permettent d’appréhender et de créer du texte sont aujourd’hui extrêmement nombreux, pour notre plus grand bonheur mais aussi notre plus grande confusion : comment trouver chaussure à son pied parmi la galaxie de logiciels, de formats et de normes existantes, tout en articulant ses propres pratiques avec celles des autres ?

L’une des réponses consiste à faire bon usage de la conversion entre formats de fichier. Un utilitaire comme Pandoc permet de passer rapidement et efficacement du traitement de texte à une publication web ou bien un PDF optimisé pour l’impression. À l’échelle individuelle, c’est une gymnastique éditoriale intéressante, qui permet de diffuser son travail de plusieurs façons ; dans le cadre d’un travail collectif, cela change totalement la donne, puisque cela permet de relier des continents d’usagers isolés dans leurs outils.

Intégrer la conversion à un workflow d’écriture

En juillet, Antoine Fauchié a fait remonter dans sa veille un article décrivant un workflow pour produire des documents Word lorsqu’on écrit plutôt en Markdown, en milieu académique.

La recette de Raphael Kabo pour passer d’un document Markdown (accompagné d’une bibliographie au format BibTex gérée avec Zotero) à un document Word, avec l’aide de Pandoc. D’autres solutions existent aujourd’hui (comme Stylo), mais celle-ci a le mérite d’être indépendante (le principal problème provient d’Ulysses, mais c’est une autre question).

(source : quaternum.net)

Si au départ j’étais simplement curieux, ma mâchoire s’est progressivement décrochée au fil de la lecture et du tutoriel : bien que limitée en apparence à une certaine plateforme (Mac) du fait des exemples pratiques, la recette que présente Raphael Kabo est absolument remarquable dans le principe.

Avec humour, il désigne son montage de la façon suivante :

I have named this system Zotero/BetterBibTeX/zotpick-applescript/Service, because that is what it is made of and I’m sorry, I can’t be called upon to be imaginative on demand.

(source : raphaelkabo.com)

Pour moi, sa démo s’apparente à un embryon de micro-chaîne éditoriale multicanal  – la formulation est tout aussi indigeste, mais elle en suggère peut-être mieux le potentiel.

Les outils mobilisés sont les suivants :

  1. un éditeur de texte ;
  2. un gestionnaire de références bibliographiques ;
  3. un convertisseur de formats de fichier ;
  4. un script qui automatise l’articulation des 3 items précédents.

Raphael Kabo utilise respectivement Ulysses, Zotero, Pandoc et Automator (l’utilitaire de script fourni avec OS X), mais en pratique, on peut remplacer Ulysses par n’importe quel logiciel concurrent, propriétaire ou libre ; quant à l’automatisation, j’imagine qu’elle se pratique aussi bien sur Linux et Windows que sur Mac. Même Zotero et Pandoc pourraient théoriquement être substitués, même si personnellement je suis d’accord avec lui sur le caractère incontournable de ces deux outils en recherche.

Ce qui me semble important ici, c’est le principe du passage d’un format à un autre. Étant donné que Pandoc permet de multiples conversions, peut-on envisager d’utiliser la méthode décrite dans l’article pour d’autres formats de sortie ?

D’une démo à une autre

L’article illustre le passage du Markdown à Word. En changeant quelques éléments, on peut reproduire exactement la même méthode pour fabriquer une page HTML. Il suffit de changer les options de la commande Pandoc et de remplacer le gabarit .docx par un fichier CSS.

Voici le code de départ. Il permet d’automatiser la conversion d’un document en Markdown au format docx avec Pandoc, en traitant au passage automatiquement les références bibliographiques suivant la norme de son choix. C’est un simple script Shell qui, sauvegardé sous la forme d’une application, évite de retaper cent fois la même commande dans le Terminal ; un simple glisser-déposer suffit.

title=$(basename "$@" .md)
echo -e "\n\n# Bibliography" >> "$@"
/usr/local/bin/pandoc -s --filter=/usr/local/bin/pandoc-citeproc --bibliography /PATH/TO/BIBTEX/LIBRARY/Zotero.bib --csl /PATH/TO/CSL/FILE/FILENAME.csl --reference-doc /PATH/TO/REFERENCE/DOC/reference.docx -f markdown+smart -t docx -o /PATH/WHERE/YOU/WANT/TO/EXPORT/"$title".docx "$@"
open /PATH/WHERE/YOU/WANT/TO/EXPORT/"$title".docx

L’article d’origine détaille très rigoureusement ce que fait chaque commande et pourquoi. Le résultat est tout à fait satisfaisant.

En modifiant simplement les paramètres (et pas les commandes elles-mêmes), on peut faire exactement la même chose pour fabriquer une page web mise en forme suivant une CSS donnée (comme celle-ci) :

title=$(basename "$@" .md)
echo -e "\n\n# Bibliography" >> "$@"
/usr/local/bin/pandoc -s --filter=/usr/local/bin/pandoc-citeproc --bibliography /PATH/TO/BIBTEX/LIBRARY/Zotero.bib --csl /PATH/TO/CSL/FILE/FILENAME.csl -c style.css -f markdown+smart -t html -o /PATH/WHERE/YOU/WANT/TO/EXPORT/"$title".html "$@"
open /PATH/WHERE/YOU/WANT/TO/EXPORT/"$title".html

Cela permet de mettre un orteil dans le grand bain de la publication web indépendamment de tout écosystème ultra-sophistiqué.

En suivant cette logique, on peut également modifier le script pour créer du PDF, que Pandoc fabrique en utilisant LaTeX sous le capot. Plutôt que du docx, on peut également fabriquer un odt. On pourrait même créer un EPUB.

Principes

Ce qui se dessine ici, c’est le potentiel sous-jacent du workflow proposé par Raphael Kabo : pas seulement une circulation facilité entre deux régimes d’écriture, mais un format d’écriture unique, qui servirait de pivot pour produire plusieurs autres formats. Pour moi, cette petite expérience dessine les contours de ce qu’on pourrait appeler une micro-chaîne éditoriale multicanal à échelle auctoriale (ouf !).

  • micro : le système pèse à peine quelques kB, se conçoit en quelques minutes, tient en une ou deux icônes sur le bureau et nous épargne plusieurs dizaines de clics ;
  • chaîne éditoriale : on récupère des références dans Zotero, on les inclut dans son text rédigé en Markdown, on crée un document mis en forme qu’on peut partager, mais le tout dans une seule interface (l’éditeur de texte), notamment grâce aux raccourcis Zotero décrits par Raphael Kabo dans son article ;
  • multicanal : différents formats permettent une meilleure accessibilité des documents à plusieurs types d’interlocuteurs, sans avoir à utiliser autant de logiciels d’édition (sur ce sujet et ce terme particulier, voir l’article d’iA traduit par Antoine) ;
  • échelle auctoriale : la dimension innovante de cette pratique éditoriale n’empêche pas de la mettre en place à une échelle individuelle, à hauteur d’auteur.

Ce dernier point est celui qui m’enthousiasme le plus : le fait que la dimension éditoriale s’intègre de mieux en mieux aux outils d’écriture. Jusqu’à présent, je voyais le principe d’un format pivot comme une pratique désirable mais difficilement applicable ailleurs que dans l’édition professionnelle, la chaîne éditoriale m’évoquant tout de suite un workflow lourd dans un cadre collectif. Cette expérience me laisse penser que le coût technique n’est peut-être pas si élevé que je l’imaginais.

“Academia god”

Je voudrais conclure sur l’idée d’émancipation.

Je fabrique d’habitude des documents avec LaTeX. L’intégration avec la gestion bibliographique me semblait jusque-là imbattable. Pour la première fois, j’ai expérimenté un workflow qui ne passe pas par LaTeX, sans pour autant sacrifier la qualité de la bibliographie, et en offrant une porte d’entrée beaucoup plus robuste sur la publication web. C’est une très bonne chose : cela permet d’être outillé de façon plus pertinente en fonction des documents à produire. Par ailleurs, LaTeX est un outil remarquable auquel je me suis beaucoup attaché, mais il vaut mieux ne pas mettre tous ses documents dans la même corbeille.

Raphael Kabo conclut son article en félicitant de façon un peu sarcastique le lecteur qui aurait suivi le tutoriel jusqu’au bout :

Well done. You are academia god. We all bow down.

Il est vrai qu’on pourrait ramener les choses à leurs justes proportions. Après tout, son postulat de départ était très concret : comment éviter les frictions avec la personne qui relit vos chapitres de thèse, en lui envoyant des documents Word même si vous n’utilisez pas le logiciel. Voir l’astuce fonctionner aussi bien qu’elle le fait est très satisfaisant mais ce qu’il propose reste une astuce. Et pour la plupart des lecteurs de l’article en question, sûrement déjà familiers avec les outils dont il parle, la manœuvre n’est peut-être finalement pas si complexe.

Cela fonctionne tout de même rudement bien. S’il s’agit d’une astuce, c’est une astuce qui vaut son pesant d’heures de formation.

Si quelqu’un tentait de réaliser l’ensemble du paramétrage décrit dans son article à partir de zéro, sans expérience de Zotero ou de la ligne de commande par exemple, je pense que cela pourrait se révéler assez difficile. Je serais donc assez tenté d’ajouter qu’il faut transmettre les conditions de cette émancipation à ceux dont on exige un travail scientifique de qualité ; partager ces principes et ces pratiques, si on pense qu’elles donnent les moyens de faire de la recherche avec plaisir et efficacité. Le bénéfice des innovations dans l’organisation du travail intellectuel ne devrait jamais rester l’apanage de quelques academia gods.

Et par ailleurs, je pense réellement que ce petit système illustre des principes très puissants. Circuler entre Mardown, docx, HTML et PDF ne fait peut-être pas du chercheur un dieu de la science, mais cela favorise assez bien l’autonomie et l’adaptabilité – une double compétence très utile au quotidien dans l’univers académique.


1 réponse

  1. 05/12/2018

    […] évoqué précédemment une ébauche de système d’écriture académique basé sur le balisage léger, en puisant dans des méthodes publiées sur le […]

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.