0%
Vim Shortcut
main
| Shortcut Keys |
Function |
| Escape key |
Gets out of the current mode into the “command mode”. All keys are bound of commands. |
| i |
“Insert mode” for inserting text. Keys behave as expected. |
| : |
“Last-line mode” where Vim expects you to enter a command such as to save the document. |
| :ter[minal] |
Open a terminal window |
Navigation keys
| Shortcut Keys |
Function |
| h |
moves the cursor one character to the left. |
| j or Ctrl + J |
moves the cursor down one line. |
| k or Ctrl + P |
moves the cursor up one line. |
| l |
moves the cursor one character to the right. |
| 0 |
moves the cursor to the beginning of the line. |
| $ |
moves the cursor to the end of the line. |
| ^ |
moves the cursor to the first non-empty character of the line |
| w |
move forward one word (next alphanumeric word) |
| W |
move forward one word (delimited by a white space) |
| 5w |
move forward five words |
| b |
move backward one word (previous alphanumeric word) |
| B |
move backward one word (delimited by a white space) |
| 5b |
move backward five words |
| G |
move to the end of the file |
| gg |
move to the beginning of the file. |
Navigate around the document
| Shortcut Keys |
Function |
| ( |
jumps to the previous sentence |
| ) |
jumps to the next sentence |
| { |
jumps to the previous paragraph |
| } |
jumps to the next paragraph |
| [[ |
jumps to the previous section |
| ]] |
jumps to the next section |
| [] |
jump to the end of the previous section |
| ][ |
jump to the end of the next section |
Insert text
| Shortcut Keys |
Function |
| a |
Insert text after the cursor |
| A |
Insert text at the end of the line |
| i |
Insert text before the cursor |
| o |
Begin a new line below the cursor |
| O |
Begin a new line above the cursor |
Special inserts
| Shortcut Keys |
Function |
| :r [filename] |
Insert the file [filename] below the cursor |
| :r ![command] |
Execute [command] and insert its output below the cursor |
Delete text
| Shortcut Keys |
Function |
| x |
delete character at cursor |
| dw |
delete a word. |
| d0 |
delete to the beginning of a line. |
| d$ |
delete to the end of a line. |
| d) |
delete to the end of sentence. |
| dgg |
delete to the beginning of the file. |
| dG |
delete to the end of the file. |
| dd |
delete line |
| 3dd |
delete three lines |
Simple replace text
| Shortcut Keys |
Function |
| r{text} |
Replace the character under the cursor with {text} |
| R |
Replace characters instead of inserting them |
Copy/Paste text
| Shortcut Keys |
Function |
| yy |
copy current line into storage buffer |
| [“x]yy |
Copy the current lines into register x |
| p |
paste storage buffer after current line |
| P |
paste storage buffer before current line |
| [“x]p |
paste from register x after current line |
| [“x]P |
paste from register x before current line |
Undo/Redo operation
| Shortcut Keys |
Function |
| u |
undo the last operation. |
| Ctrl+r |
redo the last undo. |
Search and Replace keys
| Shortcut Keys |
Function |
| /search_text |
search document for search_text going forward |
| ?search_text |
search document for search_text going backward |
| n |
move to the next instance of the result from the search |
| N |
move to the previous instance of the result |
| :%s/original/replacement |
Search for the first occurrence of the string “original” and replace it with “replacement” |
| :%s/original/replacement/g |
Search and replace all occurrences of the string “original” with “replacement” |
| :%s/original/replacement/gc |
Search for all occurrences of the string “original” but ask for confirmation before replacing them with “replacement” |
| f or F |
Search for the next occurrence of a character or go to the previous occurrence |
Bookmarks
| Shortcut Keys |
Function |
| m {a-z A-Z} |
Set bookmark {a-z A-Z} at the current cursor position |
| :marks |
List all bookmarks |
| `{a-z A-Z} |
Jumps to the bookmark {a-z A-Z} |
Select text
| Shortcut Keys |
Function |
| v |
Enter visual mode per character |
| V |
Enter visual mode per line |
| Esc |
Exit visual mode |
Modify selected text
| Shortcut Keys |
Function |
| ~ |
Switch case |
| d |
delete a word. |
| c |
change |
| y |
yank |
| > |
shift right |
| < |
shift left |
| ! |
filter through an external command |
Save and quit
| Shortcut Keys |
Function |
| :q |
Quits Vim but fails when file has been changed |
| :w |
Save the file |
| :w new_name |
Save the file with the new_name filename |
| :wq |
Save the file and quit Vim. |
| :q! |
Quit Vim without saving the changes to the file. |
| ZZ |
Write file, if modified, and quit Vim |
| ZQ |
Same as :q! Quits Vim without writing changes |
| :sav[eas] file |
Save file as |
| :clo[se] |
Close the current pane |
window
edit multiple lines
Move the cursor to the n in name.
Enter visual block mode (Ctrlv).
Press j three times (or 3j).
Press I (capital i).
Type in vendor_. Note: It will only update the screen in the first line - until Esc is pressed (6.), at which point all lines will be updated.
Press Esc.

reference