sainnhe / gruvbox-material

Gruvbox with Material Palette
MIT License
1.83k stars 164 forks source link

Add support for Neovim's native LSP semantic tokens #162

Closed nabaco closed 1 year ago

nabaco commented 1 year ago

This adds proper highlighting to Neovim's native LSP client semantic tokens. Tested with theHamsta/nvim-semantic-tokens. Need to test with https://github.com/neovim/neovim/pull/21100 in Neovim Nightly.

jdrouhard commented 1 year ago

This doesn't actually work with native LSP--the groups added in this PR were for the old plugin which is deprecated. New built-in support uses @token syntax.

antoineco commented 1 year ago

@jdrouhard is there any difference between Treesitter groups and LSP groups?

Regardless, I think we can keep those around until Neovim 0.9 gets released.

jdrouhard commented 1 year ago

They follow the same format and largely intersect, but there are some that are specific to LSP.

https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_semanticTokens

The token types and modifiers are applied directly as highlight groups prepended with @ in the current implementation.