nerdtree

A tree explorer plugin for vim.
Index Commits Files Refs
commit 53d2de86eb9b2fa0e77272dfc9d94ee33467e895
parent 0d88ce946fc21eca51bc1efef47ae843845e5f16
Author: Martin Grenfell <martin.grenfell@gmail.com>
Date:   Sat,  2 May 2015 15:01:58 +0100

move the closeTree functions out of autoload

Remove `closeTreeIfOpen` and just make `closeTree` fail silently.

Diffstat:
Mautoload/nerdtree.vim | 38--------------------------------------
Mautoload/nerdtree/ui_glue.vim | 4++--
Mlib/nerdtree/creator.vim | 6+++---
Mlib/nerdtree/nerdtree.vim | 33++++++++++++++++++++++++++++++++-
Mlib/nerdtree/opener.vim | 2+-
5 files changed, 38 insertions(+), 45 deletions(-)
diff --git a/autoload/nerdtree.vim b/autoload/nerdtree.vim
@@ -98,44 +98,6 @@ endfunction
 " SECTION: View Functions {{{1
 "============================================================
 
-"FUNCTION: nerdtree#closeTree() {{{2
-"Closes the primary NERD tree window for this tab
-function! nerdtree#closeTree()
-    call g:NERDTree.MustBeOpen()
-
-    if winnr("$") != 1
-        if winnr() == g:NERDTree.GetWinNum()
-            call nerdtree#exec("wincmd p")
-            let bufnr = bufnr("")
-            call nerdtree#exec("wincmd p")
-        else
-            let bufnr = bufnr("")
-        endif
-
-        call nerdtree#exec(g:NERDTree.GetWinNum() . " wincmd w")
-        close
-        call nerdtree#exec(bufwinnr(bufnr) . " wincmd w")
-    else
-        close
-    endif
-endfunction
-
-"FUNCTION: nerdtree#closeTreeIfOpen() {{{2
-"Closes the NERD tree window if it is open
-function! nerdtree#closeTreeIfOpen()
-   if g:NERDTree.IsOpen()
-      call nerdtree#closeTree()
-   endif
-endfunction
-
-"FUNCTION: nerdtree#closeTreeIfQuitOnOpen() {{{2
-"Closes the NERD tree window if the close on open option is set
-function! nerdtree#closeTreeIfQuitOnOpen()
-    if g:NERDTreeQuitOnOpen && g:NERDTree.IsOpen()
-        call nerdtree#closeTree()
-    endif
-endfunction
-
 "FUNCTION: nerdtree#dumpHelp  {{{2
 "prints out the quick help
 function! nerdtree#dumpHelp()
diff --git a/autoload/nerdtree/ui_glue.vim b/autoload/nerdtree/ui_glue.vim
@@ -212,7 +212,7 @@ function! s:closeTreeWindow()
         exec "buffer " . b:NERDTreePreviousBuf
     else
         if winnr("$") > 1
-            call nerdtree#closeTree()
+            call g:NERDTree.Close()
         else
             call nerdtree#echo("Cannot close last window")
         endif
@@ -547,7 +547,7 @@ endfunction
 function! nerdtree#ui_glue#setupCommands()
     command! -n=? -complete=dir -bar NERDTree :call g:NERDTreeCreator.CreatePrimary('<args>')
     command! -n=? -complete=dir -bar NERDTreeToggle :call g:NERDTreeCreator.TogglePrimary('<args>')
-    command! -n=0 -bar NERDTreeClose :call nerdtree#closeTreeIfOpen()
+    command! -n=0 -bar NERDTreeClose :call g:NERDTree.Close()
     command! -n=1 -complete=customlist,nerdtree#completeBookmarks -bar NERDTreeFromBookmark call g:NERDTreeCreator.CreatePrimary('<args>')
     command! -n=0 -bar NERDTreeMirror call g:NERDTreeCreator.CreateMirror()
     command! -n=0 -bar NERDTreeFind call s:findAndRevealPath()
diff --git a/lib/nerdtree/creator.vim b/lib/nerdtree/creator.vim
@@ -56,7 +56,7 @@ function! s:Creator.createPrimary(name)
 
     if g:NERDTree.ExistsForTab()
         if g:NERDTree.IsOpen()
-            call nerdtree#closeTree()
+            call g:NERDTree.Close()
         endif
         unlet t:NERDTreeBufName
     endif
@@ -169,7 +169,7 @@ function! s:Creator.createMirror()
     endif
 
     if g:NERDTree.ExistsForTab() && g:NERDTree.IsOpen()
-        call nerdtree#closeTree()
+        call g:NERDTree.Close()
     endif
 
     let t:NERDTreeBufName = bufferName
@@ -340,7 +340,7 @@ function! s:Creator.togglePrimary(dir)
             endif
             call b:NERDTree.ui.restoreScreenState()
         else
-            call nerdtree#closeTree()
+            call g:NERDTree.Close()
         endif
     else
         call self.createPrimary(a:dir)
diff --git a/lib/nerdtree/nerdtree.vim b/lib/nerdtree/nerdtree.vim
@@ -3,6 +3,38 @@
 let s:NERDTree = {}
 let g:NERDTree = s:NERDTree
 
+"FUNCTION: s:NERDTree.Close() {{{1
+"Closes the primary NERD tree window for this tab
+function! s:NERDTree.Close()
+    if !s:NERDTree.IsOpen()
+        return
+    endif
+
+    if winnr("$") != 1
+        if winnr() == s:NERDTree.GetWinNum()
+            call nerdtree#exec("wincmd p")
+            let bufnr = bufnr("")
+            call nerdtree#exec("wincmd p")
+        else
+            let bufnr = bufnr("")
+        endif
+
+        call nerdtree#exec(s:NERDTree.GetWinNum() . " wincmd w")
+        close
+        call nerdtree#exec(bufwinnr(bufnr) . " wincmd w")
+    else
+        close
+    endif
+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()
+        call s:NERDTree.Close()
+    endif
+endfunction
+
 " Function: s:NERDTree.ExistsForBuffer()   {{{1
 " Returns 1 if a nerd tree root exists in the current buffer
 function! s:NERDTree.ExistsForBuf()
@@ -59,4 +91,3 @@ endfunction
 function! s:NERDTree.render()
     call self.ui.render()
 endfunction
-
diff --git a/lib/nerdtree/opener.vim b/lib/nerdtree/opener.vim
@@ -40,7 +40,7 @@ function! s:Opener._checkToCloseTree(newtab)
     endif
 
     if (a:newtab && self._where == 't') || !a:newtab
-        call nerdtree#closeTreeIfQuitOnOpen()
+        call g:NERDTree.CloseIfQuitOnOpen()
     endif
 endfunction