Change up to next underscore "_" in vim
ct_
will change up to the underscore and leave it be.
cf_
will change up to the underscore and eat it as well.
Alternatively, you can use set iskeyword-=_
which will make the "_" character a valid word boundary. This might be preferable if you, like me, tend to use ciw
more often than just cw
.
EDIT: Because iskeyword
is how the syntax highlighting is managed, you'll probably notice that for methods/functions that contain keywords the highlighting is strange after playing with this. I found that I like nnoremap <leader>e :set iskeyword-=_<cr>diw:set iskeyword+=_<cr>i
as a way to allow me to more easily edit the words I want without messing with the highlighting.