Guest User

Untitled

a guest
Jul 16th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.17 KB | None | 0 0
  1. " grep source for unite.vim
  2. "
  3. " setting example:
  4. "
  5. " let g:unite_source_grep_default_dir = '~/.vim'
  6. " let g:unite_source_grep_default_opts = '-iR'
  7.  
  8. let s:grep_source = { 'name': 'grep', 'is_volatile': 1 }
  9. function! s:grep_source.gather_candidates(args, context)
  10. let l:directory = get(a:args, 0, g:unite_source_grep_default_dir)
  11. let l:extra_opts = get(a:args, 1, g:unite_source_grep_default_opts)
  12.  
  13. if l:directory =~ '^-'
  14. let l:extra_opts = l:directory
  15. let l:directory = g:unite_source_grep_default_dir
  16. endif
  17.  
  18. let l:candidates = split(
  19. \ unite#util#system(printf(
  20. \ 'grep %s %s %s',
  21. \ a:context.input,
  22. \ l:directory,
  23. \ l:extra_opts)),
  24. \ "\n")
  25. return map(l:candidates,
  26. \ '{
  27. \ "word": v:val,
  28. \ "source": "grep",
  29. \ "kind": "file",
  30. \ "action__path": substitute(v:val, "\:.*", "", ""),
  31. \ }')
  32. endfunction
  33. call unite#define_source(s:grep_source)
Add Comment
Please, Sign In to add comment