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. |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 |NERDTreeShowBookmarks| Tells the NERD tree whether to display the
bookmarks table on startup. bookmarks table on startup.
@ -959,11 +960,19 @@ then (to single click activate it) you must click somewhere in
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
*NERDTreeQuitOnOpen* *NERDTreeQuitOnOpen*
Values: 0 or 1. Values: 0,1,2 or 3.
Default: 0 Default: 0
If set to 1, the NERD tree window will close after opening a file with the This setting governs whether the NERDTree window or the bookmarks table closes
|NERDTree-o|, |NERDTree-i|, |NERDTree-t| and |NERDTree-T| mappings. 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* *NERDTreeShowBookmarks*

View File

@ -256,6 +256,10 @@ endfunction
function! s:Bookmark.open(nerdtree, ...) function! s:Bookmark.open(nerdtree, ...)
let opts = a:0 ? a:1 : {} 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') if self.path.isDirectory && !has_key(opts, 'where')
call self.toRoot(a:nerdtree) call self.toRoot(a:nerdtree)
else else

View File

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

View File

@ -243,7 +243,7 @@ endfunction
" FUNCTION: Opener._openFile() {{{1 " FUNCTION: Opener._openFile() {{{1
function! s:Opener._openFile() 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() call b:NERDTree.ui.toggleZoom()
endif endif