lifepillar / vim-solarized8

Optimized Solarized colorschemes. Best served with true-color terminals!
1.01k stars 91 forks source link

Solarized8 seems to be incompatible with the vim-signify #55

Closed serend1p1ty closed 5 years ago

serend1p1ty commented 5 years ago

Hi, @lifepillar Solarized8 seems to be incompatible with the plugin vim-signify screenshot from 2019-02-20 00-10-38 Please see the prompt in the left sidebar. Can you help me ? I will be very grateful !

serend1p1ty commented 5 years ago

The solution is here https://github.com/mhinz/vim-signify/issues/286#issuecomment-465570794

lifepillar commented 5 years ago

See also issue https://github.com/lifepillar/vim-solarized8/issues/44.

Signify links to DiffAdd, DiffChange and DiffDelete for highlighting signs. In Solarized8 (and in the original Solarized, IIRC), diff groups have a background lighter than Normal, but that may be changed with g:solarized_diffmode. So, another way to solve your issue is to put this in your vimrc:

let g:solarized_diffmode = "low"
colorscheme solarized8

Note that this will affect the way diff buffers are displayed, too.

@mhinz Perhaps, instead of linking to existing groups, you might combine the foreground colors of diff groups with the background color of SignColumn. Something along these lines:

fun! Col(group, mode)
  return "cterm".a:mode."=".matchstr(execute('hi '.a:group), 'cterm'.a:mode.'=\zs\S\+') .
        \ " gui".a:mode."=".matchstr(execute('hi '.a:group),   'gui'.a:mode.'=\zs\S\+')
endf

fun! SetHiGroup(higroup, fggroup, bggroup)
  echo "hi" a:higroup Col(a:fggroup, 'fg') Col(a:bggroup, 'bg')
endf

call SetHiGroup("SignifyLineAdd",    "DiffAdd",    "SignColumn")
call SetHiGroup("SignifyLineChange", "DiffChange", "SignColumn")
call SetHiGroup("SignifyLineDelete", "DiffDelete", "SignColumn")
mhinz commented 5 years ago

I thought about that before, but the problem is.. taste. :)

Some people want signs to have the same background color as SignColumn and others want SignColumn to have the same background color as the signs.

And there's even a third group, which includes me, who want to have different background colors on purpose. I use g:startify_sign_show_text = 0, thus I basically use a green background sign instead of a sign showing + etc.:

I think in the end the best way to solve this issue is to improve our docs as much as possible and teach users how to work with colors in Vim.