commit e51a40c0d8294131510b77c89ccaa348a59bc5a7
parent 53bc77644c8149ae995918b9d6f544cc31813346
Author: Martin Grenfell <martin.grenfell@gmail.com>
Date: Wed, 11 Jan 2012 13:44:19 +0000
make the mouse work as expected with NERDTreeMouseMode
This was broken at some point - fix it.
Diffstat:
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/plugin/NERD_tree.vim b/plugin/NERD_tree.vim
@@ -151,7 +151,7 @@ let s:NERDTreeBufName = 'NERD_tree_'
let s:tree_wid = 2
if g:NERDTreeDirArrows
- let s:tree_markup_reg = '^ *\([▾▸] \)\?'
+ let s:tree_markup_reg = '^\([▾▸] \| \+[▾▸] \| \+\)'
else
let s:tree_markup_reg = '^[ `|]*[\-+~]'
endif
@@ -4058,8 +4058,8 @@ function! s:handleLeftClick()
endfor
if currentNode.path.isDirectory
- if startToCur =~# s:tree_markup_reg . '$' && startToCur =~# '[+~▾▸]$'
- call s:activateNode(currentNode)
+ if startToCur =~# s:tree_markup_reg && startToCur =~# '[+~▾▸] \?$'
+ call currentNode.activate()
return
endif
endif
@@ -4067,7 +4067,11 @@ function! s:handleLeftClick()
if (g:NERDTreeMouseMode ==# 2 && currentNode.path.isDirectory) || g:NERDTreeMouseMode ==# 3
let char = strpart(startToCur, strlen(startToCur)-1, 1)
if char !~# s:tree_markup_reg
- call s:activateNode(currentNode)
+ if currentNode.path.isDirectory
+ call currentNode.activate()
+ else
+ call currentNode.activate({'reuse': 1, 'where': 'p'})
+ endif
return
endif
endif