Subject: Re: bug#33567: Syntactic fontification of diff hunks

From: Juri Linkov <[email-masked]>
Date: Thu, 27 Dec 2018 00:59:37 +0200

>>> Your proposed new colors for added/removed are the same that are used
>>> GitHub/GitLab, so this should be a good change.  For refine-removed
>>> better to use GitLab's color #ffcccc that is very close to the
>>> color you proposed.  But for refine-added GitLab made the same mistake
>>> that GitHub already fixed.  So the best color for refine-added is #bbffbb.
>>
>> After trying to use there colors, I see that their shade is too subtle.
>> They might look better on large hunks, and I'm not sure why they look ok
>> in the browser, but in Emacs refined colors for small changes are almost
>> not noticeable.  However, please change them if majority agrees.
>
> To my eyes, that's a surprising conclusion.
>
> I wasn't going to argue with your correction to refine-added, even though
> I might prefer a slightly lighter variation (because I end up looking at
> larger refined regions often). Are you now saying that #ffcccc for
> refine-removed (or #d0ffd0, the difference is visible only on large
> regions) and #bbffbb for refine-added are hard for you to notice on
> smaller regions?

I meant that added/removed #eeffee/#ffeeee are harder to notice,
and really only on distant corners of the monitor.  Also looking down
at the LCD screen from a sharp angle can see the inverted colors:
green instead of red, and red instead of green :)

So color choice is not the exact sciences.

> Before we get into deeper discussion (as well as discussing how one finds
> out majority's opinion), I have to ask: did you make sure to use the new
> refined colors with the new diff-added and diff-removed background colors?

Since #eeffee/#ffeeee colors were tested on many users of
GitHub/GitLab, please keep them in diff-mode and also install
the accompanying change of refine-added/refine-removed.

> This is commit a94ac604d8. We can also note that GitHub only refines
> smaller chunks:

GitHub only refines smaller chunks, but refining large chunks often
helps to see real changes with code indentation, e.g. when a let-binding
form is added and thus whitespace of indentation shifts the code block.

> https://github.com/emacs-mirror/emacs/commit/a94ac604d8c9848b0414ade80a1920b345161656,
> so its use of darker backgrounds is more justifiable.
>
> What do you think of the screenshots? Are the small refined regions hard
> for you to see? Or do they look very different in your Emacs?

I think this is fine, I have no problems with refine-added/refine-removed,
please install refine-added/refine-removed as well.