Skip to content

Commit

Permalink
Bugfix - ensure keymaps dictionary exists before using it
Browse files Browse the repository at this point in the history
The s:KeyMap._all function isn't necessary if we initialize the
s:keyMaps dictionary at file load time.
  • Loading branch information
mnussbaum committed Jun 12, 2018
1 parent bf4591c commit eb048a3
Showing 1 changed file with 4 additions and 12 deletions.
16 changes: 4 additions & 12 deletions lib/nerdtree/key_map.vim
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,11 @@
"============================================================
let s:KeyMap = {}
let g:NERDTreeKeyMap = s:KeyMap

"FUNCTION: KeyMap._all() {{{1
function! s:KeyMap._all()
if !exists("s:keyMaps")
let s:keyMaps = {}
endif

return s:keyMaps
endfunction
let s:keyMaps = {}

"FUNCTION: KeyMap.All() {{{1
function! s:KeyMap.All()
let sortedKeyMaps = values(s:KeyMap._all())
let sortedKeyMaps = values(s:keyMaps)
call sort(sortedKeyMaps, s:KeyMap.Compare, s:KeyMap)

return sortedKeyMaps
Expand All @@ -36,12 +28,12 @@ endfunction

"FUNCTION: KeyMap.FindFor(key, scope) {{{1
function! s:KeyMap.FindFor(key, scope)
return get(s:KeyMap._all(), a:key . a:scope, {})
return get(s:keyMaps, a:key . a:scope, {})
endfunction

"FUNCTION: KeyMap.BindAll() {{{1
function! s:KeyMap.BindAll()
for i in values(s:KeyMap._all())
for i in values(s:keyMaps)
call i.bind()
endfor
endfunction
Expand Down

0 comments on commit eb048a3

Please sign in to comment.