Hier ist das Szenario: Ich habe eine große Datei voller allerlei eklektischem Müll, den ich neu formulieren möchte. Ich fummle herum und finde ein perfektes Suchmuster, indem ich den / -Befehl benutze und sehe, was es hervorhebt.
Jetzt möchte ich dieses Muster verwenden, um es zu ersetzen. Also fange ich an, :% s / einzugeben, und ich kann mich nicht erinnern, was das Muster war. Gibt es einen magischen Tastaturbefehl, der hier mein letztes Suchmuster eingibt? Wenn ich einen besonders komplexen Regex schreibe, habe ich sogar ein neues MacVim-Fenster geöffnet, den Regex aus dem ersten Fenster in einen Puffer eingegeben und ihn dann beim Schreiben des Ersetzungsmusters in das Vim-Fenster zurückgeschrieben. Es muss einen besseren Weg geben.
Ich habe meine eigene Antwort gefunden, nachdem ich die Frage aufgeschrieben habe: Vim Tipps listet es als die letzte Suche und kann durchgeführt werden auf eine von zwei Arten.
Verwenden Sie eine leere Suche:
:% s // ersetzen / g
Drücken Sie Strg + r , um das Material aus dem Suchpuffer ( / - Sie können jeden anderen benannten Puffer verwenden, indem Sie / für den Buchstaben ersetzen, der diesen Puffer darstellt.
Es gibt ein /
-Register, das das aktuelle Suchmuster enthält, sodass Sie das Suchmuster in das einfügen können, was Sie gerade eingeben (entweder im Einfügemodus oder in der Befehlszeile) mit <CTRL-R>/
Eine weitere Option: Nachdem Sie das Muster mit <CTRL-R>/
eingegeben haben, bearbeiten Sie die Befehlszeile mit <CTRL-F>
.
: help cmdwin