Realmente disfruto de la incsearch
funcionalidad de Vim . ¿Hay alguna forma de que funcione, o algo similar, mientras hago un reemplazo?
Por ejemplo, si en modo normal escribo:
:%s/potato/
¿Puedo potato
resaltar todos los mensajes de correo electrónico en mi archivo, tal como se resaltan incsearch
cuando escribo
/potato
?
Esto ya me ayudaría mucho al usar expresiones regulares. Sería muy agradable tener eso cuando escribo esto:
:%s/potato/banana/
Reemplazaría la potato
s con banana
s, y las resaltaría, tal vez las sustituciones deberían ser de un color diferente. Sin embargo, no debería "confirmar" el cambio hasta que presioné enter).
Estoy usando neovim en este momento, en caso de que ayude.
incsearch
?hlsearch
debería funcionar ootb, si escribo:%s/potato/\0/
para reemplazarlopotato
consigo mismo, entonces veo todas las coincidencias resaltadas.:/pattern<CR>
funciona bien, luego agregue% sy la cadena de reemplazo. Thene de nuevo para no refinar la búsqueda y el uso de CTR-R / pegar a parte de la búsqueda:%s/
:%s/potato/carrot/c
le permitirá saltar ("confirmar") a través de sus reemplazos (agregarg
para reemplazar todas las instancias en la misma línea) y con lashlsearch
verá de antemano.Respuestas:
Después de un poco de búsqueda, encontré este problema de NeoVim , que a su vez fue cerrado por este RP , que me llevó a la
inccommand
configuración. Agregando esto a mi archivo de configuración:hace que NeoVim se comporte casi exactamente como solicité en mi pregunta. No encontré algo equivalente para Vim normal, pero no lo busqué con mucha energía.
fuente
incsearch
en subtitutions (siendo un Vimmer perezoso y lento para adoptar cosas neo), Probablemente la búsqueda de la patata (/potato
) disfrutando ordinarias adicionales highlighighting de búsqueda y luego sustituir con una búsqueda en vacío:%s//banana
. Pero no sé cómo se comparaset inccommand=nosplit
en otros aspectos.inccommand
configuración que hice un asciinema mostrándolo en el trabajo, en caso de que te motive a probar neovim