-
-
Notifications
You must be signed in to change notification settings - Fork 129
How to setup diff view colorscheme like the one in the readme (the screenshot)? #546
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
Comments
I am also curious about the specific values set for the fg/bg of the highlight group. I'm currently setting them in the diff_buf_win_enter hook but cannot get the values to match. |
@gaoxiaoliangz I was able to figure it out. The example in the screenshot is just using the existing hl group provided by the tokyonight theme (I believe the 'night' variation specifically). In my case, I was already using this theme but the hl groups and a few other background-related colors were not showing up right due to my use of tmux. If that's what's happening to you, try disabling tmux and viewing the diff. |
Thanks for opening this, I was wondering the same thing. I use gruvbox, but want to figure out how to get those fancy empty line symbols. Mine show up as ugly -----! |
@jamesgour You can try this |
Thanks @gaoxiaoliangz, that's pretty close! Doesn't look exact on my terminal but maybe it's because I'm using Wezterm :D |
Hey! Based on @jdela22 comments above, I manually changed my colors to follow the vim.api.nvim_set_hl(0, "DiffAdd", {bg = "#20303b"})
vim.api.nvim_set_hl(0, "DiffDelete", {bg = "#37222c"})
vim.api.nvim_set_hl(0, "DiffChange", {bg = "#1f2231"})
vim.api.nvim_set_hl(0, "DiffText", {bg = "#394b70"}) Just posting it here as a reference if anyone want to copy paste! |
This is what I have in my highlights configuration: vim.api.nvim_set_hl(0, 'DiffAdd', { bg = '#34462F' })
vim.api.nvim_set_hl(0, 'DiffDelete', { bg = '#462F2F' })
vim.api.nvim_set_hl(0, 'DiffChange', { bg = '#2F4146' })
vim.api.nvim_set_hl(0, 'DiffText', { bg = '#463C2F' })
vim.api.nvim_set_hl(0, 'DiffAdded', { fg = colors[3], bold = true })
vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = colors[2], bold = true })
vim.api.nvim_set_hl(0, 'DiffChanged', { fg = colors[4], bold = true })
vim.api.nvim_set_hl(0, 'DiffviewWinSeparator', { fg = colors[9] })
vim.api.nvim_set_hl(0, 'DiffviewDiffDelete', { fg = colors[9] })
vim.api.nvim_set_hl(0, 'DiffviewFilePanelSelected', { fg = colors[6] })
vim.api.nvim_set_hl(0, 'DiffviewStatusAdded', { fg = colors[3], bold = true })
vim.api.nvim_set_hl(0, 'DiffviewStatusUntracked', { fg = colors[8], bold = true })
vim.api.nvim_set_hl(0, 'DiffviewStatusModified', { fg = colors[4], bold = true })
vim.api.nvim_set_hl(0, 'DiffviewStatusRenamed', { fg = colors[3], bold = true })
vim.api.nvim_set_hl(0, 'DiffviewStatusDeleted', { fg = colors[2], bold = true })
vim.api.nvim_set_hl(0, 'DiffviewStatusIgnored', { fg = colors[9], bold = true }) |
These are not the colors from the image tho... But also nice. |
Based on sindrets/diffview.nvim#546 at the very moment there's no way to customize the diffs especially in conflicted files. Yes, there's plugin called https://github.com/akinsho/git-conflict.nvim to help highlighting conflict blocks but it superseeded by the `diffview.nvim`
Based on these lines diffview.nvim/lua/diffview/hl.lua Lines 465 to 468 in 4516612
I believe, it should be possible to customize this way vim.api.nvim_set_hl(0, 'DiffAdd', { ... })
vim.api.nvim_set_hl(0, 'DiffDelete', { ... })
vim.api.nvim_set_hl(0, 'DiffChange', { ... })
vim.api.nvim_set_hl(0, 'DiffText', { ... }) or you might try vim.api.nvim_set_hl(0, 'DiffviewDiffAdd', { ... })
vim.api.nvim_set_hl(0, 'DiffviewDiffDelete', { ... })
vim.api.nvim_set_hl(0, 'DiffviewDiffChange', { ... })
vim.api.nvim_set_hl(0, 'DiffviewDiffText', { ... }) |
Uh oh!
There was an error while loading. Please reload this page.
I know it's not an issue of the project, but I really can't find any place to discuss this. The diff view in the screen shot looks really cool.
Especially the diff color schemes.
vim diff highlight groups are DiffAdd, DiffDelete, DiffChange and DiffText. And I noticed that in the screenshot, the DiffAdd are rendered as red on the left, just like what vscode does. On the right side it's bluish.
Is there any config reference you can provide, so that I can achieve the same diff color scheme?
The text was updated successfully, but these errors were encountered: