Echo shell-opdracht binnen vim

Ik schrijf enkele kaartopdrachten die externe opdrachten uitvoeren. Ik kan bijvoorbeeld de volgende kaartopdracht hebben om het werkproject te compileren.

nnoremap  :!mvn compile test

Wanneer vim echter overschakelt naar een shell, is het niet duidelijk welke opdracht wordt uitgevoerd. Is er een manier om het commando op de shell te laten verschijnen, in plaats van het weer te geven? Het lijkt vervelend om elke keer het volgende te schrijven, maar het zou doen wat ik wil.

nnoremap  :!echo "mvn compile test":!mvn compile test
0
gebruik nnoremap is een beter idee
toegevoegd de auteur JuanPablo, de bron
toegevoegd de auteur JuanPablo, de bron
Ik begrijp waarom de eerste 'n' belangrijk is, waarom is 'nore' zo belangrijk? Geeft het een foutmelding als al in kaart is gebracht?
toegevoegd de auteur schmmd, de bron

1 antwoord

Als uw externe opdrachtprocessor een UNIX-stijlshell is, heeft deze een echovoorziening en hoeft u alleen de x-optie door te geven:

map  :!sh -xc 'mvn compile test'
2
toegevoegd