Le langage rst, déjà évoqué dans un article précédent, possède plusieurs formats sortie : pdf, odt, html, xml… Cependant, les outils pour générer la sortie ne prennent pas tous les même paramètres, et il est difficile de faire un fichier source qui soit compatible avec l’ensemble des compilateurs.
La coloration syntaxique
La coloration syntaxique, par exemple, n’est pas traitée de la même manière selon l’outil utilisé. Nous retrouvons deux directives :
Nom | Outils |
---|---|
code-block | rst2pdf, sphynx… |
sourcecode | rst2odt |
La première est devenue un standard, la seconde n’est prise en compte que par rst2odt (et est en plus un peu lourde à mettre en place).
La modification
Heureusement, c’est assez facile d’ajouter de nouvelles directives, et il est possible de modifier le script à lancer pour prendre en compte la directive code-block !
Vous pouvez télécharger le script modifié ici. J’ai repris l’option d’inclusion de fichier, mais je ne gère pas les limites (je n’en avais pas besoin).
Et voilà, ça s’utilise comme ça :
$ python bin/rst2odt.py --strip-comments --stylesheet=resources/template.odt\
--add-syntax-highlight source.rst source.odt