Exécuter le contenu du tampon en tant que vimscript


10

J'ai un nofiletampon qui contient vimscript et je veux l'exécuter. Cependant, :so % ne fonctionnera pas car il nécessite un fichier enregistré, pas un tampon. Existe-t-il une commande vim pour faire cela par défaut? Sinon, est-il possible de créer une fonction qui fait les mêmes choses?

Réponses:


13

Oui, vous pouvez extraire tout le tampon avec ggyGou :%yet l'exécuter avec :@".

En bref:

:%y|@"<CR>

Utilisé dans une cartographie:

nnoremap <key> :%y|@"<CR>

Utilisé dans une commande flexible qui fonctionne sur l'ensemble du tampon par défaut ou sur une plage facultative:

command! -bar -range=% Foo execute <line1> . ',' . <line2> . 'y|@"'

vous avez un deux-points manquant dans la première commande.
Vitor

En outre, cela encombre le "registre. J'imagine que vous pouvez utiliser un autre registre si vous le souhaitez, ou vous pouvez simplement enregistrer le "registre et le restaurer par la suite.
EvergreenTree
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.