Note: this is very much a work in progress
This guide is a resource for those who are new to vim/neovim or are trying to attain greater proficiency.
It provides a roadmap of the most useful commands, the ones that you are most likely to use on a daily basis. The order in which they are presented is intended to get you moving as quickly as possible. What is presented here is not comprehensive, but it should provide a pretty good foundation.
To use these lists, just go in order. Practice each set of commands, trying to incorporate them as much as possible in your daily editing. When you feel comfortable with them, move on to the next set and repeat the process.
The explanations are short. To really understand what the commands do, try using them and see what happens. For more details, refer to the vim/neovim documentation (linked below).
The repository name is a play on Gradus ad Parnassum.
For basic use, both vim and neovim are very similar. It is worth mastering the functionality common to both. For more advanced usage (plugins, LSP integration), these days I prefer neovim.
In this repository, I use "vim" to refer to either editor.
If you are completely new to vim, then the best way to get started is to go through the tutorial:
- Install neovim
- In a terminal, run
nvim - Type
:Tutor<Enter>
When using vim, the editor can be in several modes. Various commands or keys can change the mode.
To start, these are the most important modes:
[N]Normal: You type in commands.[I]Insert: You type text that goes into the buffer.[C]Command-line: You enter other commands, at the bottom of the screen.[V]Visual: You select text in the buffer.
See also usr_02.txt in the Neovim User Manual.
Each entry follows this basic format:
COMMAND(S)
[MODE] DESCRIPTION
EXAMPLES
- The commands are the keystrokes that you enter.
- The mode is the mode where you can use the command. If the command changes the mode, this is
indicated with an arrow, e.g.
[N → I].
Here are links to the documentation for each editor. The user manual is worth reading through at some point.