Skip to content

Commit

Permalink
Merge branch 'master' into changelog
Browse files Browse the repository at this point in the history
  • Loading branch information
rzvxa committed May 14, 2024
2 parents 7bdc0b8 + fbb71fc commit 4a295bd
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions README.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,24 @@ autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists('s:std_in

### How can I close Vim or a tab automatically when NERDTree is the last window?

Because of the changes in how Vim handles its `autocmd` and layout locking `quit` command is no longer available in Vim9 auto commands, Depending on which version you're running select one of these solutions.

__NeoVim users should be able to choose either one of them!__

#### Vim9

```vim
" Exit Vim if NERDTree is the only window remaining in the only tab.
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | call feedkeys(":quit\<CR>:\<BS>") | endif
```
---
```vim
" Close the tab if NERDTree is the only window remaining in it.
autocmd BufEnter * if winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | call feedkeys(":quit\<CR>:\<BS>") | endif
```

#### Vim8 or older

```vim
" Exit Vim if NERDTree is the only window remaining in the only tab.
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif
Expand Down

0 comments on commit 4a295bd

Please sign in to comment.