Anatomy of a motion -
Command + Count + Motion
- Jump to beginning of line :
0| jumps to the first non-whitespace character :_ - Jump to end of line :
$ - Move forward by 1 word : jumps to beginning of the next word :
w| jumps to end of the next word :e - Move backward by 1 word : jumps to beginning of the previous word :
b| jumps to end of the previous word :ge - Jump to beginning of the file :
gg - Jump to end of the file :
G - Move forward to the next instance of the character (
(in this case) :f(// NOTE : Repeat motion using,(for backwards movement) or;(for forward movement) - Move forward upto (right before but not on) the next instance of the character (
(in this case) :t(// NOTE : Repeat using,(for backwards movement) or;(for forward movement) - Jump by half the window height : to jump down :
ctrl + d| to jump up :ctrl + u - Bring current line to the view centre :
zz - Move by a paragraph : move up :
{| move down :} - Go to definition :
gd - Go back to previous place :
ctrl + o| Go back to next place :ctrl + i - Go to the end of the line and enter insert mode :
I - Go to the end of the line and enter insert mode :
A - Enter normal mode from insert mode (temporarily) :
ctrl + o
NOTE : Use W to select all of the contiguous text.
- Undo :
u - Redo :
ctrl + r - Create new line and enter insert mode : after the current line :
o| before the current line :O - Enter insert mode : in the left side of the character you're currently on :
i| in the right side of the character you're currently on:a - Toggle comment for a line / selection :
gcc - Change : inside word :
ciw| around word :caw - Delete line :
dd - Delete all contents in the file :
dG - Delete from current to the first occurrence of the character (
_in this case) :df_/dt_(excludes '_') - Delete word : in normal mode :
dw| in insert mode :ctrl + w - Delete letter :
dl - Delete around :
da| Delete inside :di - Increment number :
ctrl + a| Decrement number :ctrl + x - Write to file using sudo :
w !sudo tee % - Make everything in selection undercase :
u - Squeeze up next line appending its contents to the current line :
shift + down-arrow - Increment a number :
ctrl + a - Rename a variable :
grr - Disable formatting :
space + uf
- Enter visual mode (for selecting) :
v - Enter line visual mode (for selecting) :
shift + v - Select till matching character (like from opening till closing paranthesis) :
v% - Copy selected text (yank) :
y// NOTE : Yanked and deleted content go to the same buffer - Copy line :
yy/shift + v + y - Paste :
p(in normal mode) |ctrl + r*/ctrl + v(in insert mode) - Yank everything inside paranethesis :
yi( - Yank everything till the closing paranthesis :
yt(
- If you want to search in a file, type
/and then type the search query. Usento go the next result /shift + nto go to the previous result. Press*to automatically search using the word you're on as the query. - Find files / folders -
space + ff - Grep :
space + fg
- Current blok of code : fold :
zc| unfold :zo - All code blocks : fold :
zM| unfold :zR
- Toggle buffers :
space + bb - Delete buffer :
space + bd - Open mini.buffers window :
option + space
- Reveal current file in NeoTree :
space + fr - Create file / folder :
a - Delete file / folder :
d - Refresh file-tree :
R - Help :
? - Open mini.files window :
space + f + m/space + f + M
- Toggle windows :
ctrl + w + w
- Split horizontally :
space + -| vertically :space + | - Maximize current window horizontally :
ctrl + w + || vertically :ctrl + w + _ - Bring back maximized window to original size -
ctrl + w + =
- Change theme :
space + uC - Repeat last operation :
. - New terminal :
ctrl + / - Show description :
K - Restore session (from Neovim dashboard) :
s
Yo, permit me to steal this.