-
Notifications
You must be signed in to change notification settings - Fork 4
Description
Description of the problem
Hello there, I've been poking around at geany and it seems like a pretty nifty editor. However, I noticed that there doesn't seem to be any way to define color customizations for individual LSP-provided tokens.
Though you can whitelist tokens with the semantic_tokens_types and define a color with semantic_tokens_type_style, the latter configuration option appears to blanketly highlight all semantic tokens with the same color, which isn't exactly what I'm looking for.
Feature request
I would like the ability to customize the color for each allowed semantic token type in a similar manner to how the semantic_tokens_type_style option works, but with the ability to define a style for each individual token.
This would allow much more thorough customization of what each semantic token looks like in the editor, and would sidestep the need to write an entirely new custom lexer when the LSP highlighting is readily available.
Alternatives I've tried
I poked around quite a bit with the built-in lexers that provide basic syntactical analysis of the file, but the granularity just isn't there.
I even tried defining some of the semantic tokens in the color/file type configs, but nothing works. All allowed semantic tokens are just colored by a single semantic color. :/
My goal is to use this for C#, and it actually works fairly well with csharp-ls, however I'm one of those big babies coming from VSCode, and I have a very particular highlighting setup that jives with my mind. :P
I specifically want to customize the way struct is colored separately from class, and I want to change the way enum is colored separately from enumMember. Generalized semantic token color customization would solve this nicely.
Geany has somewhat surprised me with how competitive it is with other types of editors given that it came out while I was in kindergarten, and having granular customization of semantic coloring from the LSP would go a long way into making it all that much more of a real alternative to most other modern editors.