Ein anderer Ansatz, der von Ihrem Anwendungsfall abhängt, ist die Verwendung von vimgrep und dessen Ergebnissen in Quickfix . Sie können Folgendes tun:
:vimgrep pattern %durchsucht die aktuelle Datei und bringt Sie zum ersten Suchergebnis. Noch wichtiger ist, dass die Ergebnisse auch in die "Quickfix-Liste" aufgenommen werden.
:copenöffnet dann die Quickfix-Liste in einem separaten Quickfix-Fenster. Sie haben also ein separates Fenster mit allen Zeilen Ihres letzten Vimgrep. Innerhalb des Quickfix-Fensters können Sie dann die Eingabetaste drücken oder auf eine Zeile doppelklicken, um zur entsprechenden Zeile in Ihrer Originaldatei zu springen.
:colderHiermit können Sie zu älteren Quickfix-Listen zurückkehren (ältere vimgrep-Ergebnisse). Und :cnewergeht weiter zu neueren Suchergebnissen.
Beachten Sie, dass die Quickfix-Liste auch beim Ausführen aktualisiert wird :make(weshalb sie als Quickfix zur Fehlerbehebung bezeichnet wird). Aus diesem Grund gibt es auch eine Alternative zur Quickfix-Liste, die als "Standortliste" bezeichnet wird. Um es zu nutzen , anstatt verwenden Sie :lvimgrep, dann l-Präfix - Befehle anstatt c-Präfix - Befehle zur Verfügung - :lopen, :lolder, :lnewer.
Natürlich können Sie noch viel mehr tun. Siehe :help quickfixfür weitere Informationen.
PS: Sie sagten, Sie wollten keinen Ansatz, bei dem Zeilen gelöscht und dann rückgängig gemacht werden. Aber da Sie g/ERRORals Antwort markiert haben, dachte ich, ich würde darauf hinweisen, dass ein schneller und schmutziger Weg zu tun ist g!/ERROR/d. Sie können es dann einfach mit rückgängig machen u. Zu Ihrer Information können Sie auch :set hlsearchMuster hervorheben, die mit :gBefehlen übereinstimmen .