Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I’d like to select (or delete, or change, or …) the whole block of commentary under my cursor.

If my cursor is at the beginning of the commentary block (i.e. over the opening comment character), and it’s a type of comment block with discrete start/end markers, then I can select the entire comment block with V%, but I don’t know of a movement to move to the first character of the block currently under the cursor.

Better yet would be an inner-text object for comments.

Does anybody know of any of the above, or how I could easily create the latter? (I’m new to vim as a whole.)

share|improve this question
up vote 4 down vote accepted

Assuming you're working with C++ block comments, these commands should do what you want:

  1. [/
  2. v
  3. ]/

These will:

  1. The first will jump to the start of a block comment (the slash in /*)
  2. The second will turn on select mode
  3. The third will jump to the end of a block comment (the slash in */), which selects the entire comment block.

I hope that helps!

EDIT: One note about using the lower case v instead of the upper case V. The upper case V will select entire lines while the lower case v will only select the text from the cursor's start position to the end position. Using the lower case v also means not having to hit the shift key. :)

share|improve this answer
[ and ]. Two more incredibly useful nav commands for my vim vocabulary, to go alongside f and t :) Thanks – Mark K Cowan Feb 20 '15 at 9:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .