X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=autoload%2Funite%2Fsources%2Fxrefs.vim;fp=autoload%2Funite%2Fsources%2Fxrefs.vim;h=0000000000000000000000000000000000000000;hb=6e251a420b39df1ab77ce60af69905891632d113;hp=87f9b534653a7bfee2038c0a3571da5c99ce0374;hpb=b927f34f30485d6448f10abf196d7e32c503aff5;p=vim-mkbuild.git diff --git a/autoload/unite/sources/xrefs.vim b/autoload/unite/sources/xrefs.vim deleted file mode 100644 index 87f9b53..0000000 --- a/autoload/unite/sources/xrefs.vim +++ /dev/null @@ -1,56 +0,0 @@ -" unite source: tags file and/or cscope database selection for projects using -" mkbuild - -let s:save_cpo = &cpo -set cpo&vim - -let s:source = { - \ 'name': 'xrefs', - \ 'description': 'select cross references from a directory', - \ 'action_table': { - \ 'setxrefs' : { 'is_selectable': 1 }, - \ }, - \ 'default_action': 'setxrefs' - \ } - -function! s:source.action_table.setxrefs.func(candidates) - call s:select(a:candidates[0].word) -endfunction - -function! s:select(dirname) - if empty(a:dirname) - return - endif - let file = a:dirname . "/tags" - let &tags='' - if filereadable(file) - let &tags = file - endif - if has('cscope') - let file = a:dirname . "/cscope.out" - execute 'cscope kill -1' - if filereadable(file) - execute 'cscope add ' . file - endif - endif -endfunction - -" Return the results of a command without the ending newline -function! s:chompsys(cmd) - return substitute(system(a:cmd), '\n$', '', '') -endfunction - -function! s:source.gather_candidates(args, context) - let cmd = 'find . -maxdepth 4 -type f -name tags -o -name cscope.out | ' . - \ 'while read f; do echo $(dirname $f); done | sort -u | sed -e "s|\./||"' - let xrefdirs = split(s:chompsys(cmd), '\n') - - return map(xrefdirs, '{ "word": v:val }') -endfunction - -function! unite#sources#xrefs#define() - return s:source -endfunction - -let &cpo = s:save_cpo -unlet s:save_cpo