May 22 '21
< all postsThe Vim Reference
#vim#productivity#programming
Reading Time: 3 mins
Recently I decided to learn vim after hearing how much Ben Awad loves it. I though maybe it could boost my productivity too. I am still getting use to it, but right now it seems pretty fun.
Now to the reference. Here are some useful commands and what they do:
Using Vim
- Open Vim:
vim filename
- Closing Vim:
:wq
-> save and quit:q
-> quit and not save:w
-> save and not quit
- Hitting gg will take you to the top of file
- G takes you to the bottom
- } and { navigate code blocks
- o adding a new line and put into insert mode
- O adding a new line above and put into insert mode
- w will jump to next word b will take you back
:number
will take you to line number- 0 will take you to the start of the line
- 0 + w or ^ will take you to the first word of a line
h j k l
to move up down left and right- a move over by 1 and set insert mode
- A jump to end and set insert mode
- Hitting "i" in command mode lets you insert
- Hitting shift + i will set insert mode at the beginning of the line
- Then esc puts you back into command mode
- Hitting dd will delete a line and copy to clip board
- Hitting d + } will delete a whole block of code
- Hitting 10 dd will delete 10 lines
- Hitting
u
will undo - Hitting ctrl + r will redo
- Hitting yy will copy a line
- p to paste bellow P to paste above
- x remove a letter where the cursor is
- number x remove number letters before cursor
- ~ swap the case of the letter prefix with number for multiple characters
- . redo
- $ will take you to the end of a line
- W will jump spaces and B reverses that
- f + char find and place cursor on char
- t + charfind and place cursor before char
- % take you to and from closing brackets
- d + % remove code between brackets
- c + w change mode and word will remove a word and set insert mode
- D remove everthing from cursor onwards
- c + t + char edit from cursor to char
- C change whole line
- d + t + char delete from cursor to char
- * take you to occurances of the word where your cursor is
- ; take you to next instance after using a find command
- r + char replace letter at cursor with char prefix with number for multiple replaces
- R allow to replace lots of letters into replace mode
- /word highlight all occurances of word
- Press q to start recording then select a hotkey. Now run some commands and hit q to end. Then hit @ hotkey to replay a command. Prefix
@
with a number to replace that many times
- Select text with movement commands then you can hit:
- d to delete
- After selected > or < to indent code.
- shift + v selects the whole line and puts you into visual mode.
- v + move select from cursor while move
ctrl + v enter visual block mode. Now you can select columns and hit r
to replace things.
In visual block mode hitting shift i will allow you to type and then after you hit esc the text will appear in all places selected.
Thank you for referring to this guide, I hope you found it useful.
Photo by Bich Tran from Pexels