tui.ninja
expand_circle_down
search
Neovim
school
Fundamentals
pin_drop
Navigating
edit
Editing
regular_expression
Patterns
construction
Configuring
for_you
Customizing
reminder
Tips & Tricks
summarize
Cheat Sheet
expand_circle_down
keyboard_command_key
Commands
Terminal
Lua
Reference
Search
Internal
tui.ninja
search
Neovim
school
Fundamentals
pin_drop
Navigating
edit
Editing
regular_expression
Patterns
construction
Configuring
for_you
Customizing
reminder
Tips & Tricks
summarize
Cheat Sheet
keyboard_command_key
Commands
Terminal
Lua
Reference
Search
home
chevron_right
neovim
chevron_right
cheatsheet
chevron_right
home
Neovim Cheat Sheet
Neovim Cheat Sheet
basics
buffers
changes
cursor horizontal
cursor vertical
cut and paste
editing
folds
insert mode
jumps
macros
marks
paging
registers
visual mode
windows
Basics
Command
Mode
Description
:help
ex
Open a help window
:quit
ex
Quit current window (when one window quit vim)
:wq
ex
Write to a file and quit window or vim
:write
ex
Write to a file
Buffers
Command
Mode
Description
:bdelete
ex
Remove a buffer from the buffer list
:bnext
ex
Go to next buffer in the buffer list
:bprevious
ex
Go to previous buffer in the buffer list
:ls
ex
List all buffers
Changes
Command
Mode
Description
:changes
ex
Print the change list
[n]
g,
n
Go to n newer position in change list
[n]
g;
n
Go to n older position in change list
Cursor Horizontal
Command
Mode
Description
[n]
$
n
Cursor to the end of nth next line
0
n
Cursor to the first char of the line
[n]
B
n
Cursor n words backward
[n]
E
n
Cursor forward to the end of word n
[n]
W
n
Cursor n words forward
^
n
Cursor to the first char of the line
[n]
b
n
Cursor n words backward
[n]
e
n
Cursor forward to the end of word n
g_
n
Cursor to the last char n - 1 lines lower
[n]
h
n
Cursor n chars to the left
[n]
l
n
Cursor n chars to the right
[n]
w
n
Cursor n words forward
Cursor Vertical
Command
Mode
Description
[n]
G
n
Cursor to line n, default last line
[n]
H
n
Cursor to line n from top of screen
[n]
L
n
Cursor to line n from bottom of screen
M
n
Cursor to middle line of screen
[n]
gg
n
Cursor to line n, default first line
[n]
j
n
Cursor n lines downward
[n]
k
n
Cursor n lines upward
Cut And Paste
Command
Mode
Description
[n]
D
n
Delete the characters under the cursor until the end of the line and n-1 more lines [into register x]; synonym for "d$"
[n]
P
n
Paste before the cursor
[n]
Y
n
Yank to end of current line
d$
n
Delete to end of current line
[n]
dd
n
Delete the current line
diw
n
Delete inner word
[n]
p
n
Put the text [from register x] after the cursor n times
[n]
x
n
Delete n characters under and after the cursor [into register x]
y$
n
Yank to end of current line
yiw
n
Yank inner word
[n]
yy
n
Yank the current line
Editing
Command
Mode
Description
J
n
Join n lines; default is 2
R
n
Enter replace mode: overtype existing characters, repeat the entered text n-1 times
gJ
n
Join lines without inserting space
gwip
n
Reflow the current paragraph
[n]
r{char}
n
Replace n chars with {char}
u
n
Undo changes
Folds
Command
Mode
Description
zC
n
Close folds recursively
zO
n
Open folds recursively
zR
n
Set 'foldlevel' to the deepest fold
za
n
Open a closed fold, close an open fold
zc
n
Close a fold
zm
n
Subtract one from 'foldlevel'
zo
n
Open fold
zr
n
Add one to 'foldlevel'
Insert Mode
Command
Mode
Description
[n]
A
n
Append text after the end of the line n times
[n]
C
n
Change from the cursor position to the end of the line, and n-1 more lines [into register x]; synonym for "c$"
[n]
I
n
Insert text before the first char on the line n times
[n]
O
n
Begin a new line above the cursor and insert text, repeat n times
[n]
S
n
Delete n lines [into register x] and start insert; synonym for "cc".
[n]
a
n
Append text after the cursor n times
c$
n
Delete from the cursor position to the end of the line, and enter insert mode
[n]
cc
n
Delete the current line then enter insert mode
ce
n
Delete from the cursor position to the end of the current word, and enter insert mode
ciw
n
Delete the current inner-word, and enter insert mode
cw
n
Delete from the cursor position to the end of the current word, and enter insert mode
[n]
i
n
Insert text before the cursor n times
[n]
o
n
Begin a new line below the cursor and insert text, repeat n times
[n]
s
n
(substitute) delete n characters [into register x] and start insert
Jumps
Command
Mode
Description
:jumps
ex
Print the jump list
C-I
n
Same as <tab>
C-O
n
Jump one step backward within jump list
`"
n
Go the position of the most recent edit prior to saving this file
``
n
Cursor to the position before latest jump
Macros
Command
Mode
Description
[n]
@@
n
Repeat the previous @{a-z} n times
[n]
@{a-z}
n
Execute the contents of register {a-z} n times
q
n
(while recording) stops recording
q{0-9a-zA-Z"}
n
Record typed characters into named register {0-9a-za-z"} (uppercase to append)
Marks
Command
Mode
Description
'x
n
Jump to the start of the line containing mark x
:marks
ex
List all marks
`x
n
Jump to mark x
Paging
Command
Mode
Description
C-B
n
Move screen up one page
C-D
n
Move cursor down one-half page
C-F
n
Move screen down one page
C-U
n
Move cursor up one-half page
Registers
Command
Mode
Description
:registers
ex
Display the contents of registers
p
n
Put the text [from register x] after the cursor n times
y
n
Yank operator
Visual Mode
Command
Mode
Description
Esc
v
Return to normal mode
O
v
Move horizontally to other corner of area
aB
v
Extend highlighted area with a {} block
ab
v
Extend highlighted area with a () block
at
v
Extend highlighted area with a tag block
aw
v
Extend highlighted area with "a word"
iB
v
Extend highlighted area with inner {} block
ib
v
Extend highlighted area with inner () block
it
v
Extend highlighted area with inner tag block
o
v
Move cursor to other corner of area
Windows
Command
Mode
Description
[n]
C-W h
n
Go to nth left window (stop at first window)
[n]
C-W j
n
Go n windows down (stop at last window)
[n]
C-W k
n
Go n windows up (stop at first window)
[n]
C-W l
n
Go to nth right window (stop at last window)
[n]
C-W s
n
Split current window in two parts, new window n lines high
[n]
C-W v
n
Split current window vertically, new window n columns wide
[n]
C-W x
n
Exchange current window with window n (default: next window)
arrow_left
Back
Next
arrow_right