mirror of
https://github.com/airblade/vim-gitgutter.git
synced 2025-11-10 04:23:46 -05:00
Make grep optional instead of required.
When grep is available we use it for efficiency. When it's unavailable, we filter in Vimscript.
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
if exists('g:loaded_gitgutter') || !executable('git') || !executable('grep') || !has('signs') || &cp
|
if exists('g:loaded_gitgutter') || !executable('git') || !has('signs') || &cp
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_gitgutter = 1
|
let g:loaded_gitgutter = 1
|
||||||
@@ -47,6 +47,8 @@ function! s:init()
|
|||||||
let s:other_signs = []
|
let s:other_signs = []
|
||||||
let s:dummy_sign_id = 153
|
let s:dummy_sign_id = 153
|
||||||
|
|
||||||
|
let s:grep_available = executable('grep')
|
||||||
|
|
||||||
let g:gitgutter_initialised = 1
|
let g:gitgutter_initialised = 1
|
||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
@@ -189,8 +191,10 @@ endfunction
|
|||||||
" Diff processing {{{
|
" Diff processing {{{
|
||||||
|
|
||||||
function! s:run_diff()
|
function! s:run_diff()
|
||||||
let cmd = 'git diff --no-ext-diff --no-color -U0 ' . g:gitgutter_diff_args . ' ' .
|
let cmd = 'git diff --no-ext-diff --no-color -U0 ' . g:gitgutter_diff_args . ' ' . shellescape(s:file())
|
||||||
\ shellescape(s:file()) . ' | grep -e "^@@ "'
|
if s:grep_available
|
||||||
|
let cmd .= ' | grep -e "^@@ "'
|
||||||
|
endif
|
||||||
let diff = system(s:command_in_directory_of_file(cmd))
|
let diff = system(s:command_in_directory_of_file(cmd))
|
||||||
return diff
|
return diff
|
||||||
endfunction
|
endfunction
|
||||||
|
|||||||
Reference in New Issue
Block a user