- goal
- learn neovim one key at a time
- modules
- 12
- lessons
- 74
- drills
- 235 (945 variants)
- cleared
- 0 / 235
- at par
- 0 ★
Moving Around
Get anywhere without the arrow keys: characters, words, lines, the whole file and the screen. Counts multiply every motion.
hjkl{count}j{count}k{count}{motion}Insert Mode
The many doors into Insert mode, and the tricks that work without leaving it: deleting words, overwriting text, borrowing a Normal command, pasting registers, typing characters your keyboard lacks and doing quick maths.
iaIAoOgiOperators & the Dot
Vim's grammar: an operator (d, c, y, gU, >…) plus a motion. Learn to make changes that repeat with a single ..
d{motion}c{motion}y{motion}dwdedbd$Find & Jump
Land exactly where you mean: find characters on a line, jump between brackets, leave marks and travel the jump list.
f{char}t{char}F{char}T{char};,%Text Objects
Operate on words, sentences, paragraphs, quotes, brackets and tags as single units, no matter where the cursor is inside them.
iwawiWaWciwdawi"Visual Mode
Select characters, lines or rectangular blocks first, then act. Includes block editing for columns of text.
vV<C-v>dcUuRegisters
Vim's many clipboards: the unnamed register, named registers, the yank register, the black hole and appending.
xddyypPxpddpMacros
Record a sequence of keystrokes once and replay it anywhere, on many lines, or as many times as you need.
q{a-z}q@{a-z}@@{count}@{a-z}99@a:%normal @aSearch & Patterns
Jump anywhere by typing what you see, then bend the pattern to your will: whole words, case, very magic regexes, match boundaries, offsets, and gn to edit match after match.
/{pattern}<CR>?{pattern}<CR>nN/<CR>?<CR>d/{pattern}<CR>Ex Commands
The command line: ranges, :t and :m, :normal across lines, :substitute, :global and repeating the last command.
:{N}:{N},{M}d:.,$d:.,+{N}d:{N},{M}j:{N},{M}j!:'<,'>Windows & Tabs
Split the screen, move between windows, close and rearrange them, and organise whole layouts with tab pages.
<C-w>s<C-w>v:sp {file}:vs {file}<C-w>n:vnew:wincmd {key}Neovim Extras
Defaults Neovim adds on top of Vim: Y, commenting with gc, Q, &, visual * and the bracket mappings.
Yyy{count}<C-a>{count}<C-x><C-l>[<Space>]<Space>