Actions rapides (macOS) et conversion Pandoc avec Raccourcis

J’ai parfois besoin de convertir du HTML vers un format .docx (cf. Pandoc : conversion html vers docx).

Jusqu’à présent, je lançais donc la commande Pandoc à partir de mon terminal1.

Hier, un collègue m’a rappelé que l’on peut ouvrir le terminal au départ d’un dossier en faisant clic droit sur le dossier : Services > Nouveau terminal au dossier ou Nouvel onglet de terminal au dossier.

Ce matin, je me suis dit que ça serait cool de pouvoir lancer la conversion Pandoc directement depuis le menu contextuel avec une action rapide macOS.

J’ai testé deux méthodes : une avec Automator et une avec Raccourcis.

Je me suis un peu arraché les cheveux avant de réussir à obtenir le résultat escompté et je me suis dit qu’une documentation ne serait pas superflue.

Je décris ici la méthode avec Raccourcis et je ferai un billet dédié pour Automator.

Note : j’ai adapté un peu mon script Shell entre le moment où j’ai fait les captures et la rédaction.

Étape 1 : Créer et configurer un raccourci comme action rapide

  1. Créer un nouveau raccourci. Par défaut, aucune option n’est cochée sauf si le raccourci a été créé directement dans le dossier « Actions rapides ».
  2. Sélectionner le bouton radio « Détails du raccourci » (icône (i)).
  3. Dans Détails, cocher la case « Utiliser comme action rapide » et « Finder »
  1. Désélectionner les entrées par défaut et ne conserver que « Dossiers ».
  2. Laisser l’option « S'il n'y a aucune entrée : » sur « Continuer ».

Étape 2 : Ajouter l’action  « Exécuter le script Shell »

Dans la bibliothèque d’actions, saisir « shell » et ajouter l’action « Exécuter le script Shell ».

Par défaut, le champ est rempli avec la commande echo "Hello World", l'entrée de raccourci est à définir et l’entrée est transmise vers stdin.

Étape 3 : Configurer l’action « Exécuter le script Shell »

  1. Cliquer sur « Entrée de raccourci ». Dans le type « Dossier », sélectionner « Chemin du fichier ».
  2. Transmettre l'entrée « comme arguments ».
  3. Modifier le script Shell par défaut.

Mon script Shell

cd "$@"
pandoc -f html -t docx *.html -o document-provisoire.docx
open document-provisoire.docx

Mon script est basique, je vous le décortique :

  1. cd "$@" : Pour se placer dans le dossier de travail. Je récupère le chemin avec la variable $@.
  2. pandoc -f html -t docx *.html -o document-provisoire.docx : commande de conversion Pandoc du fichier html2 en document-provisoire.docx.
  3. open document-provisoire.docx : ouverture du fichier généré.

Note : on peut aussi faire autrement et laisser les options d’entrée de raccourci par défaut. Dans ce cas, il faut saisir une variable pour le chemin du fichier à la place de cd "$@" dans le bloc d'exécution du script Shell.

Étape 4 : finalisation & test

  1. Nommer le raccourci. Ex. HTMLtoWord.
  2. Vérifier que le raccourci apparaît dans la liste des « Actions rapides » et qu’il fonctionne.

Je ne sais pas si le temps gagné dépassera le temps passé pour trouver la solution et la documenter, donc j’espère que ça pourra être utile à quelques personnes3 !


  1. Pour les personnes que ça peut intéresser, j’utilise iTerm2 au quotidien à la place de l’application Terminal. ↩︎

  2. Dans le dossier de travail, il ne doit y avoir qu’un fichier html. ↩︎

  3. Ça le sera au moins pour la future moi qui aura tout oublié. ↩︎

Contact

Vous souhaitez réagir ? N’hésitez pas à m’écrire à contact@luce.carevic.eu.