Skip to content

Commit 63105c7

Browse files
Support semantic tokens protocol (#1721)
* [WIP] Add rudimentary semanticTokens support * Use buffer-local advice * Don't request semantic tokens if unsupported * Use lsp-feature? to detect semanticTokens support * Prevent out-of-bounds access * Update semantic highlighting docstrings * [untested] Add support for token modifiers clangd returns tokenModifiers = [], so I'll need another language server to test this against. There's a new defcustom to enable/disable modifier highlighting that defaults to disabled for the time being * Add some token types defined by clangd * Mention semantic tokens support in readme * Remove leftover `append' * Remove unused variables * Fix several issues raised by @yyoncho
1 parent c0a7316 commit 63105c7

File tree

2 files changed

+317
-28
lines changed

2 files changed

+317
-28
lines changed

README.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,7 @@ most popular Emacs packages like `company`, `flycheck` and `projectile`.
6464
- Ivy integration - [lsp-ivy](https://github.com/emacs-lsp/lsp-ivy/)
6565
- Treemacs integration -
6666
[lsp-treemacs](https://github.com/emacs-lsp/lsp-treemacs)
67-
- Semantic highlighting (as currently implemented by JDT LS and
68-
unreleased builds of clangd, cf. [Semantic highlighting
69-
spec](https://github.com/microsoft/vscode-languageserver-node/pull/367))
67+
- Semantic highlighting (using either the theia semantic highlighting protocol as implemented by JDT LS and some versions of clangd, or the semantic tokens protocol defined by LSP 3.16)
7068
- [which-key](https://github.com/justbur/emacs-which-key/) integration
7169
for better discovery
7270

0 commit comments

Comments
 (0)