Add new value to NERDTreeQuitOnOpen to close bookmark table (#955)

* Update documentation for new NERDTreeQuitOnOpen values.

* Modify use of NERDTreeQuitOnOpen, keeping current behavior.

* If applicable, close the bookmarks table before opening the target.
This commit is contained in:
Phil Runninger 2019-02-21 07:47:15 -05:00 committed by GitHub
parent 2e0b101d57
commit 9eda9ce6a1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 19 additions and 6 deletions

View File

@ -682,7 +682,8 @@ the NERD tree. These settings should be set in your vimrc, using `:let`.
|NERDTreeMouseMode| Manage the interpretation of mouse clicks.
|NERDTreeQuitOnOpen| Closes the tree window after opening a file.
|NERDTreeQuitOnOpen| Closes the tree window or bookmark table after
opening a file.
|NERDTreeShowBookmarks| Tells the NERD tree whether to display the
bookmarks table on startup.
@ -959,11 +960,19 @@ then (to single click activate it) you must click somewhere in
------------------------------------------------------------------------------
*NERDTreeQuitOnOpen*
Values: 0 or 1.
Values: 0,1,2 or 3.
Default: 0
If set to 1, the NERD tree window will close after opening a file with the
|NERDTree-o|, |NERDTree-i|, |NERDTree-t| and |NERDTree-T| mappings.
This setting governs whether the NERDTree window or the bookmarks table closes
after opening a file with the |NERDTree-o|, |NERDTree-i|, |NERDTree-t| and
|NERDTree-T| mappings.
Value | NERDTree Window Behavior
-------+-------------------------------------------------------
0 | No change
1 | Closes after opening a file
2 | Closes the bookmark table after opening a bookmark
3(1+2) | Same as both 1 and 2
------------------------------------------------------------------------------
*NERDTreeShowBookmarks*

View File

@ -256,6 +256,10 @@ endfunction
function! s:Bookmark.open(nerdtree, ...)
let opts = a:0 ? a:1 : {}
if and(g:NERDTreeQuitOnOpen,2)
call a:nerdtree.ui.toggleShowBookmarks()
endif
if self.path.isDirectory && !has_key(opts, 'where')
call self.toRoot(a:nerdtree)
else

View File

@ -66,7 +66,7 @@ endfunction
"FUNCTION: s:NERDTree.CloseIfQuitOnOpen() {{{1
"Closes the NERD tree window if the close on open option is set
function! s:NERDTree.CloseIfQuitOnOpen()
if g:NERDTreeQuitOnOpen && s:NERDTree.IsOpen()
if and(g:NERDTreeQuitOnOpen,1) && s:NERDTree.IsOpen()
call s:NERDTree.Close()
endif
endfunction

View File

@ -243,7 +243,7 @@ endfunction
" FUNCTION: Opener._openFile() {{{1
function! s:Opener._openFile()
if !self._stay && !g:NERDTreeQuitOnOpen && exists("b:NERDTreeZoomed") && b:NERDTreeZoomed
if !self._stay && !and(g:NERDTreeQuitOnOpen,1) && exists("b:NERDTreeZoomed") && b:NERDTreeZoomed
call b:NERDTree.ui.toggleZoom()
endif