36 lines
837 B
VimL
36 lines
837 B
VimL
let s:save_cpo = &cpo
|
|
set cpo&vim
|
|
|
|
let s:source = {
|
|
\ 'name' : 'ultisnips',
|
|
\ 'kind' : 'keyword',
|
|
\ 'mark' : '[US]',
|
|
\ 'rank' : 8,
|
|
\ 'matchers' :
|
|
\ (g:neocomplete#enable_fuzzy_completion ?
|
|
\ ['matcher_fuzzy'] : ['matcher_head']),
|
|
\ 'min_pattern_length' : 1,
|
|
\ 'max_candidates' : 20,
|
|
\ 'is_volatile': 1,
|
|
\ }
|
|
|
|
function! s:source.gather_candidates(context)
|
|
let suggestions = []
|
|
let snippets = UltiSnips#SnippetsInCurrentScope()
|
|
for trigger in keys(snippets)
|
|
let description = get(snippets, trigger)
|
|
call add(suggestions, {
|
|
\ 'word' : trigger,
|
|
\ 'menu' : self.mark . ' '. description
|
|
\ })
|
|
endfor
|
|
return suggestions
|
|
endfunction
|
|
|
|
function! neocomplete#sources#ultisnips#define()
|
|
return s:source
|
|
endfunction
|
|
|
|
let &cpo = s:save_cpo
|
|
unlet s:save_cpo
|