# Neovim Modes **Neovim has several modes**, each with different key behavior. Master the mode system to edit efficiently. **Normal mode** — default, for commands. Cursor is a block. Enter from any mode by pressing `Esc`. Commands move, delete, copy, change. Most time is spent here. **Insert mode** — for typing text. Enter with `i` (before cursor), `a` (after cursor), `I` (start of line), `A` (end of line), `o` (new line below), `O` (new line above). Exit with `Esc`. **Visual mode** — for selecting text. Enter with `v` (character), `V` (line), `Ctrl+V` (block). Move cursor to expand selection. Apply commands to selection. Exit with `Esc`. **Command-line mode** — for ex commands. Enter with `:` (command), `/` (search forward), `?` (search backward). Type command, press `Enter` to execute. Exit with `Esc`. Switching modes: ``` Normal → Insert: i, a, o, O, I, A Insert → Normal: Esc Normal → Visual: v, V, Ctrl+V Visual → Normal: Esc Normal → Command: :, /, ? ``` **Replace mode** — like insert, but overwrites characters. Enter with `R`, exit with `Esc`. Rarely used; normal + commands are usually better. The mode indicator appears in status bar (shows "-- INSERT --" in insert mode). Understanding modes is fundamental—commands work differently in each mode, so always know which mode you're in.