Innym podejściem, w zależności od twojego przypadku użycia, byłoby użycie vimgrep i jego wyników w quickfix . Możesz wykonać następujące czynności:
:vimgrep pattern %przeszuka bieżący plik i przeniesie Cię do pierwszego wyniku wyszukiwania. Co ważniejsze, wyniki są również umieszczane na „liście quickfix”.
:copenotworzy listę quickfix w oddzielnym oknie quickfix. Będziesz miał więc oddzielne okno ze wszystkimi liniami z twojego ostatniego vimgrepa. W oknie quickfix możesz nacisnąć klawisz Enter lub dwukrotnie kliknąć linię, aby przejść do odpowiedniej linii w oryginalnym pliku.
:colderpozwoli ci wrócić do starszych list quickfix (starszych wyników vimgrep). I :cnewerprzechodzi do nowszych wyników wyszukiwania.
Zauważ, że lista quickfix jest również aktualizowana podczas pracy :make(dlatego nazywa się quickfix do naprawiania błędów). Z tego powodu istnieje również alternatywa dla listy szybkich poprawek, zwana „listą lokalizacji”. Aby go użyć zamiast użyć :lvimgrep, a następnie użyć polecenia L-prefiksem zamiast poleceń C-prefiksem - :lopen, :lolder, :lnewer.
Oczywiście możesz zrobić o wiele więcej. Zobacz, :help quickfixaby uzyskać więcej informacji.
PS, powiedziałeś, że nie chcesz metody, która usuwa linie, a następnie je cofa. Ale skoro zaznaczyłeś g/ERRORjako odpowiedź, pomyślałem, że wskazałbym szybką i nieprzyjemną metodę g!/ERROR/d. Następnie możesz łatwo cofnąć to za pomocą u. Również FYI, możesz to zrobić:set hlsearch aby podświetlić wzorce dopasowane do :gpoleceń.