Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New setting to set saturation level of colorscheme. #140

Closed
231tr0n opened this issue Oct 16, 2024 · 13 comments · Fixed by #141
Closed

New setting to set saturation level of colorscheme. #140

231tr0n opened this issue Oct 16, 2024 · 13 comments · Fixed by #141
Labels
question Further information is requested

Comments

@231tr0n
Copy link

231tr0n commented Oct 16, 2024

Question or Suggestion

Hi scottmckendry! Is it possible to include a new configuration parameter to control the saturation of the colors used for syntax highlighting similar to something which mini.hues does.

@231tr0n 231tr0n added the question Further information is requested label Oct 16, 2024
scottmckendry added a commit that referenced this issue Oct 16, 2024
@scottmckendry
Copy link
Owner

Hey @231tr0n!

I've just added this feature in the latest commit. The new theme.saturation option accepts a decimal value between 0 and 1 (1 being default).

Appreciate if you could test this out and let me know what you think! 🚀

@231tr0n
Copy link
Author

231tr0n commented Oct 16, 2024

Sure thank you for the quick response.

@231tr0n
Copy link
Author

231tr0n commented Oct 16, 2024

Hi! I just had one suggestion. Altough I am actually able to reduce the saturation value, the white coloured part of the code is becoming way too bright. I asked this so that i can reduce the intensiveness of overall colorscheme to be easy on eyes. But i feel like white is not taking any effect here. Do you think something can be done for white as well.
image

@231tr0n
Copy link
Author

231tr0n commented Oct 16, 2024

Also i just found this out like mini.completion uses the inbuilt completion popup which is completely transparent and looks like this. Are you fine with adding a background to the default completion popup.
image

@scottmckendry
Copy link
Owner

Ah, I see. Because the theme uses pure white for the fg colour (#ffffff), saturation actually has no effect. With a saturation value of 0, the colour will still be #ffffff. Same with a saturation of 100%, no difference. This is because saturation is a measure of colour intensity, not brightness/lightness.

What I would recommend in this case, is overriding the fg property via theme.colors in your config (see the readme for examples) with a darker colour. That should make it a bit easier on your eyes.

@231tr0n
Copy link
Author

231tr0n commented Oct 16, 2024

One last request I am also adding it here since I did not want to create new issue again.
So i have two splits open and in transparent mode there is really no way to tell which one I am currently in.
image
I have a suggestion here as well, Can the winbar of the current split be colored the same as tabline by default and the winbar of the non current split be set transparent.

@scottmckendry
Copy link
Owner

Also i just found this out like mini.completion uses the inbuilt completion popup which is completely transparent and looks like this. Are you fine with adding a background to the default completion popup.

As far as I'm aware, built-in completion use the Pmenu highlight group. So you could probably do something like this in your config to make it a solid colour:

            require("cyberdream").setup({
                theme = {
                    overrides = function(colours)
                        return {
                            Pmenu = { bg = colours.bg_solid },
                        }
                    end,
                },
            })

I have a suggestion here as well, Can the winbar of the current split be colored the same as tabline by default and the winbar of the non current split be set transparent.

I'm not sure what you're asking here. Can you provide a bit more information on what it is you want to achieve?

@231tr0n
Copy link
Author

231tr0n commented Oct 17, 2024

Also i just found this out like mini.completion uses the inbuilt completion popup which is completely transparent and looks like this. Are you fine with adding a background to the default completion popup.

As far as I'm aware, built-in completion use the Pmenu highlight group. So you could probably do something like this in your config to make it a solid colour:

            require("cyberdream").setup({
                theme = {
                    overrides = function(colours)
                        return {
                            Pmenu = { bg = colours.bg_solid },
                        }
                    end,
                },
            })

I have a suggestion here as well, Can the winbar of the current split be colored the same as tabline by default and the winbar of the non current split be set transparent.

I'm not sure what you're asking here. Can you provide a bit more information on what it is you want to achieve?

To brief up, there is no way currently to differentiate between a split which is active and split which is inactive without looking at the cursor. So my request is if there can be some differentiator to tell which split is active provided there are lot splits. One such thing could be the winbar.

@scottmckendry
Copy link
Owner

Thanks for the explanation. What plugin are you using in the winbar? Perhaps I could try and add support for it.

There are some plugins that already do similar things. Tint.nvim, for example.

@231tr0n
Copy link
Author

231tr0n commented Oct 17, 2024

Thanks for the explanation. What plugin are you using in the winbar? Perhaps I could try and add support for it.

There are some plugins that already do similar things. Tint.nvim, for example.

I meant highlighting Winbar and WinbarNC differently would do the job since most plugins just depend on those. I wrote custom winbar which shows symbols using trouble.nvim's statusline component.

@231tr0n
Copy link
Author

231tr0n commented Oct 17, 2024

Also like current mini.completion is not usable at all without this PMenu highlighting. Do you think a change to PMenu highlighting could be included when mini.completion is enabled or detected. I overrided the highlight as you mentioned but just wanted to what is your opinion on this.

@scottmckendry
Copy link
Owner

Also like current mini.completion is not usable at all without this PMenu highlighting. Do you think a change to PMenu highlighting could be included when mini.completion is enabled or detected. I overrided the highlight as you mentioned but just wanted to what is your opinion on this.

My preference is bordered windows over solid backgrounds. This is how I had configured nvim-cmp and is how I've configured blink.cmp (my current completion solution).

image

However, built-in completions don't currently support borders (see the mini.completion issue and the PR in nvim here). Hopefully, this will be available in a future release of neovim.

highlighting Winbar and WinbarNC differently

Done. I've changed the fg property of the current window's winbar. Probably not exactly what you were after but you can override to your heart's content in the same way you've overrriden Pmenu by setting WinBar and WinBarNC respectively.

@231tr0n
Copy link
Author

231tr0n commented Oct 17, 2024

Also like current mini.completion is not usable at all without this PMenu highlighting. Do you think a change to PMenu highlighting could be included when mini.completion is enabled or detected. I overrided the highlight as you mentioned but just wanted to what is your opinion on this.

My preference is bordered windows over solid backgrounds. This is how I had configured nvim-cmp and is how I've configured blink.cmp (my current completion solution).

image

However, built-in completions don't currently support borders (see the mini.completion issue and the PR in nvim here). Hopefully, this will be available in a future release of neovim.

highlighting Winbar and WinbarNC differently

Done. I've changed the fg property of the current window's winbar. Probably not exactly what you were after but you can override to your heart's content in the same way you've overrriden Pmenu by setting WinBar and WinBarNC respectively.

Hi i just tested these changes out, i meant not changing fg but bg of winbar and setting it to be the same as tabline bg. This way it becomes one way to differentiate is what i felt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants