spacevim/bundle/neosnippet.vim/autoload/unite/sources/neosnippet_file.vim
JIe 2bb7059579
Some checks failed
Detach Plugins / check (FlyGrep.vim) (push) Has been cancelled
Detach Plugins / check (GitHub.vim) (push) Has been cancelled
Detach Plugins / check (JavaUnit.vim) (push) Has been cancelled
Detach Plugins / check (SourceCounter.vim) (push) Has been cancelled
Detach Plugins / check (cpicker.nvim) (push) Has been cancelled
Detach Plugins / check (dein-ui.vim) (push) Has been cancelled
Detach Plugins / check (git.vim) (push) Has been cancelled
Detach Plugins / check (iedit.vim) (push) Has been cancelled
Detach Plugins / check (scrollbar.vim) (push) Has been cancelled
Detach Plugins / check (vim-chat) (push) Has been cancelled
Detach Plugins / check (vim-cheat) (push) Has been cancelled
Detach Plugins / check (vim-todo) (push) Has been cancelled
Detach Plugins / check (xmake.vim) (push) Has been cancelled
test / Linux (nvim, nightly) (push) Has been cancelled
test / Linux (nvim, v0.3.8) (push) Has been cancelled
test / Linux (nvim, v0.4.0) (push) Has been cancelled
test / Linux (nvim, v0.4.2) (push) Has been cancelled
test / Linux (nvim, v0.4.3) (push) Has been cancelled
test / Linux (nvim, v0.4.4) (push) Has been cancelled
test / Linux (nvim, v0.5.0) (push) Has been cancelled
test / Linux (nvim, v0.5.1) (push) Has been cancelled
test / Linux (nvim, v0.6.0) (push) Has been cancelled
test / Linux (nvim, v0.6.1) (push) Has been cancelled
test / Linux (nvim, v0.7.0) (push) Has been cancelled
test / Linux (nvim, v0.7.2) (push) Has been cancelled
test / Linux (nvim, v0.8.0) (push) Has been cancelled
test / Linux (nvim, v0.8.1) (push) Has been cancelled
test / Linux (nvim, v0.8.2) (push) Has been cancelled
test / Linux (nvim, v0.8.3) (push) Has been cancelled
test / Linux (nvim, v0.9.0) (push) Has been cancelled
test / Linux (nvim, v0.9.1) (push) Has been cancelled
test / Linux (true, vim, v7.4.052) (push) Has been cancelled
test / Linux (true, vim, v7.4.1689) (push) Has been cancelled
test / Linux (true, vim, v7.4.629) (push) Has been cancelled
test / Linux (true, vim, v8.0.0027) (push) Has been cancelled
test / Linux (true, vim, v8.0.0183) (push) Has been cancelled
test / Linux (vim, nightly) (push) Has been cancelled
test / Linux (vim, v8.0.0184) (push) Has been cancelled
test / Linux (vim, v8.0.1453) (push) Has been cancelled
test / Linux (vim, v8.1.2269) (push) Has been cancelled
test / Linux (vim, v8.2.2434) (push) Has been cancelled
test / Linux (vim, v8.2.3995) (push) Has been cancelled
test / Windows (nvim, nightly) (push) Has been cancelled
test / Windows (nvim, v0.3.8) (push) Has been cancelled
test / Windows (nvim, v0.4.2) (push) Has been cancelled
test / Windows (nvim, v0.4.3) (push) Has been cancelled
test / Windows (nvim, v0.4.4) (push) Has been cancelled
test / Windows (nvim, v0.5.0) (push) Has been cancelled
test / Windows (nvim, v0.5.1) (push) Has been cancelled
test / Windows (nvim, v0.6.0) (push) Has been cancelled
test / Windows (nvim, v0.6.1) (push) Has been cancelled
test / Windows (nvim, v0.7.0) (push) Has been cancelled
test / Windows (nvim, v0.7.2) (push) Has been cancelled
test / Windows (nvim, v0.8.0) (push) Has been cancelled
test / Windows (nvim, v0.8.1) (push) Has been cancelled
test / Windows (nvim, v0.8.2) (push) Has been cancelled
test / Windows (nvim, v0.8.3) (push) Has been cancelled
test / Windows (nvim, v0.9.0) (push) Has been cancelled
test / Windows (nvim, v0.9.1) (push) Has been cancelled
test / Windows (vim, nightly) (push) Has been cancelled
test / Windows (vim, v7.4.1185) (push) Has been cancelled
test / Windows (vim, v7.4.1689) (push) Has been cancelled
test / Windows (vim, v8.0.0027) (push) Has been cancelled
test / Windows (vim, v8.0.1453) (push) Has been cancelled
test / Windows (vim, v8.1.2269) (push) Has been cancelled
test / Windows (vim, v8.2.2434) (push) Has been cancelled
test / Windows (vim, v8.2.3995) (push) Has been cancelled
docker / docker (push) Has been cancelled
mirror / check (coding) (push) Has been cancelled
mirror / check (gitee) (push) Has been cancelled
mirror / check (gitlab) (push) Has been cancelled
init
2024-08-21 14:17:26 +08:00

90 lines
2.8 KiB
VimL

"=============================================================================
" FILE: neosnippet_file.vim
" AUTHOR: Shougo Matsushita <Shougo.Matsu at gmail.com>
" License: MIT license
"=============================================================================
function! unite#sources#neosnippet_file#define() abort
return [s:source_user, s:source_runtime]
endfunction
" common action table
let s:action_table = {}
let s:action_table.neosnippet_source = {
\ 'description' : 'neosnippet_source file',
\ 'is_selectable' : 1,
\ 'is_quit' : 1,
\ }
function! s:action_table.neosnippet_source.func(candidates) abort
for candidate in a:candidates
let snippet_name = candidate.action__path
if snippet_name !=# ''
call neosnippet#commands#_source(snippet_name)
endif
endfor
endfunction
" neosnippet source.
let s:source_user = {
\ 'name': 'neosnippet/user',
\ 'description' : 'neosnippet user file',
\ 'action_table' : copy(s:action_table),
\ }
function! s:source_user.gather_candidates(args, context) abort
return s:get_snippet_candidates(
\ neosnippet#get_user_snippets_directory())
endfunction
let s:source_user.action_table.unite__new_candidate = {
\ 'description' : 'create new user snippet',
\ 'is_invalidate_cache' : 1,
\ 'is_quit' : 1,
\ }
function! s:source_user.action_table.unite__new_candidate.func(candidate) abort
let filename = input(
\ 'New snippet file name: ', neosnippet#helpers#get_filetype())
if filename !=# ''
call neosnippet#commands#_edit(filename)
endif
endfunction
" neosnippet source.
let s:source_runtime = {
\ 'name': 'neosnippet/runtime',
\ 'description' : 'neosnippet runtime file',
\ 'action_table' : copy(s:action_table),
\ }
function! s:source_runtime.gather_candidates(args, context) abort
return s:get_snippet_candidates(
\ neosnippet#get_runtime_snippets_directory())
endfunction
let s:source_runtime.action_table.unite__new_candidate = {
\ 'description' : 'create new runtime snippet',
\ 'is_invalidate_cache' : 1,
\ 'is_quit' : 1,
\ }
function! s:source_runtime.action_table.unite__new_candidate.func(candidate) abort
let filename = input(
\ 'New snippet file name: ', neosnippet#helpers#get_filetype())
if filename !=# ''
call neosnippet#commands#_edit('-runtime ' . filename)
endif
endfunction
function! s:get_snippet_candidates(dirs) abort
let _ = []
for directory in a:dirs
let _ += map(split(unite#util#substitute_path_separator(
\ globpath(directory, '**/*.snip*')), '\n'), "{
\ 'word' : v:val[len(directory)+1 :],
\ 'action__path' : v:val,
\ 'kind' : 'file',
\ }")
endfor
return _
endfunction