Wordless

12 avril 2019

J’ai enfin réussi à adapter mon workflow d’écriture Zotero + Markdown + Pandoc aux processus d’édition scientifique basés sur Word… sans utiliser Word. Dans un de ses textes, Pierre Desproges indique comment faire cuire des carottes sans casserole et sans eau. C’est un peu la même chose, à ceci près que si la solution de Desproges est évidemment un calembour (« Prenez neuf carottes, jetez-en une, les carottes sont qu’huit »), ici ce n’est pas une blague.

tl;dr Je fais les modèles de document avec Libreoffice et la conversion Markdown vers .docx avec Docdown.

Le problème

Au tout début de mon contrat doctoral, on m’a demandé de quels logiciels j’aurai besoin sur ma machine du travail. J’ai constaté en dressant une liste rapide qu’il s’agissait presque exclusivement de logiciels libres, souvent des programmes que j’installerais moi-même via un gestionnaire comme NPM ou Homebrew. J’ai donc indiqué n’avoir besoin de rien mais on m’a recontacté dans la foulée pour vérifier si je n’avais pas oublié la suite Office… ce qui était le cas. J’ai alors pris une décision sur un coup de tête : disposant à la fois d’alternatives gratuites (LibreOffice) et pré-installées (iWork sur macOS), j’ai poliment décliné l’installation de Word, Excel et Powerpoint. Il me semblait par ailleurs que mes compétences acquises en master devraient me permettre de contourner l’usage de ces logiciels, surtout si je souhaitais m’inscrire dans une dynamique de recherche portant sur la réappropriation des outils d’écriture.

Un an et demi plus tard, et alors que j’ai beaucoup expérimenté en matière de techniques d’écriture et d’édition, voilà que cette décision me revient en pleine figure comme un boomerang. Ayant réglé récemment la question des conditions d’écriture, je me suis attelé à la rédaction de plusieurs propositions de conférences ou d’articles. Et c’est là qu’une réalité de la communication scientifique s’est rappelée à mon bon souvenir : la majorité des processus éditoriaux sont articulés autour de Word, ce qui se traduit en pratique par une hégémonie du format .docx, voire du fossile .doc.

De cet état de fait découlent deux contraintes qui rendent très compliqué le maintien d’un workflow basé sur le Markdown : les allers-retours entre auteur et éditeur (contrainte processuelle); le respect de la feuille de style imposée (contrainte formelle). La première contrainte occasionne des modifications sémantique dont le report sur le fichier source peut être laborieux; la seconde contrainte impose une mise en page qu’il faut absolument intégrer de façon automatique à sa génération de document, sous peine de devenir fou.

Markdown est un format d’écriture, pas de publication ou d’archivage. Il n’est pas normalisé, son apport en matière de structuration sémantique est limité. Il faut donc bâtir un système autour de lui, ou bien à partir de lui – c’est l’objet de mes expérimentations mais aussi des recherches approfondies d’Antoine Fauchié (2018). À ce sujet, on m’a montré en quoi le Markdown est souvent moins robuste qu’Asciidoc ou Org-mode, ce que j’aimerais beaucoup tester mais je manque de temps. Je me suis donc concentré sur le fait de renforcer mon système personnel, notamment avec une intégration plus fluide de ses différents composants durant la rédaction.

L’irruption de Word dans le jeu change la donne. Mon système artisanal peut difficilement s’intégrer à un dispositif éditorial si le principal rouage en est absent : n’ayant pas Word sur ma machine, je peux toujours faire du .docx avec Pandoc mais cela complique considérablement le respect des contraintes mentionnées plus haut.Je souligne la distinction entre système et dispositif : l’opérabilité critique de ce dernier repose précisément sur le dévoilement de logiques contraignantes.

En effet, le bon déroulement du processus nécessite une fonctionnalité logicielle de révision; quant à l’automatisation de la mise en page, elle repose sur des modèles de documents. Comment faire l’un ou l’autre sans Word?

Réponse : avec beaucoup de logiciels libres et quasiment zéro huile de coude.

La solution

J’aime beaucoup Docdown, qui est une petite interface graphique se substituant à une grosse commande Pandoc. Dans les paramètres, on indique quelles sont les références, le style bibliographique et le modèle de documents, et la conversion se fait par glisser-déposer. Simple et efficace.

Dans son billet sur le workflow d’origine (2017) puis celui qui présente Docdown (2019), Raphael Kabo mentionne que les styles et modèles proposés par défaut devraient satisfaire la plupart des usages. Ce n’est pas mon cas puisque beaucoup de choses changent ne serait-ce qu’avec la langue : les dimension du document (A4 au lieu de lettre US), les espaces et les guillemets, le formatage des références… Heureusement il est possible de charger ses propres fichiers pour adapter le programme à ses besoins.

Pour ce qui est de la localisation en français des styles bibliographiques, Zotero fournit une interface graphique en ligne pour explorer la base de données du projet Citation Style Language (CSL), ce qui permet rapidement de récupérer le style dont on a besoin (que vous utilisiez Zotero ou pas d’ailleurs).

Pour ce qui est de créer un modèle de document .docx sans Word, voici la solution que je recommande : générer un fichier .docx avec le modèle par défaut utilisé par Pandoc, en modifier les styles dans LibreOffice, puis le sauvegarder dans un répertoire approprié pour le charger ensuite dans Docdown (ou directement dans une commande Pandoc). La première option serait de générer le modèle .docx par défaut de Pandoc avec la commande ci-dessous, le remplir avec du contenu générique, appliquer les styles et les modifier.

pandoc --print-default-data-file reference.docx > reference.docx

La deuxième option, pour moi la meilleure, serait de convertir quelque chose d’existant, par exemple un texte complet déjà rédigé en Markdown. De cette façon, vous avez un document avec la plupart des cas de figure à traiter déjà présents (titres, corps de texte, citations, listes, tableaux, etc.); les styles sont appliqués aux éléments ce qui évite de chercher lequel choisir et modifier; enfin, un exemple concret permet d’avoir un meilleur aperçu du rendu qu’un modèle générique. Une fois les styles modifiés, on peut même laisser le contenu : seuls les styles seront récupérés par Pandoc (et donc Docdown) pendant la conversion.

Pistes futures

Pour résumer : en début de thèse, j’avais poliment décliné l’installation de la suite Office sur ma machine pro; un an et demi plus tard, voilà que je fabrique des templates Word dans Libreoffice pour envoyer mes articles dans du .docx généré via Pandoc. C’est une démarche que j’applique à d’autres formes documentaires : j’ai par exemple reproduit le modèle PowerPoint du programme HyperOtlet en CSS pour pouvoir continuer à écrire mes présentations en Markdown et les convertir en Reveal (voir un autre article précédent).

Ce n’est pas une approche conventionnelle mais elle a un intérêt certain, que je vois de plus en plus clairement, notamment parce que j’ai dû argumenter en faveur de ces techniques face à des étudiants qui se méfient énormément du seuil de compétence à franchir pour tout ce qui touche à l’informatique. J’ai commencé à prendre du recul par rapport à l’expérimentation pour élaborer des contributions scientifiques pertinentes (à venir). C’est aussi pour cela que je suis très satisfait de pouvoir réutiliser un outil existant comme Docdown, qui optimise et rationalise mes « moulinettes » faites maison bien mieux que je n’aurais su le faire : le balisage léger a atteint un niveau de maturité suffisant pour faire émerger de vraies perles logicielles qu’il serait idiot de ne pas réutiliser pour gagner un temps précieux (surtout en recherche).

C’est à tel point que j’hésite désormais sur la démarche à suivre pour fabriquer l’édition de ma thèse : faire un fork de Docdown pour en faire son cousin « Texdown » ou bien utiliser d’autres outils clé en main, comme par exemple l’impressionnant gabarit d’Abrüpt? Affaire (encore et toujours) à suivre.

Références

Fauchié, A. (2018). Vers un système modulaire de publication. Mémoire de master. Enssib, Villeurbanne. https://memoire.quaternum.net/

Kabo, R. (2017). My workflow for transforming academic Markdown into beautiful Word documents. https://raphaelkabo.com/blog/posts/markdown-to-word/

Kabo, R. (2019). Introducing DocDown, the easy way to turn academic Markdown into Word documents. https://raphaelkabo.com/blog/posts/introducing-docdown/

Wordless - April 12, 2019 - Arthur Perret