21 lines
479 B
Text
21 lines
479 B
Text
|
let s:sids = {}
|
||
|
function! s:sid(path) abort
|
||
|
if has_key(s:sids, a:path)
|
||
|
return s:sids[a:path]
|
||
|
endif
|
||
|
redir => scriptnames
|
||
|
silent! scriptnames
|
||
|
redir END
|
||
|
for line in split(scriptnames, '\n')
|
||
|
if line =~# a:path
|
||
|
let sid = matchstr(line, '\v^\s*\zs\d+\ze')
|
||
|
let s:sids[a:path] = sid
|
||
|
return sid
|
||
|
endif
|
||
|
endfor
|
||
|
endfunction
|
||
|
|
||
|
function! SID(name) abort
|
||
|
return function(printf("\<SNR>%d_%s", s:sid('autoload/lightline.vim'), a:name))
|
||
|
endfunction
|