PythonTeX est une package réunissant \(\LaTeX\) et Python.
Qui n’a jamais rêvé de compiler un programme Python pendant qu’il (elle) compilait son document \(\LaTeX\) ? Grâce à ce package, c’est possible !
J’utilise d’ailleurs PythonTeX pour la mini-documentation sur Python (disponible sur ce site).
Installation de PythonTeX
Bien entendu, il faut au préalable installer Python sur votre ordinateur.
Ensuite, vous devez installer le package disponible sur cette page, mais si vous insérez la ligne : \usepackage{pythontex}
directement dans votre document TeX, l’installation se fera d’elle-même si vous êtes sous Windows + MikTeX.
Dans le cas contraire, il vous faudra installer le package, sauf s’il est déjà inclus dans la distribution que vous utilisez (TexLive ou MacTeX).
Il faudra maintenant configurer votre éditeur (TeXMaker par exemple) pour qu’il compile suivant la chaîne suivante :
pdflatex --shell-escape -synctex=1 -interaction=nonstopmode %.tex|
python C:\Users\*****\AppData\Local\Programs\MiKTeX\scripts\pythontex\pythontex.py %.tex|
pdflatex --shell-escape -synctex=1 -interaction=nonstopmode %.tex|
"C:/Program Files (x86)/Adobe/Acrobat 11.0/Acrobat/Acrobat.exe" %.pdf
Il est à noter que tout ceci est à mettre à la suite et que :
- la ligne 1 compile le document TeX;
- la ligne 2 exécute le fichier Python mis dans le répertoire de la distribution \(\LaTeX\) : il faut donc y mettre le chemin vers ce fichier;
- la ligne 3 compile à nouveau le document TeX;
- la ligne 4 affiche le résultat (il faut donc mettre ici le chemin vers votre viewer pdf).
Pour faciliter la compilation, sous TexMaker, j’ai créé une commande utilisateur composée de ces instructions. Ainsi, en appuyant sur [Alt]+[Shift]+[F1], je lance les instructions ([F1] car c’est ma première commande…).
Si cela ne fonctionne pas...
J’ai dû changer mon ordinateur et j’ai donc tout réinstallé… La distribution \(\LaTeX\) s’est installée dans le répertoire Miktex 2.9/ et j’ai installé la version 3.8 de Python.
Bien que le chemin de python.exe apparaisse dans le PATH de windows, la compilation via pythontex me donnait toujours un message d’erreur du genre :
Python is not installed
J’ai donc changé ma commande par la suivante :
pdflatex --shell-escape -synctex=1 -interaction=nonstopmode %.tex|
C:\Users\*****\AppData\Local\Programs\Python\Python38-32\python.exe "C:\Users\*****\AppData\Local\Programs\MiKTeX 2.9\scripts\pythontex\pythontex.py" %.tex|
pdflatex --shell-escape -synctex=1 -interaction=nonstopmode %.tex|
"C:/Program Files (x86)/Adobe/Acrobat 11.0/Acrobat/Acrobat.exe" %.pdf
La présence d’une espace dans le nom du répertoire de Miktex oblige à indiquer le chemin vers pythontex entre guillemets, et j’ai aussi mis le chemin complet vers python.exe car le petit ne le trouvait pas tout seul… Et là, tout fonctionne parfaitement !
Un exemple avec PythonTeX
Pour tester l’installation, rien ne vaut un exemple.
\documentclass[12pt,french]{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{lmodern} \usepackage{babel} \usepackage{pythontex} \setlength{\parindent}{0pt} \begin{document} \begin{pyverbatim} import math def racine(a): return math.sqrt(a) print(racine(9)) \end{pyverbatim} \bigskip Résultat : \begin{pycode} import math def racine(a): return math.sqrt(a) print(racine(9)) \end{pycode} \begin{pyconsole} var = 1 + 1 var \end{pyconsole} \end{document}
devrait donner ceci :
Si la compilation engendre une erreur, assurez-vous que le PATH de Windows contient le chemin vers le programme Python.
Bonjour,
Je ne suis pas un expert en informatique. Où mettez vous la commande dont vous parlez :
"pdflatex --shell-escape -synctex=1 -interaction=nonstopmode %.tex|
C:\Users\*****\AppData\Local\Programs\Python\Python38-32\python.exe "C:\Users\*****\AppData\Local\Programs\MiKTeX 2.9\scripts\pythontex\pythontex.py" %.tex|
pdflatex --shell-escape -synctex=1 -interaction=nonstopmode %.tex|
"C:/Program Files (x86)/Adobe/Acrobat 11.0/Acrobat/Acrobat.exe" %.pdf"
dans le fichier tex ?
dans le terminal ?
Comment dit dans l’article, il faut mettre cette ligne de commande à l’endroit où vous compilez le fichier. Donc dans les paramètres de l’éditeur (si on utilise un éditeur comme TexMaker) ou dans le terminal si on compile le fichier en ligne de commande.