How do I Be More Productive In Vim?

by on May 24, 2008 · 5 comments· LAST UPDATED May 24, 2008

in , ,

This is a user contributed FAQ.

Q. I'm just starting in vim text editor but I'm annoying typing and retyping similar statements. Can you address me about it?

A. Yes. Vim offer several functionalities that improve your editing. Here are some of them.

1. Copying a whole line
yy or shift y or :ny

where n is the number of line if n is not specified then copy the current line

2. Copying from current position to end of line.
y$

3. Copying 3 lines after the current position
3yy

4. Copying a range of line
:1,5y or :1y 5
The above example copy 5 lines, from 1 to 5

5. Deleting a whole line (Deleted line is copy to the registers)
dd or :nd
Where n is the number of line if n is not specified then delete the current line

6. Deleting from current position to end of line (Deleted text is copied to the registers)
d$ or shift d
7. Deleting a range of line
:1,5d or :1d 5
The above example remove 5 lines, from 1 to 5 and copy them to a register
8. Put n times a text, previously copied, after the cursor:
np

9. Put n times a text, previously copied, before the cursor
n Shift p

10. Word completion, works in insert mode

  1. Ctrl n search forward for next matching
  2. Ctrl p search backward for previous matching

Very useful in programming (perl, bash, java, other)

11. Put vim in replace mode
Shift r

12. Undo
u

13. Redo
Ctrl r

14. Repeating last change
.

15. Getting help about a topic
:help topic

Note: previous commands work in command mode except 10.

This article / faq is contributed by Yoander Valdés Rodríguez (yoander). nixCraft welcomes readers' tips / howtos.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 5 comments… read them below or add one }

1 housetier May 25, 2008 at 9:49 pm

I likle this series very much. While I already know quite a few things about vim, I usually discover new tricks here. Thanks!

Reply

2 Vaishnavi September 17, 2008 at 10:44 am

I love Vim for one more option.
Ctrl-P for the match it provides when you type a word(Similar to autocomplete option) in Vim. very handy when writing large function and variable names.
You might want to try and include that aswell.

Reply

3 guest August 13, 2009 at 5:49 am

int main(some garbage, I want to change )

when I am inside (…), do: ci”int argc

Reply

4 guest August 13, 2009 at 6:05 am

int main(some garbage, I want to change )

when I am inside (…), do: ci)int argc

Reply

5 Jose Tapia April 14, 2013 at 9:13 am

Vim ROCKS!

Reply

Leave a Comment

Tagged as: , , , , , , , , , , , , , , , , , , , ,

Previous Faq:

Next Faq: