Odpowiedzi:
Dodaj flagę c (w wierszu polecenia vim):
:%s/old/new/gc
wyświetli monit „tak / nie” przy każdym wystąpieniu „starego”.

Wbudowana pomoc Vima zawiera przydatne informacje o opcjach dostępnych po wybraniu zamiany z potwierdzeniem. Posługiwać się:
:h :s
Następnie przewiń do sekcji potwierdzającej opcje. Zrzut ekranu poniżej:
![Tekst z napisem „[C] Potwierdź każde zastąpienie. [...] CTRL-Y, aby przewinąć ekran w dół”](https://i.stack.imgur.com/hQBJ4.gif)
Na przykład, aby zastąpić to i wszystkie pozostałe dopasowania, użyj a.
Mark Biek wskazał za pomocą:
%s/old/new/gc
dla wyszukiwania globalnego zamień z potwierdzeniem dla każdej zamiany. Ale lubię także interaktywnie sprawdzać, czy stary tekst jest poprawnie dopasowany. Najpierw przeprowadzam wyszukiwanie za pomocą wyrażenia regularnego, a następnie ponownie używam tego wzorca:
/old.pattern.to.match
%s//replacement/gc
s//Użyje ostatniego wyszukiwania wzorca.
Myślę, że szukasz cnp. s/abc/123/gcSpowoduje to, że VIM potwierdzi zamiany. Zobacz: pomoc: zastąp za więcej informacji.
Zwykle używam polecenia find / substitute / next / repeat :-)
/old<CR>3snew<ESC>n.n.n.n.n.n.n.
To find "old", substitute 3 characters for "new", find next, repeat substitute, i tak dalej.
Jest to uciążliwe dla masowych substytucji, ale pozwala selektywnie ignorować niektóre stare wystąpienia (wystarczy nacisnąć nponownie, aby znaleźć następne zamiast .powtarzać substytucję).
<CR>?
Jeśli twój tekst zastępujący musi się zmienić dla każdego dopasowanego wystąpienia (tj. Nie po prostu wybierając Tak / Nie, aby zastosować pojedynczą zamianę), możesz użyć wtyczki Vima, którą stworzyłem, o nazwie interaktywne zastępowanie .
Neovim ma teraz funkcję podglądu zamiany:
Zdjęcie pochodzi z: https://medium.com/@eric.burel/stop-using-open-source-5cb19baca44d Dokumentacja funkcji: https://neovim.io/doc/user/options.html# 'inccommand'
nvimwbudowana funkcja, dobrze wiedzieć! Dzięki za udostępnienie!