Utilizo complementos vim y vim para Visual Studio cuando escribo C ++. A menudo, me encuentro queriendo buscar una cadena dentro de una función, por ejemplo, cada llamada a object->public_member.memberfunc()
.
Sé que vim ofrece una manera conveniente de buscar una sola palabra, presionando *
y #
, y también puede buscar cadenas escritas usando el /
comando de barra oblicua . Al intentar buscar todas las instancias de una cadena más larga como la anterior, se tarda un poco en volver a escribir después /
.
¿Hay alguna forma de buscar la selección? Por ejemplo, resalte con v
, luego copie con y
, ¿hay alguna forma de pegar después /
? ¿Existe un atajo más fácil?
vim
viemu
string-search
Marcin
fuente
fuente
Respuestas:
Consulte este consejo de Vim: busque texto seleccionado visualmente
O simplemente puede tirar del texto seleccionado con y e ir al modo de búsqueda / , luego puede pegar el último texto tirado con Ctrl + R 0
fuente
Responder
Explicación
q/
funciona de manera similar a la búsqueda de vainilla,/
excepto que está en modo de comando, por lo que enp
realidad "pega" en lugar de escribir el carácterp
. Entonces, lo anterior copiará el texto que está buscando y lo pegará en una búsqueda.Para más detalles escriba
:help q/
fuente
evil-mode
, esto realmente funciona, mientras que la respuesta aceptada se rompe miserablemente (probablemente debido al uso de laCtrl
clave).q/gvp
dondegv
representa la última selección visual ...q/gvp
no me funciona. ¿Podría aclarar su sugerencia?Utilice q / en lugar de solo / . (Lo mismo con q : ). ¡Ahora puede editar VIM a través de su historial de comandos y búsqueda! (Pruebe Ctrl-N y Ctrl-P en algún momento).
fuente
Me acabo de enterar (a través del excelente libro Practical Vim ) que hay un complemento para eso. Puede encontrar el complemento en GitHub .
El complemento le permite buscar una selección visual con
*
y#
.fuente
magic
configuración actual . Esto incluso podría hacer que la búsqueda fallara en metacaracteres que requieran balance. El complemento mencionado aquí se escapará antes de buscar el texto seleccionado.n
para ir al siguiente elemento encontrado, mientras que los enfoques de Cory y CMS sí permiten ..De hecho, puede seleccionar texto visualmente y presionar * y # para buscar la siguiente aparición ... Funcionará de la misma manera, la única advertencia es que:
http://vim.wikia.com/wiki/Search_for_visually_selected_text
fuente