web-dev-qa-db-fra.com

Comment exécuter un script à partir de l'éditeur vim?

Lorsque je suis dans vim (l'éditeur que j'utilise principalement en raison de l'intégration de terminal), je souhaite exécuter mon script (par exemple, Python ou Javascript) à partir de vim.

Cela ne me dérange pas si cela ouvre une nouvelle fenêtre, je voudrais juste savoir s'il existe une commande de l'éditeur pour enregistrer/exécuter. TNX1.0E6,

4
Selby Rowley-Cannon

Vous pouvez exécuter des commandes dans vim avec !

:!echo "hello"

Le symbole % est un raccourci pour le nom du fichier actuellement ouvert, vous permettant ainsi d’exécuter votre fichier actuel avec

:!%

La sortie de la console apparaîtra et vous appuierez sur Entrée pour revenir à la modification de votre fichier.

Vous pouvez ajouter un raccourci clavier à enregistrer et à exécuter dans votre ~/.vimrc

nnoremap <F5> <esc>:w<enter>:!%:p<enter>
inoremap <F5> <esc>:w<enter>:!%:p<enter>
7
user77859

Vous pouvez configurer un fichier Makefile dans votre dossier de projet, puis utiliser la commande intégrée: vim de vim. Les Makefiles étant ridiculement puissants et ne se limitant pas à la compilation d’applications C, vous pouvez le configurer pour appeler votre script et effectuer tout traitement supplémentaire nécessaire.

Le contenu du Makefile ressemblerait à ceci:

all:
        yourscript.py
0
ImaginaryRobots

J'utilise spécifiquement cela pour compiler et afficher des documents LaTeX dans vim:

map     <F5>            :! pdflatex "%"<CR><CR>
map     <F6>            :! xdg-open "%<.pdf";<CR>

le "% <" obtient le nom du fichier actuel stocké dans la mémoire tampon sans l’extension (c’est-à-dire que, lorsque je modifie book.tex, il renvoie book pour que je puisse attacher ma propre fin.

0
EricR