I would definitely consider it a misfeature, given how it complicates things, muddying modes when invoked, and when a simple c or s from any visual mode has roughly the same effect.
I use normal select when:
- I want to apply a regex to a specific area, e.g. a single function (vjjjjj:s/my_function/my_new_function/g<enter>)
- I want to cut some text and I don't want to count how many words out it is (vwwwwx)
I use block select when:
- I want to delete a section of fixed width formatted text (Vjjjlllx). Useful for manipulating logs with a fixed width prefix.
- I want to append text to the start of a line. (VjjjjjjI# <esc>). Useful for commenting out lines.
The big question for me is whether anyone knew of virtual select mode, enabled by `gR`.
It's like select mode except that it replaces screen state instead of characters, so pressing `<Tab>` will replace `tabstop` characters instead of just one.
- select from block requires Ctrl-G and then start typing, but c or s is more direct
- select character uses gh, but c is more direct
- select line uses gH, but C is more direct
In what circumstances would Select mode be more direct than to go from Visual to Insert, or from Normal to Insert?