1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-01-23 22:20:06 +08:00

Add func for register api

This commit is contained in:
wsdjeg 2017-04-13 21:37:26 +08:00
parent 2ac1ad2f24
commit 22b80e3b7b

View File

@ -17,13 +17,27 @@
" let rst = s:json.json_decode(string)
" <
let s:apis = {}
function! SpaceVim#api#import(name) abort
if has_key(s:apis, a:name)
return deepcopy(s:apis[a:name])
endif
let p = {}
try
let p = SpaceVim#api#{a:name}#get()
let s:apis[a:name] = p
catch /^Vim\%((\a\+)\)\=:E117/
endtry
return p
endfunction
function! SpaceVim#api#register(name, api) abort
if !empty(SpaceVim#api#import(a:name))
echoerr '[SpaceVim api] Api : ' . a:name . ' already existed!'
else
let s:apis[a:name] = deepcopy(a:api)
endif
endfunction
" vim:set fdm=marker sw=2 nowrap: