Is it possible in vim to create a split view for command line use?

Vim 8 has terminal mode built in.

You can type :ter to get access to the terminal.

To navigate through the commands in your default shell use j,k.

You can get more information by typing :h ter in VIM8.

Note: your VIM8 must have +terminal for this to work.


Unlike Emacs, Vim tries to be a bit more minimal when it comes to working with the shell. It does not have an option to include the interactive shell inside one of it's tabs or buffers.

Although there are workarounds for this. Just like you, I really like to have a bash window in the same terminal session as I have Vim running. It is super useful while editing source files. In my case I really like to have the Ruby REPL environment running so I can test out statements before I put them in the source files.

I use Tmux to accomplish the split window. In Tmux I create a split window (default key is ctrl+b, "). This will open 2 interactive shell sessions just like a split window in Vim. Then I run Vim in one of the sessions and I'm all set.

You can see from the picture below that I have split the window horizontally with bash on top and Vim on bottom.

enter image description here

I also use Tmux to support pair programming with others. You can read more about my setup on my blog at http://jjasonclark.com/Remote-Pairing-with-SSH-and-Tmux-on-a-Mac.


Not sure if you were looking for a GNU screen solution, or a solution using Vim's built-in splits, but if you're looking for the latter, this worked for me:

vim -O file_a.js file_b.js

That a opens both files with a vertical split. For a regular (horizontal split), just use a lower case -o instead.

P.S. Ctrl+w, w to switch between the two (I find it a good way to differentiate screen splits and vim splits).

Tags:

Vim