Vim
Development Tools
Modes
▼
| I | Enter Insert mode at cursor | Win mac Linux |
| I | Enter Insert mode at start of line | Win mac Linux |
| A | Enter Insert mode after cursor | Win mac Linux |
| A | Enter Insert mode at end of line | Win mac Linux |
| O | Open new line below and enter Insert | Win mac Linux |
| O | Open new line above and enter Insert | Win mac Linux |
| V | Enter Visual mode (character) | Win mac Linux |
| V | Enter Visual Line mode | Win mac Linux |
| CTRL+V | Enter Visual Block mode | Win mac Linux |
| ESC | Return to Normal mode | Win mac Linux |
Navigation
▼
| h / j / k / l | Move left / down / up / right | Win mac Linux |
| W | Jump to start of next word | Win mac Linux |
| B | Jump to start of previous word | Win mac Linux |
| E | Jump to end of current or next word | Win mac Linux |
| 0 | Jump to start of line | Win mac Linux |
| ^ | Jump to first non-blank character | Win mac Linux |
| $ | Jump to end of line | Win mac Linux |
| gg | Go to first line of file | Win mac Linux |
| G | Go to last line of file | Win mac Linux |
| CTRL+D | Scroll half-page down | Win mac Linux |
| CTRL+U | Scroll half-page up | Win mac Linux |
| % | Jump to matching bracket / parenthesis | Win mac Linux |
Editing
▼
| dd | Delete (cut) current line | Win mac Linux |
| yy | Yank (copy) current line | Win mac Linux |
| P | Paste after cursor | Win mac Linux |
| P | Paste before cursor | Win mac Linux |
| U | Undo | Win mac Linux |
| CTRL+R | Redo | Win mac Linux |
| X | Delete character under cursor | Win mac Linux |
| dw | Delete from cursor to end of word | Win mac Linux |
| ciw | Change (replace) inner word | Win mac Linux |
| cit | Change inner tag (HTML/XML) | Win mac Linux |
| >> | Indent current line | Win mac Linux |
| << | Unindent current line | Win mac Linux |
| J | Join current line with line below | Win mac Linux |
Search & Replace
▼
| /pattern | Search forward for pattern | Win mac Linux |
| ?pattern | Search backward for pattern | Win mac Linux |
| N | Jump to next search match | Win mac Linux |
| N | Jump to previous search match | Win mac Linux |
| * | Search forward for word under cursor | Win mac Linux |
| :%s/old/new/g | Replace all occurrences in file | Win mac Linux |
| :s/old/new/g | Replace all occurrences on current line | Win mac Linux |
File & Quit
▼
| :w | Save file | Win mac Linux |
| :q | Quit (fails if there are unsaved changes) | Win mac Linux |
| :wq | Save and quit | Win mac Linux |
| :q! | Force quit without saving | Win mac Linux |
| ZZ | Save and quit (shorthand for :wq) | Win mac Linux |
| :e <file> | Open / edit a file | Win mac Linux |
| :sp <file> | Open file in horizontal split | Win mac Linux |
| :vsp <file> | Open file in vertical split | Win mac Linux |