sainnhe / gruvbox-material

Gruvbox with Material Palette
MIT License
1.96k stars 166 forks source link

Add David-Kunz/markid highlights #147

Closed crivotz closed 2 years ago

crivotz commented 2 years ago

Add David-Kunz/markid highlights

antoineco commented 2 years ago

Thanks for the changes! I'll look into it tomorrow.

My first reaction is that using the base palette's colors will cause markid colors to overlap with semantic colors. For example, keywords such as function, if ... else, return are red, and some markid words will also be red, etc.

This could rapidly look like a "box of crayons" on screen, but maybe I'm wrong! So far I only checked the examples at https://github.com/David-Kunz/markid, which seem to use more pastel tones to avoid this feeling of overlapping with the color scheme.

Have you tried with those colors? In what language(s)? Does it look decent?

crivotz commented 2 years ago

You are absolutely right. I used the colors I put in today and it's confusing. I will try some tests these days to see if I can find suitable colors within the palette. In the meantime you can close the PR and open it later if valid.

antoineco commented 2 years ago

That's ok, we can leave it open IMO.

I doubt the palette is broad enough for you to find unique colors, but what we can do is pick one or two foreground colors from the palette and calculate a few shades for them.

crivotz commented 2 years ago

@antoineco I tried to do some testing using a 15% lightened version for each fg and gray color in the dark+material palette, the result is not bad but at the moment purely constrained to the material version. I also used a construct you had recommended in an issue for handling without going to a PR. So considering that markids greatly impacts the appearance of the theme I would close the issue leaving only this reference for an eventual user wanted addition.

grpid = vim.api.nvim_create_augroup('custom_highlights_gruvboxmaterial', {})
vim.api.nvim_create_autocmd('ColorScheme', {
  group = grpid,
  pattern = 'gruvbox-material',
  command =
  'hi markid1             guifg=#ff8f88 |' ..
  'hi markid2             guifg=#ffb074 |' ..
  'hi markid3             guifg=#cfdc8b |' ..
  'hi markid4             guifg=#a3d4c9 |' ..
  'hi markid5             guifg=#f9acc1 |' ..
  'hi markid6             guifg=#afdaa8 |' ..
  'hi markid7             guifg=#fecc7d |' ..
  'hi markid8             guifg=#eed8b2 |' ..
  'hi markid9             guifg=#ffedc7 |' ..
  'hi markid10            guifg=#cebfaa |'
})
vim.cmd'colorscheme gruvbox-material'

Thanks for your support