a volte le mie sottotistusioni globali non sostituiscono tutte le partite in una riga. È confermato dal fatto che posso vederlo quando eseguo sostituzioni con conferma, una corrispondenza viene trovata in una riga con più possibili corrispondenze, ma poi passa a un'altra riga.
Uso i parametri g
o gc
che operano sull'intero file con %
.
Su questo file:
hello hello
hello
hello hello hello
hello
Se lo faccio %s/hello/goodbye/g
ottengo
goodbye hello
goodbye
goodbye hello hello
goodbye
Tutto ciò che ho nella mia .vimrc
ricerca / sostituzione è
set hlsearch
set ignorecase
set incsearch
:echo &gd
e cosa succede se aggiungi un secondo g
flag come questo: %s/hello/goodbye/gg
o se rimuovi completamente il g
flag? Se l'output di :echo &gd
è 1
, prova ad aggiungere set nogdefault
alla fine del tuo vimrc
.
set nogdefault
come hai detto e funziona ora, a proposito. Grazie!
vimrc
.