Vue lecture

Pandoc - Convertir vos documents sans logiciel proprio

Si vous avez déjà galéré à convertir un fichier .docx en Markdown propre, ou un document LaTeX en HTML sans que la mise en page explose... vous connaissez la douleur. Pandoc règle ça depuis des années en ligne de commande, mais pour ceux que le terminal rebute, y'a du nouveau. Le convertisseur universel de John MacFarlane tourne maintenant dans le navigateur, sans rien installer. Même pas un petit npm install ^^.

Pour ceux qui débarquent, Pandoc c'est un outil open source (licence GPL) créé par un prof de philo à Berkeley, qui gère une centaine de formats en entrée et en sortie... du .md au .docx en passant par le LaTeX, l'EPUB, le HTML, le reStructuredText et même les slides reveal.js. Bon, en gros, c'est la pierre de Rosette (non pas de Lyon) de la conversion de docs.

La version web (zéro install)

Alors pour ça, direction pandoc.org/app . L'interface est basique, vous glissez-déposez votre .docx ou .tex, vous choisissez le format de sortie dans le menu déroulant, et vous cliquez sur Convert. Et c'est terminé.

Et le truc cool c'est que rien ne quitte votre navigateur. Le moteur Pandoc tourne en WebAssembly directement dans l'onglet de votre navigteur, du coup vos fichiers ne transitent par aucun serveur. Vous pouvez vérifier ça dans les DevTools réseau... et après le chargement initial de ~15 Mo, c'est clean. Donc même pour des docs un peu sensibles, y'a pas de souci.

Attention, la version web a quand même ses limites. Elle peut générer du PDF grâce à Typst (embarqué en WASM aussi), mais les très gros fichiers vont faire ramer votre navigateur. Après pour le reste, ça fait le taf.

En ligne de commande (pour les power users)

Après si vous avez des gros volumes de fichiers à traiter ou des conversions récurrentes, la CLI reste imbattable. Sur macOS c'est un brew install pandoc, sur Linux un apt install pandoc et sur Windows y'a un .msi sur le site officiel. En deux minutes c'est installé.

La syntaxe ensuite est limpide :

pandoc monfichier.md -o monfichier.docx

Et là, magie, votre fichier .md se transforme en document Word propre avec les titres, les listes, le gras, tout y est. Dans l'autre sens ça marche aussi :

pandoc rapport.docx -o rapport.md

Pratique pour récupérer un vieux rapport.docx et le transformer en Markdown exploitable dans Obsidian ou Logseq .

Cas d'usage concrets

Allez, imaginons que vous ayez 200 fichiers .md dans Obsidian et vous vouliez les envoyer à quelqu'un qui ne jure que par Word ? Un petit convert.sh avec une boucle for f in *.md et c'est plié en 30 secondes.

Et si votre CV est en LaTeX (parce que vous êtes un vrai barbu, ahaha), mais que le recruteur veut un .docx parce que lui c'est pas un vrai barbu (ah le faible ^^), au lieu de copier-coller comme un sauvage, faites un petit pandoc cv.tex -o cv.docx et c'est au propre. Attention quand même, les tableaux LaTeX complexes peuvent casser à la conversion.

Ou encors si vous rédigez en Markdown (parce que c'est rapide et surtout versionnable avec git) et que vous exportez ça ensuite en PDF ou HTML selon le destinataire, avec l'option --css style.css ou un template perso en .yaml, le rendu sera propre.

Bref, vous l'aurez compris, Pandoc c'est flexible.

Web vs CLI, on choisit quoi ?

La version web c'est donc parfait pour les conversions ponctuelles. Vous avez UN fichier .odt ou .rst à convertir, pas envie d'ouvrir un terminal, hop vous allez sur pandoc.org/app et c'est réglé en 10 secondes.

La CLI, elle, assurera grave dès qu'on parlera d'automatisation. Scripts bash, intégration dans des pipelines CI/CD, conversions avec des templates perso, filtres Lua... Là c'est un autre monde. D'ailleurs, pas mal d'outils comme MarkItDown ou ConvertX utilisent Pandoc en backend.

Voilà, comme ça tout le monde y trouve son compte et Pandoc peut enfin régner sur le monde !!!

  •  

Stash - Synchroniser vos notes Apple Notes avec Markdown

Si vous êtes comme moi et que vous vivez dans Apple Notes parce que c'est fluide, synchronisé partout, et que ça marche sans qu'on ait à se poser de questions, cet outil va vous plaire.

Parce que oui, voilà, le jour où vous voulez bidouiller vos notes en ligne de commande, les exporter en Markdown, ou simplement éviter de vous retrouver coincé dans votre prison dorée Apple... Et bien c'est la galère. J'ai longtemps cherché une solution propre. Je me suis même dit à un moment que j'allais coder un script Python foireux pour scrapper la base SQLite locale, mais j'ai vite abandonné l'idée.

Pourquoi ? Parce que j'ai découvert Stash , un petit outil en ligne de commande qui fait le pont entre vos notes Apple et des fichiers Markdown.

Et le truc cool, c'est que ça marche dans les deux sens. Vous pouvez exporter vos notes Apple en Markdown (comme ici : Exporter pour vos backups ), mais aussi éditer vos fichiers Markdown et renvoyer les changements directement dans Apple Notes. C'est une vrai synchro bidirectionnelle qui vous rend vraiment maître de vos données.

J'ai testé ça sur macOS Tahoe avec un dossier de notes en vrac. J'ai lancé le bousin, et ça m'a fait plaisir de voir mes fichiers .md popper proprement dans le terminal, prêts à être commités ensuite sur un GitHub ou édités dans VS Code.

L'installation est toute bête, via Homebrew :

brew tap shakedlokits/stash https://github.com/shakedlokits/stash
brew install shakedlokits/stash/stash

Et ensuite, c'est juste 2 commandes. Pour exporter une note Apple vers Markdown, c'est

stash pull "Ma Super Note"

Stash va chercher la note dans Apple Notes, la convertit en Markdown propre via Pandoc, et vous la balance dans un fichier local Ma Super Note.md.

Et la seconde commande c'est pour faire l'inverse (éditer votre Markdown et pousser les changements vers Apple Notes). Là faut faire

stash push "Ma Super Note.md"

Et là, magie !! Vos modifs se retrouvent dans l'app Notes, synchronisées sur tous vos appareils Apple (iPhone, iPad, Mac). C'est dommage que ça soit pas natif ce truc.

Stash c'est chouette (Oula pas facile à prononcer vite celle là) parce qu'il utilise du YAML front-matter pour lier chaque fichier Markdown à une note Apple spécifique (via un ID unique). Quand vous faites stash push, le contenu du fichier écrase la note. Quand vous faites stash pull, la note écrase le fichier.

Attention toutefois car c'est là que ça se corse... Stash écrase sans pitié !! Si vous modifiez votre note sur l'iPhone ET votre fichier Markdown en même temps, c'est le dernier qui parle qui a raison. Y'a pas de fusion intelligente à la Git, donc gaffe aux conflits. C'est un peu brut de décoffrage, mais au moins c'est clair et prévisible.

Bref, pour ceux qui veulent scripter leurs notes, automatiser des backups, ou simplement bosser en Markdown avec leur éditeur préféré, c'est le chaînon manquant. J'avais testé Obsidian et Joplin par le passé, mais la synchro iCloud ou WebDAV m'avait saoulé. Là, c'est le bon compromis avec l'interface Apple pour la saisie, le Markdown pour le stockage long terme.

  •  
❌