9
votes

Comment imprimer physiquement le code Python en couleur de ralenti?

J'ai recherché une réponse à cela, mais les solutions associées semblent concerner 'imprimer' dans l'interprète.

Je me demande s'il est possible d'imprimer (physiquement sur papier) Code Python en couleur de ralenti?

Je suis allé à: Fichier> Fenêtre d'impression En ralenti et il semble simplement imprimer une version en noir et blanc sans demander à imprimer de la couleur, etc.

EDIT:

Il semble que cela ne soit pas disponible pour ne pas être disponible, l'option consiste donc à copier le code sur un éditeur de texte tel que SCITE et d'imprimer à partir de là - tout comme la syntaxe d'inactivité par défaut cependant.


0 commentaires

6 Réponses :


5
votes

ralenti ne peut pas le faire, mais vous pouvez le faire de manière indirecte: utilisez le latex pour formater votre script avec les couleurs de ralenti.

Le LISTINGS Paquet est en train de coloriser le ralenti pour Python, mais c'est assez bien caché: vous devez savoir Pour inclure un «fichier de préférence» mentionné dans le manuel , mais sans une description de ses fonctionnalités. L'exemple suivant presque minimal allumera votre script myscript.py en PDF couleur dans les couleurs de ralenti. xxx

Vous pouvez également inclure des extraits de code dans Un vrai document de latex.

Disponibilité: Vous aurez besoin d'au moins listes version 1.5b (2013/08/26). Les utilisateurs de TexLive 2013 doivent le télécharger à partir de CTAN (par exemple avec la ligne de commande TexLive Manager, TLMGR ). Il fait partie de TexLive 2016.

Malheureusement, il semble toujours y avoir un problème avec la version CTAN: le fichier de préférences listes-python.prf est dans le dossier de la documentation pour le package. , pas dans Tex / Latex / Inscriptions Où Tex peut le trouver. Vous devrez le déplacer manuellement pour que l'inclusion au travail.


5 commentaires

Le ralenti peut le faire à l'aide d'extensions (modules Python pouvant être exécutés à partir de l'éditeur lui-même. idle2html ) qui reçoivent des données sur la fenêtre de l'éditeur lorsqu'elle est exécutée.


Dans TexLive 2016 (version actuelle dès maintenant), le fichier listes-python.prf est bien situé ( /texmf-dist/tex/latex/listings/listings-python.prf ) et le latex peuvent le trouver sans la copier.


@ Alexis Cela semble prometteur, mais je sens plus d'instruction est requis s'il vous plaît. Quand je télécharge le paquet d'annonces, je reçois 8 fichiers, mais où puis-je les mettre? Dans un dossier particulier dans l'installation inactive peut-être? Ensuite, puis-je littéralement couper et coller votre script dans la console de ralenti et cela fonctionnera? (Sauf que je réalise que je devrai insérer l'emplacement complet du chemin et le nom de fichier où vous avez "myscript.py".)


@waterman, ce n'est pas comme ça que ça marche. Ma réponse montre comment formater votre code avec latex , un système de formatage de documents. Le ralenti ne joue aucune partie à cela. Les packages sont livrés en standard avec la distribution TexLive.


PS La palette de couleurs dans listes correspond presque exactement à la palette de couleurs de veille.



2
votes

Voici une meilleure réponse. Utilisez l'extension inactive appelée idle2html.py (rechercher cette option). Cela permet d'imprimer au ralenti à un fichier HTML qui a une couleur dans sa feuille de style. Enregistrez ensuite le fichier HTML sur un PDF (la couleur sera toujours là).


0 commentaires

2
votes

Une solution bonne et simple consiste à utiliser idle2html , une extension pour le ralenti.
L'outil permet de sauvegarder le code de la fenêtre de l'éditeur (ou de la coque interactive) vers un fichier HTML,
avec couleur incluse dans le format CSS. Après cela, le fichier peut être imprimé (comme demandé) ou son code formaté utilisé avec d'autres programmes tels que des processeurs de texte.
Un site Web fiable pour télécharger actuellement les fichiers Python et afficher quelques instructions est l'index de package Python (PYPI) - la page est https://pypi.python.org/pypi/idle2html ou le module pip , intégré aux versions de python plus récentes, peut installer les fichiers pour vous.

Un avantage utile de cette méthode est qu'il obtient la mise en forme de la couleur du ralenti au lieu de prendre du temps à analyser le code et à l'aide de couleurs stockées (que de nombreuses autres solutions font). Cela signifie qu'il utilise utilise la palette de couleurs réelle et fonctionne avec différents thèmes de ralenti tels que "Highle Dark". Cela devrait entraîner une utilisation moins de ressources et de la plus courte du code.
En outre, l'extension actuelle (version 2.0) pourrait probablement être adaptée pour utiliser un format de fichier différent lors de la sauvegarde des données car il a un code assez simple.

quelques détails sur la façon dont cela fonctionne:

Étant donné que l'outil est le code Python exécuté sous forme d'extension, il a accès à une variable spéciale fournie par IDLE, qui contient des données sur la fenêtre de l'éditeur. Le fichier extend.txt de l'extension idlelib python (qui exécute l'éditeur) décrit cette variable appelée editwin :

Une classe d'extension inactive est instanciée d'un seul argument, `Editwin ', une instance EditorWindow.

Il comprend également d'autres fichiers sur l'extension de ralenti telle que "config-main.def" et "config-extensions.def". La documentation officielle Python a plus d'informations.

Instructions d'installation:

Copier iDLE2HTML.py dans le dossier "idlelib" de votre installation Python.
Ajouter le contenu de "config-extensions.txt" à votre fichier "config-extensions.def" (également dans le dossier idlelib ) et redémarrez le ralenti.

Comment utiliser:

Sélectionnez "Enregistrer sous HTML" dans le menu "Options" et spécifiez le nom de fichier dans la fenêtre Filedialog. Le fichier HTML est créé immédiatement.

Un code Tweak pour travailler à Python 3.x:

Actuellement, l'extension idle2html (version 2.0) ne fonctionnera pas avec Python 3.x jusqu'à ce que le code est apporté au code que j'ai trouvé dans une version fixe incluse avec module Idlex Python. Voici une comparaison de fichiers, avec l'original à gauche et la version Idex fixe à droite de l'image de capture d'écran.

 Image de comparaison de fichiers décrite ci-dessus.

Description: Si la version Python est Python 3.x, utilisez importateur tkinter comme tkinter au lieu de importer tkinter et importer tkinter.filedialog comme tkfiledialog au lieu de importer tkfiledialog . Le code affiché utilise sys.version dans le module intégré "SYS" dans un bloc IF / SNUE pour exécuter le code droit.


2 commentaires

Vous mentionnez dans les "instructions d'installation" que vous devez "redémarrer inactif". Qu'est-ce que cela signifie et comment pour vous faire?


Cela signifie de quitter le ralenti s'il exécute et de commencer à le démarrer normalement. Le point est que le ralenti charge des extensions lorsqu'elle commence, l'ajout d'une extension n'a aucun effet tant que la prochaine fois que l'inactivité est exécutée. Il faut mettre l'extension dans le répertoire IdleliB pour chaque version de Python installé.



2
votes

Le moyen le plus simple consiste à ouvrir le fichier ".py" avec Notepad ++ et là vous pouvez Sélectionnez et modifiez vos paramètres et préférences (n'importe quel thème que vous souhaitez pour vos codes Python) d'exporter le fichier Python dans un fichier PDF coloré (à l'aide d'une imprimante virtuelle PDF) ou d'imprimer directement :-).

ou

Si vous utilisez VS Code , puis installez simplement ( PrintCode ) Extension et après l'installation:

  1. Ouvrez VS Code et allez à Vue
  2. Cliquez sur Palette de commande
  3. Recherchez " printcode "

    Il va exporter le fichier python sous la forme HTML avec votre navigateur Internet par défaut et vous pouvez l'imprimer directement ou avec une imprimante virtuelle, imprimez votre document Python sur un PDF coloré.


0 commentaires

0
votes

J'ai eu le même problème et j'ai ouvert le fichier PY dans le code Visual Studio, puis copié simplement (Ctrl A / Ctrl C) et collé le texte (Ctrl V) dans un éditeur Microsoft tel que Word ou RTF, voire des perspectives. Les couleurs restent, y compris lors de l'impression. Notez que pour éviter le mode nuit défini comme un code VS par défaut, allez à File-> Préférences-> Thème de couleur et choisissez un mode de jour qui convient mieux à l'impression.


0 commentaires

0
votes

Je fais tout le temps avec de grandes quantités de code. Il suffit d'installer Scite "https://www.scinttilla.org/ssitedownload.html" Copiez et collez votre code et imprimez. J'aime attraper une bande et des marqueurs coller toutes les feuilles sur un mur et mettre de la musique sur. Codage heureux!


0 commentaires