153 votes

Faire fonctionner du code Python dans Vim

Je suis en train d'écrire du code Python en utilisant Vim, et à chaque fois que je veux exécuter mon code, je tape ceci à l'intérieur de Vim:

:w !python

Cela devient frustrant, donc je cherchais une méthode plus rapide pour exécuter du code Python à l'intérieur de Vim. Exécuter des scripts Python depuis un terminal peut-être? Je suis sous Linux.

3voto

Alijah O'Connor Points 41

La réponse acceptée fonctionne pour moi (sous Linux), mais je voulais que cette commande enregistre également le tampon avant de s'exécuter, donc je l'ai légèrement modifié :

nnoremap   :w  :exec '!python' shellescape(@%, 1)

Le :w enregistre le tampon PUIS exécute le code qu'il contient.

3voto

J'utilise

:! [filename.py]; python %

C'est ce qui fonctionne pour moi

2voto

Mahdi Points 21

Vous pouvez également utiliser skywind3000/asyncrun.vim. C'est similaire à ce que @FocusedWolf a répertorié.

2voto

Chris Caro Points 21
  1. Allez dans votre répertoire personnel. cd
  2. Ouvrez votre fichier .vimrc avec vim. vim .vimrc
  3. Ajoutez le code suivant au fichier. nmap :w:!clear;python %
  4. Enregistrez et quittez. ZZ

La prochaine fois que vous voudrez exécuter votre code, appuyez simplement sur F4 en "mode normal". Si vous souhaitez exécuter votre code en "mode insertion", remplacez nmap par imap.

2voto

AKM Points 21

J'utilise ceci. Il enregistre automatiquement le programme et l'exécute dans la shell. Reviens à vim après l'exécution du programme.

Fonctionne en appuyant sur en mode insertion dans vim. Ajoutez le code suivant dans votre fichier vimrc.

imap  :w:!python % [nom_fichier.py]; 

J'ai simplement combiné les deux solutions précédemment fournies à cette question et cela a fonctionné pour moi.

Merci!

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X