Can I run a shell inside a Vim window?
Since Version 8.1 Vim comes with a terminal window included. It allows to run a shell inside an ordinary Vim window (e.g. split) asynchronously and interact with the shell using the normal Vim commands. When the focus is in the terminal window, typed keys will be sent to the job and is called terminal mode. You can click outside of the terminal window to move keyboard focus elsewhere, alternatively one can use Ctrl-W to novigate between different Vim windows. To feed Ctrl-W into the terminal, one needs to use CTRL-W . To map keys specifically for terminal mode, use the new :tmap command. After typing Ctrl-W the terminal window will switch to Terminal-Normal mode (this can be used to move the cursor around, scroll the window, etc. Just like normal mode). To interact between the terminal and Vim, Vim implements several interfaces using term_sendkeys(), terminal-api and the client-server mechanism.