I am trying out Vim, installed some plugins, amongst which NERDTree, followed some guides and set up a .vimrc
(half of whose content I don't understand — yet).
What annoys me, is that if I :wq
, vim remains active, it only closes the documents' split-screen. I end up with a fullscreen NERDTree. I would like NERDTree to close too, on closing the last tab or buffers.
Or am I using it wrong?
If you want to close NERDTree window make sure you are inside the NERDTree menu. You can switch windows by using ctrl+w then type :q to close NERDTree window so that you will be left with the window for editing your code.
The :wqa command will write all changed buffers and exit Vim. This will close down NerdTree, too.
After having opened a new file from the tree in a new window press ctrl-w p to switch back to the NERDTree and use it again to return to your previous window.
Put this in your vimrc:
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree")
\ && b:NERDTree.isTabTree()) | q | endif
Note: \
is to allow multiple line commands
The :wqa
command will write all changed buffers and exit Vim. This will close down NerdTree, too.
Actually, using :q
just close current split so for closing all splits go back to the terminal we should use :qa
, this command closes all splits even NERDTree.
There is a shortcut for :wq
and it is :x
, the :x
write the changes and close the current split, if you wanna save all changes and close all splits and go back to the terminal you can use below command too:
:xa
That is equivalent to:
:wqa
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With