commit a63c8a2ec8ab03cef906c21f40fad7d00deeba10
parent aca917b4ca18f21f81ae104038cd2eacd505c5ea
Author: Martin Grenfell <martin.grenfell@gmail.com>
Date: Wed, 4 Jan 2012 00:13:57 +0000
use the keymap api for the mouse mappings
Diffstat:
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/plugin/NERD_tree.vim b/plugin/NERD_tree.vim
@@ -509,11 +509,13 @@ endfunction
"FUNCTION: KeyMap.bind() {{{3
function! s:KeyMap.bind()
let mapkey = self.key
- if mapkey =~ '^[CM]-'
+ if mapkey =~? '^\([CM]-\|middlerelease\|2-leftmouse\|leftrelease\)'
let mapkey = '<' . mapkey . '>'
endif
- exec 'nnoremap <buffer> <silent> '. mapkey .' :call <SID>KeyMap_Invoke("'. self.key .'")<cr>'
+ let premap = self.key == "leftrelease" ? " <leftrelease>" : " "
+
+ exec 'nnoremap <buffer> <silent> '. mapkey . premap . ':call <SID>KeyMap_Invoke("'. self.key .'")<cr>'
endfunction
"FUNCTION: KeyMap.invoke() {{{3
@@ -3667,13 +3669,15 @@ endfunction
"FUNCTION: s:bindMappings() {{{2
function! s:bindMappings()
- " set up mappings and commands for this buffer
- nnoremap <silent> <buffer> <middlerelease> :call <SID>handleMiddleMouse()<cr>
- nnoremap <silent> <buffer> <leftrelease> <leftrelease>:call <SID>handleLeftClick()<cr>
- exec "nnoremap <silent> <buffer> <2-leftmouse> :call <SID>KeyMap_Invoke('". g:NERDTreeMapActivateNode ."')<cr>"
-
let s = '<SNR>' . s:SID() . '_'
+ call NERDTreeAddKeyMap({ 'key': 'middlerelease', 'scope': "all", 'callback': s."handleMiddleMouse" })
+ call NERDTreeAddKeyMap({ 'key': 'leftrelease', 'scope': "all", 'callback': s."handleLeftClick" })
+ call NERDTreeAddKeyMap({ 'key': '2-leftmouse', 'scope': "Node", 'callback': s."activateNode" })
+ call NERDTreeAddKeyMap({ 'key': '2-leftmouse', 'scope': "Bookmark", 'callback': s."activateBookmark" })
+ call NERDTreeAddKeyMap({ 'key': '2-leftmouse', 'scope': "all", 'callback': s."activateAll" })
+
+
call NERDTreeAddKeyMap({ 'key': g:NERDTreeMapActivateNode, 'scope': "Node", 'callback': s."activateNode" })
call NERDTreeAddKeyMap({ 'key': g:NERDTreeMapActivateNode, 'scope': "Bookmark", 'callback': s."activateBookmark" })
call NERDTreeAddKeyMap({ 'key': g:NERDTreeMapActivateNode, 'scope': "all", 'callback': s."activateAll" })