Soy nuevo en vim y sigo explorando algunas características de él. 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 aún no pude encontrar la forma de ir al próximo archivo/línea que coincida con mi patrón. ¿Alguna sugerencia?Cómo pasar de un patrón a otro cuando se usa: vimgrep (lista de Quickfix)?
Respuesta
Comandos útiles para la lista quickfix (entre corchetes parte omitirse de los comandos):
:cn[ext]
y:cp[revious]
salto a la entrada siguiente y anterior:cnf[ile]
y:cpf[ile]
salto al archivo siguiente y anterior (si la lista de arreglos rápidos no está ordenada por archivo, puede write a function thatgetqflist()
, performs a sort and thensetqflist()
:cr[ewind]
y:cla[st]
ir al principio o al final de la lista de arreglos:col[der]
y:cnew[er]
iterarán a través de listas históricas de soluciones rápidas.
No hace falta decir que hay muchos otros comandos y puede encontrarlos en :help quickfix
.
Personalmente tengo los siguientes mapas:
| ø | SHIFT | CTRL
------+--------+---------+---------
<F11> | :cprev | :cpfile | :colder
<F12> | :cnext | :cnfile | :cnewer
Por supuesto, si se utiliza la lista de ubicaciones en lugar de la lista quickfix (:lvimgrep
) existen los mismos comandos, basta con sustituir la inicial c
con un l
y eso es todo .
Vim 8 Adiciones:
:cdo
: ejecutar un comando en todas las entradas de la lista quickfix. Por ejemplo
:vim /foo/ *.cpp *.h *.hpp
puede ir seguido de
:cdo s/pattern/replacement/g
:cfdo
: ejecutar un comando de una lista de todos los archivos en quickfix. Por ejemplo,
:vim /foo/ *.cpp *.h *.hpp
puede ir seguido de
:cfdo %s/2ndpattern/2ndreplacement/g
Para pasar a la siguiente aparición del patrón, puede usar :cnext
. Puede ir en reversa con :cNext
.
no estoy seguro de una forma de omitir todas las apariciones hasta el siguiente archivo de forma automática, pero se podía abrir la ventana quickfix con :cwindow
para ver una lista de coincidencias y vaya a esos partidos por golpear Introduzca en la entrada en la lista.
- 1. VIM búsqueda de patrón en quickfix
- 2. Pasar una lista a otro archivo jsp
- 3. información pasar de un modelo de vista a otro
- 4. TFS: Pasar de un servidor a otro
- 5. Patrón de comando: cómo pasar parámetros a un comando?
- 6. ¿Cómo pasar eventos de clic de un div a otro?
- 7. Pasar credenciales de un servicio wcf a otro servicio wcf
- 8. ¿Cómo salir de Vim quickfix?
- 9. ¿Puedo pasar un patrón a una función?
- 10. ¿Cómo formatear los decimales de flotación cuando se usa Valor con el enlace de patrón?
- 11. Patrón de observador: cuando a
- 12. ¿Es posible pasar un parámetro a XSLT a través de una URL cuando se usa un navegador para transformar XML?
- 13. ¿Cómo se usa el patrón de estado correctamente?
- 14. ¿Cómo se usa `to_sql` en AREL cuando se usa` average() `?
- 15. ¿Cómo pasar los argumentos de la línea de comando cuando se usa ideone?
- 16. cómo pasar argumentos variables a otro método?
- 17. ¿Al establecer objetos a cero cuando se usa ARC?
- 18. ¿Cómo pasar un bloque a otro en Ruby?
- 19. ¿Cómo se duplica el artículo cuando se usa jquery ordenable?
- 20. ¿Cómo cambiar el texto de advertencia cuando se usa patrón en la entrada?
- 21. Cómo no pasar el contenedor cuando se usa IoC en Winforms
- 22. ¿Cómo se permite a NHibernate reintentar transacciones bloqueadas cuando se usa sesión por solicitud?
- 23. Cuando se usa git, ¿cómo se empuja el directorio de trabajo exacto a un control remoto?
- 24. ¿Por qué se usa ToArray() cuando se usa cadena.Únete con una lista <string>?
- 25. Cómo establecer el tipo de columna cuando se usa EPPlus
- 26. Cómo enviar comandos a gvim cuando se usa --remote?
- 27. ¿Cómo formatear la entrada de vim quickfix?
- 28. TDD Organizar Actuar Patrón de Assert cuando se usa Mocks para verificar llamadas de dependencia
- 29. Devuelve una lista de objetos cuando usa JAX-RS
- 30. Cómo establecer un valor en NULL cuando se usa Zend_Db
El popular complemento [unimpaired.vim] (http://www.vim.org/scripts/script.php?script_id=1590) mapea ': cprev' y': cnext' a '[q' y'] q' . Toma muy poco tiempo para acostumbrarse. – glts
También asigna '[' y '] ' a ': cpfile' y': cnfile'. –
N.B. Esto no se debe confundir con ': cNext', que es lo que viene primero para mí si escribo': cn' y luego presiono tab. El problema es que acaba de obtener un error de 'No más artículos', porque como la respuesta de @RandyMorris 'señala ': cNext' va en reversa. Solo asumí que algo estaba mal. – icc97