J'aimerais insérer du code source d'un programme dans une fichier LaTeX (en particulier du code
Quels sont les points forts et les inconvénients de ces différents packages ? Pourriez-vous donner un exemple avec chacun des packages que vous évoquerez en utilisant le code source suivant : Ouvrir dans l'éditeur Overleaf
# Test python var = 100 if var == 200: print "1 - Got a true expression value" print var elif var == 150: print "2 - Got a true expression value" print var else: print "4 - Got a false expression value" print var print "Good bye!"
Affichage de 5 parmi 7
Afficher 2 commentaire(s) en plus
|
Le package Ouvrir dans l'éditeur Overleaf
\begin{filecontents*}{facto.py} # Calcul de la factorielle en langage Python def factorielle(x): if x < 2: return 1 else: return x * factorielle(x-1) str(5) + "! = " + str(factorielle(5)) \end{filecontents*} \documentclass{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{xcolor} \usepackage{listings} \lstset{% language=Python, basicstyle = \ttfamily, keywordstyle = \color{magenta}, keywordstyle = [2]\color{orange}, commentstyle = \color{gray}\itshape, stringstyle = \color{cyan}, numbers = left, frame = single, framesep = 2pt, aboveskip = 1ex } \begin{document} \lstinputlisting{facto.py} \end{document} Publiée 05 Mai '20, 16:54 denis ♦♦ |
Si vous êtes satisfait avec le résultat,
listings
est plus facile à utiliser.minted
est plus puissant mais il peut être compliqué ....Est-il nécessaire de charger le package
xcolor
pour utiliser minted ? Je vois des exemples qui chargent les deux, mais si minted utilise Pygment, pourquoi xcolor serait nécessaire ?@idfix
xcolor
n'est pas nécessaire, minted charge ça.@samcarter Cela signifie-t-il qu'on peut utiliser les commandes du package
xcolor
si on ne charge que le packageminted
(et pasxcolor
) parce queminted
fait lui-même\usepackage{xcolor}
?@idefix : je pense que oui. C'est facile à tester.
@idefix Oui, minted fait
\RequirePackage{xcolor}
.« meilleurs », ça ne veut pas dire grand chose sans contexte.
Le sujet a été traité un peu partout depuis toujours, une recherche minimale est nécessaire.
En option : quels sont les points forts et les inconvénients de ces différents packages ? Pourriez-vous donner un exemple avec chacun des packages que vous évoquerez en utilisant le code source proposé ?
Alors oui, mais dit ainsi, c'est payant. :)