nerdtree

A tree explorer plugin for vim.
Index Commits Files Refs
commit ec3c3b0fa11ed63fd54603d52bc767d361f35d3f
parent 727770147a7589ab3a06722f4852c0237c8b3549
Author: Jason Franklin <lifecrisis@users.noreply.github.com>
Date:   Mon, 23 Apr 2018 17:12:14 -0400

Merge pull request #832 from lifecrisis/menufix

Clear output when the NERDTree menu is aborted.
Diffstat:
Mlib/nerdtree/menu_controller.vim | 24+++++++++++++++---------
1 file changed, 15 insertions(+), 9 deletions(-)
diff --git a/lib/nerdtree/menu_controller.vim b/lib/nerdtree/menu_controller.vim
@@ -15,29 +15,35 @@ function! s:MenuController.New(menuItems)
     return newMenuController
 endfunction
 
-"FUNCTION: MenuController.showMenu() {{{1
-"start the main loop of the menu and get the user to choose/execute a menu
-"item
+" FUNCTION: MenuController.showMenu() {{{1
+" Enter the main loop of the NERDTree menu, prompting the user to select
+" a menu item.
 function! s:MenuController.showMenu()
     call self._saveOptions()
 
     try
         let self.selection = 0
+        let l:done = 0
 
-        let done = 0
-        while !done
+        while !l:done
             redraw!
             call self._echoPrompt()
-            let key = nr2char(getchar())
-            let done = self._handleKeypress(key)
+
+            let l:key = nr2char(getchar())
+            let l:done = self._handleKeypress(l:key)
         endwhile
     finally
         call self._restoreOptions()
+
+        " Redraw when "Ctrl-C" or "Esc" is received.
+        if !l:done || self.selection == -1
+            redraw!
+        endif
     endtry
 
     if self.selection != -1
-        let m = self._current()
-        call m.execute()
+        let l:m = self._current()
+        call l:m.execute()
     endif
 endfunction