Si tengo este texto en vim, y mi cursor está en el primer carácter:
www.foo.com
Sé que puedo hacer:
cwpara cambiar hasta el primer período, porque unaword(w minúscula) termina en cualquier puntuación O espacio en blancocWpara cambiar la dirección completa, porque unaWord(w mayúscula) termina solo en espacios en blanco
Ahora, ¿qué pasa si tengo esto?
stupid_method_name
y quieres cambiarlo por esto?
awesome_method_name
Ambos cwy cWcambiar todo, pero solo quiero cambiar el fragmento antes del guión bajo.
Mi técnica alternativa es c/_, que significa 'cambiar hasta llegar al siguiente guión bajo en una búsqueda', pero para mí, eso también hace que todos los guiones bajos se resalten como términos de búsqueda, lo cual es un poco molesto.
¿Hay un especificador como wo Wque no incluya guiones bajos?

:nohl?Respuestas:
Puedes hacer
cf_. f no resaltará el carácter buscado.También puede hacerlo
ct_si no desea incluir el _.fuente
favanza hacia el personaje;Fretrocede al personaje;tavanza justo antes del personaje; yTretrocede al personaje a la derecha del personaje objetivo. Entonces su segundo ejemplo debería haber sidoct_.ct_Es exactamente lo que quería. Esto ahora se ha convertido en parte de mi flujo de trabajo habitual. ¡Gracias!Pon esto en tu .vimrc:
set iskeyword-=_Entonces _ será tratado como un límite de palabra (aunque no como un límite de WORD), y cw podría usarse para cambiar simplemente "impresionante", y cW para cambiar todo.
Ver:
:help iskeywordy
:help wordpara más información.
fuente
ct_como dice doble cara a continuación, ya que es conciso y es el comportamiento predeterminado de vim.camelcasemotion es un complemento vim bastante útil que te permite moverte a través de las palabras cuando usas subrayado o notación camelcase. Con este complemento, puede colocar una coma delante de muchos de los comandos de movimiento vim tradicionales que le permitirán tratar las palabras en subrayado o notación de camello como palabras completas.
fuente