Normal mode is also called command mode, and is different from command line mode.
It seems both can be used for
: commands, but what is the difference?
Vi and Vim Stack Exchange is a question and answer site for people using the vi and Vim families of text editors. It only takes a minute to sign up.Sign up to join this community
: is a normal-mode key-sequence (command) that makes a switch into one of command-line submodes.
Command-line mode is used to enter Ex commands (":"), search patterns ("/" and "?"), and filter commands ("!").
So in command-line mode
: is just a prompt that shows you're allowed to input one Ex-command and then get back to the Normal mode (so it differs from the true Ex-mode).
Normal mode is the mode you are in when you start Vim and the mode you should spend the most of time in. From this mode you can easily invoke other modes (
v for visual,
i for insert,
: for command line and so on).
Everything you press in normal mode can be some sort of command.
dd? It's a command saying "delete current line". Hence command mode.
In command line mode you use Ex and search commands, like
/pattern. For them to take effect you need to press "Return"* (after which you get back to normal mode - there is also Ex mode, where after pressing "Return" you stay in command line).
In big approximation: normal (command) mode is for keybindings and command line is for "shell" commands (similarity to Bash, Zsh, sh, CMD etc.)
* return, enter,