level 00
Vim Modes
Normal, Insert, Visual, Command — the modes that make Vim fast.
Modes are the thing that makes beginners bounce off Vim. They’re also the thing that makes it fast. Get past the first hour of confusion and this concept pays you back for years.
Every other editor has one mode: you type, letters appear. Vim splits that into separate modes, each tuned for one job. The trade is simple — a steeper start in exchange for editing at the speed of thought.
The Four Main Modes
- Normal — your home base. Navigate, run commands, compose operators. You start here. Press
Escto return at any time. - Insert — where you actually type text, like a regular editor.
- Visual — for selecting text, then applying operators to the selection.
- Command — for ex commands like saving and quitting. Enter it by typing
:.
The Key Insight
Here’s the mindset shift: Normal mode is home, not Insert. You dip into Insert to type a thought, then snap straight back to Normal to move and edit. Beginners camp in Insert mode and wonder why Vim feels clumsy. Don’t. When you’re lost, press Esc and you’re home again. It never fails you.
Enter and exit Insert mode
- You start in Normal mode.
- Press
i— now you’re in Insert mode (watch the badge above). - Type
vimso the line readshello vim world. - Press
Esc— back to Normal mode. - Press
iagain, then immediatelyEscwithout typing. - Enter Insert mode with
a, type!, pressEsc.
goal Feel the transition between modes — make it fast and deliberate.
Recognize and recover from the wrong mode
- In Normal mode, press
hjkl— the cursor moves, you don’t type letters. - Press
ito enter Insert mode and type a few characters. - Press
Escto return to Normal mode. - Press
Escthree more times — it always keeps you safely in Normal mode.
goal Esc is your safety net — build the reflex of pressing it whenever you're unsure.
Visit all four modes in sequence
- Start in Normal mode. Move to
"Hello"with a fewwpresses. - Press
vfor Visual mode, theneto select the wordHello. - Press
Esc— back to Normal. - Press
ifor Insert mode, type a character, pressEsc. - Type
:for Command mode (thenEscto dismiss the prompt).
goal Know how to get back to Normal mode from any of them.