Conversation
fix: unify heading colors across markup Use the same defined heading colors for markdown and HTML, and what ever else might need headings down the line fix: render-markdown heading background It will link to `diffRemoved`, which only has `fg` defined, which in turn would result in headings below a certain level would be red. I don't know the rationale linking it to `diffRemoved`, maybe its common to add a background to those groups, i do not know. In lue of colored background shades I set it to `xgray1`, to simulate the effect I see in `render-markdown` `readme` screenshots.
Instead of coloring directly link to types, this is so to enforce some consistency between file types.
New group introduced that wasn't in sneak previously `SneakCurrent`, I linked it to Search. I don't see any need to differentiate current and other, cursor is already quite visible when using sneak, and if enabling `set cursorline`, it's even more so.
Too much blue
Found 2 to be a bit too bright
Matches macro, which I think is appropriate
Remove function link, as its linked to function already
Keeping the underline, but differentate from normal text
For consistency, it was blue, not sure about what tree of links got it there, but it was to much, while bright_white is too little.
fix: add legacy diff groups fix: unify legacy and current diff groups
style: change todo to bright orange style: set Label to bright red
String is bright green, feels more consistent
Had issues with colors being wrong in nvimpager for certain output, took some serious digging to find any reference to these groups, and the names are a bit odd, I checked the source and they are generated with those names, but I'm worried it'll break, or additional groups are needed.
Commented out groups I suspect aren't needed, but mainly moved stuff around so it made a bit more sense, named sections and not so much deeply nested folds. 1 level is enough IMO. This is a larger effort to normalize the theme any rely on base language groups for most syntax highlighting, making treesitter and regex similar if not exactly the same.
The goal of this commit is to normalize all language hi groups. Instead of specifying a color for each hi group, rely on defaults, or link to base language groups. This makes for easier maintenance, and more consistent colors. Keyword is keyword in any language that links to keyword. I've left links to basegroups if they were present before this refactor, else I've tried to include sane links, but there will be large differences from previous versions
This is a bad idea, when inspecting a hl group in nvim, it'll say that it links to that group, which tells me nothing. For example, I'm investigating why a certain word in a certain language looks the way it looks, then inspecting the word, it'll say its linked to SrceryRed, which is meaningless, I don't actually know which of the base groups are being referenced, it would be any of those having SrceryRed as a base color. I fixed the lightline theme as well because it referenced the same groups. We maintain global variables for color hexes, and the termcolors are always the same so I just referenced those instead.
Additionally remove reference comments from previous refactors
Setting type to italic by default, don't see a need to optionally set this, we already have an italic toggle, and that should cover this as well.
I think these mostly have been added so that we can reach the special attr (bold, italic etc), but none is the correct way of getting to those arguments There are UI elements that have background set, not gonna touch those for now.
Try to be consistent with ordering, function calls on top, links on bottom. Sorted.
Dont need these, it should have sensible defaults and use basegroups
The inverse options were getting confusing, use instead one var to control whether inverse is used or not. Ad BREAKING CHANGE: Removes options srcery_inverse_matches, srcery_inverse_match_paren.
This only works in regular vim, not nvim, so for the sake of consistency lets keep it the same across envs BREAKING CHANGE: Removes the srcery_hard_black_terminal_bg
The functionality has been removed in a prev commit, this removes the non-functioning opt
Dark_blue is not in the json palette yet, or at least not in any published version of it yet
Update popups, window borders and tabline colors style: match tabline colors with status style: change win split to gray4 bright white is a bit much, possibly add some opts for this style: increase popup contrast
Previous implementation colored the foreground of diffs, and didn't make it clear where the changes was. This uses the new dark and dim colors to improve diff readability, especially word diff
docs: add screenshots table Created new screenshots the presents a bit better, trying to showcase as many features as I can docs: wrap install instructions in details Users probably only need one of them, and it cleans up the readme a bit docs: rearrange headlines docs: add tip about transparent background Just now confirmed it does work, not sure if every UI element is accounted for, some maybe should be transparent but isn't.
My kitty term doesn't export TERM_ITALICS, and most terminal emulators ive ever used, even back in the xorg days supports italic, not sure if there is a reliable way to check for this in every terminal, and if we even should. Leave it as a user preference.
docs: reformat statusline instructions Considering making it even simpler as two of the three statusline plugins load the theme automatically. I also fixed a few typos and formatting issues docs: simplify and add screenshot to statusline Felt folds got a need unnecessary, as there is just one statusline that needs configuration, the others load automatically. docs: add vim.pack instructions docs: format table, update use instructions I feel setting the var like this is slightly more idiomatic, and less confusing. Add some text formatting to table, shame I cant get undercurl.
This is an xterm color at index 30, and it isn't used anywhere in the theme yet, but it is defined in the palette package, and is used some other places where extra colors are needed (ls colors for example, where teal typically signify a directory)
Handy with a full list, but keep it hidden by default
Leave pmenu as is, NormalFloat was to bright, but the pmenu need to stick out a bit more.
Match md readme with some rewritten sections docs: update vim help file, add introduction docs: add statusline section docs: fix alignment, headings, modeline docs: fix local-additions entry :help help-writing states that this should be srcery.txt + description check :help local-entries docs(modeline): rm dup, unneeded opts not sure why norl is there, the :help help-writing says it should just be filetype, textwidth and tabstop, I left noet because seems like tab is a thing in help syntax docs: rename heading + realign docs: fix heading
This was referenced May 6, 2026
Closed
MindTooth
previously approved these changes
May 6, 2026
MindTooth
left a comment
Member
There was a problem hiding this comment.
Cool, cool. 🥳 Used cliff in the past. Really nice. Which plugin shows icon/syntax in Markdown ```?
Really, really nice job!
Member
|
Recommend https://github.com/crate-ci/typos to catch some typos.
|
Member
Author
|
Thanks! 🙂 The plugin is render-markdown.nvim |
Member
Author
|
I did a final test to ensure that all options are working as expected, fixed the typos. I think we're good for a merge? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Srcery Next (v3.0.0)
This PR aims to enhance compatibility with modern (neo)vim features, normalize syntax colors across languages and parsers. It also include color changes, including a new background color.
To get this fully merged, we also need to merge the next branch in srcery-terminal.
Change log
Generated a CHANGELOG using gif cliff, check each SHA for detailed comments.
🚀 Features
🐛 Bug Fixes
🚜 Refactor
📚 Documentation
🎨 Styling
⚙️ Miscellaneous Tasks
Breaking Changes
See README or or
:help srceryfor usage instructions for the new variables.srcery_bgrenamed tosrcery_backgroundand now behaves like other color variables — set to'NONE'for transparent backgrounds. (4fb8f3e)srcery_hard_black_terminal_bg: this option only worked in regular Vim, not Neovim. (64736d7)srcery_inverse_matchesandsrcery_inverse_match_parenin favor of a single inverse toggle. (6d401e4)Screenshots