diff --git a/README.mkd b/README.mkd index c49289f..9c5e48c 100644 --- a/README.mkd +++ b/README.mkd @@ -633,16 +633,6 @@ This plugin is for showing changes between the buffer and the index (and staging Your colorscheme is configuring the `SignColumn` highlight group weirdly. Please see the section above on customising the sign column. -> Why are the colours in the preview window weird? - -Probably because your colourscheme doesn't configure the `diff{Added,Changed,Removed}` highlight groups. Try this in `after/syntax/diff.vim`: - -```viml -highlight link diffAdded DiffAdd -highlight link diffChanged DiffChange -highlight link diffRemoved DiffDelete -``` - > What happens if I also use another plugin which uses signs (e.g. Syntastic)? You can configure whether GitGutter preserves or clobbers other signs using `g:gitgutter_sign_allow_clobber`. Set to `1` to clobber other signs (default on Vim >= 8.1.0614 and NeoVim >= 0.4.0) or `0` to preserve them. diff --git a/autoload/gitgutter/highlight.vim b/autoload/gitgutter/highlight.vim index aa14d3c..ed63f29 100644 --- a/autoload/gitgutter/highlight.vim +++ b/autoload/gitgutter/highlight.vim @@ -116,11 +116,12 @@ function! gitgutter#highlight#define_highlights() abort " Highlights used intra line. highlight GitGutterAddIntraLine gui=reverse cterm=reverse highlight GitGutterDeleteIntraLine gui=reverse cterm=reverse - " Set default diff colours for the preview window (some colourschemes forget this). - " highlight default link diffAdded DiffAdd - " highlight default link diffChanged DiffChange - " highlight default link diffRemoved DiffDelete - + " Set diff syntax colours (used in the preview window) - diffAdded,diffChanged,diffRemoved - + " to match the signs. + for [dtype,type] in [['Added','Add'], ['Changed','Change'], ['Removed','Delete']] + let [guifg, ctermfg] = s:get_foreground_colors('GitGutter'.type) + execute "highlight diff".dtype." guifg=".guifg." ctermfg=".ctermfg." guibg=NONE ctermbg=NONE" + endfor endfunction function! gitgutter#highlight#define_signs() abort