mirror of
https://github.com/airblade/vim-gitgutter.git
synced 2025-11-09 03:53:47 -05:00
Store buffer local variables in a single dictionary.
This reduces the footprint in the buffer variable namespace to a single key.
This commit is contained in:
@@ -3,14 +3,19 @@ let s:using_xolox_shell = -1
|
|||||||
let s:exit_code = 0
|
let s:exit_code = 0
|
||||||
|
|
||||||
function! gitgutter#utility#setbufvar(buffer, varname, val)
|
function! gitgutter#utility#setbufvar(buffer, varname, val)
|
||||||
call setbufvar(a:buffer, 'gitgutter_'.a:varname, a:val)
|
let dict = get(getbufvar(a:buffer, ''), 'gitgutter', {})
|
||||||
|
let dict[a:varname] = a:val
|
||||||
|
call setbufvar(a:buffer, 'gitgutter', dict)
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! gitgutter#utility#getbufvar(buffer, varname, ...)
|
function! gitgutter#utility#getbufvar(buffer, varname, ...)
|
||||||
if a:0
|
let dict = get(getbufvar(a:buffer, ''), 'gitgutter', {})
|
||||||
return get(getbufvar(a:buffer, ''), 'gitgutter_'.a:varname, a:1)
|
if has_key(dict, a:varname)
|
||||||
|
return dict[a:varname]
|
||||||
else
|
else
|
||||||
return getbufvar(a:buffer, 'gitgutter_'.a:varname)
|
if a:0
|
||||||
|
return a:1
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user