neovide: Text rendering will grey out when diagnostics error appear as virtual text.

Describe the bug Text rendering will grey out when diagnostics error appear as virtual text. I thought this might related to refresh, so I set neovide_no_idle = true, issue remains.

BTW, neovim-qt works well in the mean time.

To Reproduce

  1. Open any *.go file.
  2. Type a wrong statement which could trigger diagnostic error.

Expected behavior

  1. Diagnostics error message will be shown and other text looks normal.

Screenshots This is normal text rendering looks like. 截屏2021-08-01 下午3 06 05

This is grey out text rendering looks like. 截屏2021-08-01 下午3 06 16

Desktop (please complete the following information):

  • OS: macOS 11.5.1
  • Neovide Version: newest from master branch
  • Neovim Version: 0.6.0-dev

Please run neovide --log and paste the contents of the .log file here:

Additional context Add any other context about the problem here.

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Reactions: 3
  • Comments: 30 (15 by maintainers)

Most upvoted comments

The issue happens only when text with style = ‘undercurl’ is present. See the last bullet point.

Thanks, really appreciate having some guidance on what to test. As I say, happy to pair on this too, if it helps. Tested the following on yesterday’s main (98e1a72).

  • Happens with and without multigrid
  • g:neovide_transparency changes how it looks, into a weird shadow thing. Screenshots below.
  • g:neovide_window_floating_opacity - no change
  • “Does it it go back to normal when you are in insert mode” -> No
  • “Can you also provide a log file?” -> which log and how do I get it?
  • I cut out highlight groups until it stopped happening. This was fast, as the LSP diagnostic section was immediately suspicious – and correctly so. In the end, I removed only all the style = 'undercurl' calls from the theme’s LSP section. With those styles in, the issue happens; without, no problems.

Transparency, before diagnostic text: Screen Shot 2022-01-12 at 15 28 04

Transparency, after diagnostic text (note “Missing” on the right, which is the diagnostic): Screen Shot 2022-01-12 at 15 28 46

Ok merged. Thanks for testing

I confirm the new branch also fixes the issue for me! Thank you so much, excited to be able to use neovide full time.

The new branch seems to have fixed the issue for me. No other changes were required.

image

Yes this is very helpful. I’ll do some thinking and experimentation soon

Thanks, this was very helpful, I think @Kethku or someone else has enough information now to track the bug down.

But I guess you mean undercurl not underline, since undercurl is mentioned later in the text?

From the image it looks like there’s an outline rendered around the text, which is in the wrong place when the diagnostics is enabled, making the text seem lighter. But I’m not sure that it should be there at all, @Kethku might be right about the text being rendered twice.