Bugfix - ensure keymaps dictionary exists before using it

The s:KeyMap._all function isn't necessary if we initialize the
s:keyMaps dictionary at file load time.
This commit is contained in:
mnussbaum 2018-06-12 12:43:25 -07:00
parent bf4591c5d8
commit eb048a3070

View File

@ -2,19 +2,11 @@
"============================================================ "============================================================
let s:KeyMap = {} let s:KeyMap = {}
let g:NERDTreeKeyMap = s:KeyMap let g:NERDTreeKeyMap = s:KeyMap
let s:keyMaps = {}
"FUNCTION: KeyMap._all() {{{1
function! s:KeyMap._all()
if !exists("s:keyMaps")
let s:keyMaps = {}
endif
return s:keyMaps
endfunction
"FUNCTION: KeyMap.All() {{{1 "FUNCTION: KeyMap.All() {{{1
function! s:KeyMap.All() function! s:KeyMap.All()
let sortedKeyMaps = values(s:KeyMap._all()) let sortedKeyMaps = values(s:keyMaps)
call sort(sortedKeyMaps, s:KeyMap.Compare, s:KeyMap) call sort(sortedKeyMaps, s:KeyMap.Compare, s:KeyMap)
return sortedKeyMaps return sortedKeyMaps
@ -36,12 +28,12 @@ endfunction
"FUNCTION: KeyMap.FindFor(key, scope) {{{1 "FUNCTION: KeyMap.FindFor(key, scope) {{{1
function! s:KeyMap.FindFor(key, scope) function! s:KeyMap.FindFor(key, scope)
return get(s:KeyMap._all(), a:key . a:scope, {}) return get(s:keyMaps, a:key . a:scope, {})
endfunction endfunction
"FUNCTION: KeyMap.BindAll() {{{1 "FUNCTION: KeyMap.BindAll() {{{1
function! s:KeyMap.BindAll() function! s:KeyMap.BindAll()
for i in values(s:KeyMap._all()) for i in values(s:keyMaps)
call i.bind() call i.bind()
endfor endfor
endfunction endfunction