¿Cómo saltar entre patrones cuando se usa: vimgrep(lista de Quickfix)?
(2)
Comandos útiles para la lista de soluciones rápidas (corchetes alrededor de parte omittable de los comandos):
-
:cn[ext]y:cp[revious]saltan a la entrada siguiente y anterior -
:cnf[ile]y:cpf[ile]saltan al archivo siguiente y anterior (si la lista de soluciones rápidas no está ordenada por archivo, podría escribir una función quegetqflist(), realice una clasificación y luegosetqflist() -
:cr[ewind]y:cla[st]van al principio o al final de la lista de soluciones rápidas -
:col[der]y:cnew[er]recorrerán las listas históricas de soluciones rápidas.
No hace falta decir que hay muchos otros comandos y puedes descubrirlos en :help quickfix .
En lo personal tengo los siguientes mapas:
| ø | SHIFT | CTRL
------+--------+---------+---------
<F11> | :cprev | :cpfile | :colder
<F12> | :cnext | :cnfile | :cnewer
Por supuesto, si usa la lista de ubicaciones en lugar de la lista de soluciones rápidas ( :lvimgrep ) existen los mismos comandos, simplemente reemplace la c inicial con una l y eso es todo.
Vim 8 Adiciones :
-
:cdo: ejecuta un comando en todas las entradas de la lista de soluciones rápidas. Por ejemplo
:vim /foo/ *.cpp *.h *.hpppuede ir seguido de
:cdo s/pattern/replacement/g -
:cfdo: ejecuta un comando y todos los archivos en la lista de soluciones rápidas. Por ejemplo,
:vim /foo/ *.cpp *.h *.hpppuede ir seguido de
:cfdo %s/2ndpattern/2ndreplacement/g
Soy nuevo en vim y sigo explorando algunas de sus características. Tengo un problema con vimgrep. Puedo buscar un patrón como este vimgrep /define/ ** para que encuentre y abra el siguiente archivo que contiene un define . Pero todavía no pude averiguar cómo ir al siguiente archivo / línea que coincida con mi patrón. Cualquier punteros?
Para saltar a la siguiente aparición del patrón puede usar :cnext . Puedes ir en reversa con :cNext .
No estoy seguro de una forma de omitir todas las ocurrencias hasta el siguiente archivo automáticamente, pero puede abrir la ventana de corrección rápida con :cwindow para ver una lista de coincidencias y navegar a esas coincidencias presionando Intro en la entrada de la lista.