Use :mode only in neovim. MacVim still needs to use :redraw! (#1019)

* Use :mode only in neovim. MacVim still needs to use :redraw!

* Make nerdtree#redraw do both redraw and redraw! based on a parameter.

* Make bang a required parameter.

* Replace all redraw statments with call nerdtree#redraw function calls.

* Update version in change log.
This commit is contained in:
Phil Runninger 2019-07-10 09:45:58 -04:00 committed by GitHub
parent 2f0d48d632
commit 4ac07f52a3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 29 additions and 12 deletions

View File

@ -1,6 +1,7 @@
# Change Log
#### 5.2...
- **.7**: Use :mode only in neovim. MacVim still needs to use :redraw! [#1019](https://github.com/scrooloose/nerdtree/pull/1019)
- **.6**: In CHANGELOG.md and PR template, make reference to PR a true HTML link. [#1017](https://github.com/scrooloose/nerdtree/pull/1017)
- **.5**: Use `:mode` instead of `:redraw!` when updating menu. (PhilRunninger) [#1016](https://github.com/scrooloose/nerdtree/pull/1016)
- **.4**: When searching for root line num, stop at end of file. (PhilRunninger) [#1015](https://github.com/scrooloose/nerdtree/pull/1015)

View File

@ -22,8 +22,24 @@ endfunction
" SECTION: General Functions {{{1
"============================================================
function! nerdtree#slash()
"FUNCTION: nerdtree#redraw(bang)
" Redraws the screen (Neovim uses the mode statement). If bang is TRUE, use
" redraw! instead of redraw.
function! nerdtree#redraw(bang)
if has('nvim')
mode
else
if a:bang
redraw!
else
redraw
endif
endif
endfunction
"FUNCTION: nerdtree#slash()
" Returns the directory separator based on OS and &shellslash
function! nerdtree#slash()
if nerdtree#runningWindows()
if exists('+shellslash') && &shellslash
return '/'
@ -216,7 +232,7 @@ endfunction
"Args:
"msg: the message to echo
function! nerdtree#echo(msg)
redraw
call nerdtree#redraw(0)
echomsg empty(a:msg) ? "" : ("NERDTree: " . a:msg)
endfunction

View File

@ -254,7 +254,7 @@ function! s:deleteBookmark(bookmark)
let l:choices = "&Yes\n&No"
echo | redraw
echo | call nerdtree#redraw(0)
let l:selection = confirm(l:message, l:choices, 1, 'Warning')
if l:selection != 1
@ -266,7 +266,7 @@ function! s:deleteBookmark(bookmark)
call a:bookmark.delete()
silent call b:NERDTree.root.refresh()
call b:NERDTree.render()
echo | redraw
echo | call nerdtree#redraw(0)
catch /^NERDTree/
call nerdtree#echoWarning('could not remove bookmark')
endtry
@ -577,7 +577,7 @@ function! s:refreshRoot()
call nerdtree#exec(g:NERDTree.GetWinNum() . "wincmd w")
call b:NERDTree.root.refresh()
call b:NERDTree.render()
redraw
call nerdtree#redraw(0)
call nerdtree#exec(l:curWin . "wincmd w")
call nerdtree#echo("")
endfunction

View File

@ -31,7 +31,7 @@ function! s:MenuController.showMenu()
let l:done = 0
while !l:done
mode
call nerdtree#redraw(1)
call self._echoPrompt()
let l:key = nr2char(getchar())
@ -42,7 +42,7 @@ function! s:MenuController.showMenu()
" Redraw when "Ctrl-C" or "Esc" is received.
if !l:done || self.selection == -1
redraw!
call nerdtree#redraw(1)
endif
endtry

View File

@ -78,7 +78,7 @@ function! s:inputPrompt(action)
endif
if g:NERDTreeMenuController.isMinimal()
redraw! " Clear the menu
call nerdtree#redraw(1) " Clear the menu
return minimal . " "
else
let divider = "=========================================================="
@ -185,7 +185,7 @@ function! NERDTreeAddNode()
call newTreeNode.putCursorHere(1, 0)
endif
redraw!
call nerdtree#redraw(1)
catch /^NERDTree/
call nerdtree#echoWarning("Node Not Created.")
endtry
@ -234,7 +234,7 @@ function! NERDTreeMoveNode()
call curNode.putCursorHere(1, 0)
redraw!
call nerdtree#redraw(1)
catch /^NERDTree/
call nerdtree#echoWarning("Node Not Renamed.")
endtry
@ -272,7 +272,7 @@ function! NERDTreeDeleteNode()
call s:promptToDelBuffer(bufnum, prompt)
endif
redraw!
call nerdtree#redraw(1)
catch /^NERDTree/
call nerdtree#echoWarning("Could not remove node")
endtry
@ -362,7 +362,7 @@ function! NERDTreeCopyNode()
call nerdtree#echo("Copy aborted.")
endif
let &shellslash = l:shellslash
redraw!
call nerdtree#redraw(1)
endfunction
" FUNCTION: NERDTreeCopyPath() {{{1