Environnement de rédaction pour les fichiers RST

Dans ma vie professionnelle, j'ai régulièrement des documents à rédiger. La plupart des gens utilisent un logiciel de traitement de texte comme LibreOffice pour réaliser ce genre de tâches. En ce qui me concerne, j'aime pouvoir versionner ces documents dans un dépôt Mercurial. Et le format de fichier de LibreOffice ne permet pas d'afficher aisèment la différence entre deux versions d'un fichier.

J'ai donc opté pour le format reStructuredText (RST) qui me permet de rédiger mon document dans un simple éditeur de texte avec toutes les options de formatage dont j'ai besoin.

Et malgrès tout, j'aime bien avoir un rendu de mon texte en temps réel. Pour ce faire, j'utilise la transformation de RST en HTML que j'affiche dans un navigateur. Mon bureau est donc divisé en deux : Epiphany d'un côté et mon terminal de l'autre. Dans mon terminal, j'ai alors deux onglets : un pour vim et un pour lancer la transformation RST vers HTML.

Pour lancer la transformation dès qu'une modification est faite au fichier, j'utilise inotifywait. inotifywait est un utilitaire qui surveille efficacement les changements sur un fichier. Efficacement car cet utilitaire utilise l'API inotify du noyau Linux. Cette interface fournit un méchanisme pour être rappelé lors des événements touchant au système de fichier.

Ainsi, je configure inotifywait pour attendre l'événement write_close sur mon fichier, et je lance rst2html. J'encapsule tout ça dans une boucle infinie, et c'est terminé :

while true ; do inotifywait -e close_write file.rst rst2html file.rst file.html done

Un simple CTRL+C nous permettra de quitter la boucle.

On peut également noter qu'il vaut mieux utiliser un navigateur basé sur Webkit car ceux ci rechargent automatiquement les fichiers provenant du système de fichier lorsqu'ils changent, contrairement à Firefox.

Derniers articles

Comment devenir un bureau d'enregistrement ?

Devenir bureau d'enregistrement est un parcours de la combattante au niveau technique, administratif et financier. Il y a des cas simples et d'autres qui demandent de raser un Yack.

Précisions sur le projet de bureau d'enregistrement coopératif

L'appel à intérêt lancé la semaine dernière a suscité plusieurs réactions sur les valeurs proposées : clarifions quelques points aujourd'hui.

Appel à intérêt pour un bureau d'enregistrement coopératif

Qui serait partant·e pour participer (ou être client·e) du premier registrar sous forme de société coopérative d'intérêt collectif ?

Offre d'emploi Développeuse/Développeur

Hashbang crée un poste de développeuse/développeur en contrat à durée indéterminée pour agrandir et dynamiser son équipe de production.