diff --git a/autoload/airline/extensions/hunks.vim b/autoload/airline/extensions/hunks.vim index 815efa55..45856791 100644 --- a/autoload/airline/extensions/hunks.vim +++ b/autoload/airline/extensions/hunks.vim @@ -16,24 +16,14 @@ let s:non_zero_only = get(g:, 'airline#extensions#hunks#non_zero_only', 0) let s:hunk_symbols = get(g:, 'airline#extensions#hunks#hunk_symbols', ['+', '~', '-']) function! s:coc_git_enabled() abort - if !exists("*CocAction") + if !exists("*CocAction") || + !get(g:, 'airline#extensions#hunks#coc_git', 0) + " coc-git extension is disabled by default + " unless specifically being enabled by the user + " (as requested from coc maintainer) return 0 endif - if exists("s:airline_coc_git_enabled") - return s:airline_coc_git_enabled - endif - let extensions=CocAction('extensionStats') - if type(extensions) != type([]) - " not yet initialized? Assume it is available... - return 1 - endif - let coc_git=filter(extensions, 'v:val.id is# "coc-git" && v:val.state is# "activated"') - if !empty(coc_git) - let s:airline_coc_git_enabled = 1 - else - let s:airline_coc_git_enabled = 0 - endif - return s:airline_coc_git_enabled + return 1 endfunction function! s:get_hunks_signify() abort diff --git a/doc/airline.txt b/doc/airline.txt index a33d8839..0feaea7d 100644 --- a/doc/airline.txt +++ b/doc/airline.txt @@ -758,6 +758,11 @@ querying how many changes you got. It will return something like '+4 ~2 -1'. < * set hunk count symbols. > let g:airline#extensions#hunks#hunk_symbols = ['+', '~', '-'] + +* enable coc-git extension. + If not set to 1, vim-airline will not consider to use coc-git for the hunks + extension. Make sure to have the coc-git extension enabled. > + let g:airline#extensions#hunks#coc_git = 1 < ------------------------------------- *airline-keymap* vim-keymap