Ce script permet de transformer un fichier .tex (dont ses includes) en un fichier markdown utilisable, en particulier, par Mkdocs.
La raison qui a motivé ce projet fût des cours d'informatique écrits pour être présentés comme un diaporama Beamer et non comme des cours papiers, ce qui rendait l'apprentissage à la maison moins commode. Après le projet Scraper PDF qui transformait partiellement les cours Beamer en fichier Markdown pour être compilé automatiquement sur le site https://mp2i-thiers.github.io, notre professeur vît notre travail et nous donna accès à certaines de ses sources pour développer un logiciel qui lui convertirait automatiquement ces sources tex et lui permetterait de les mettre en ligne comme on l'avait fait l'année passée, d'où ce projet.
Pour utiliser le script, il faut installer les dépendances suivantes :
sudo apt install netpbm poppler-utils texlive-extra-utilsLogiciels necéssaire pour la conversion du latex en image si le latex n'est pas affichable par Mkdocs, voir pnglatex
Dépendamment de ce que vous voulez compiler ou pas, Tex-Full peut être necéssaire (comme pour par exemple faire le rendu de dessin avec xypic)
sudo apt install texlive-fullPuis les dépendances python :
pip install -r requirements.txtFait avec Python 3.10
Pour exécuter le programme :
python converter <chemin fichier.tex>Exemple de sortie :
$ python converter graphes.tex
/!\ Impossible d'importer le fichier topo.tex
/!\ Impossible d'importer le fichier cfc.tex
/!\ Commande impossible à parser : \xymatrix @R=1pc { *=+<15pt>[o][F]{0}\ar[r]\ar[rd] &*=+<15pt>[o][F]{1}\ar[r] &*=+<15pt>[o][F]{3}\\ &*=+<15pt>[o][F]{2}\ar[u]& }
Conversion en image...
Conversion en image réussie
Conversion terminée !
$ ls
graphes.tex.md imagesIci graphes.tex.md contient tout le fichier tex converti en markdown, et images contient un sous dossier du nom du fichier (ici graphes) qui lui même contient toutes les images utilisées par le fichier markdown graphes.tex.md et celles qui sont générées pour contourner les problèmes de compatibilités entre le latex utilisé par l'utilisateur et celui de Mkdocs.
Ce projet utilise TexSoup et pnglatex qui peuvent être assez vieux et plus trop adapté.