The textobj-names plugin provides a few new text-objects for working with names in source code.
You can use them when you have to deal with names that are separated by delimiters like -
, _
, /
, @
or #
.
Here is an example for a situation this plugin might help you in.
In your source code, you have a variable name like my-old-name
.
Let's suppose you have to change old
to new
and want to get rid of the dashes (| for cursor position).
Using this plugin, you can do the following.
my-o|ld-name
and type ca-
to get my|name
from where you can insert new
.
Similarly, the name could have been my/old/name
or my_old_name
, in which case you would have to type ca/
or ca_
respectively.
The plugin is able to handle consecutive delimiters as well.
That means, transforming the variable name my__variable__name
into myname
can be done via one simple da_
.
The plugin depends on the awesome vim-textobj-user by kana. You need to install it in order to use this plugin.
Plug 'kana/vim-textobj-user'
Plug 'eikendev/vim-textobj-names'
Plugin 'kana/vim-textobj-user'
Plugin 'eikendev/vim-textobj-names'
NeoBundle 'kana/vim-textobj-user'
NeoBundle 'eikendev/vim-textobj-names'