-
-
Notifications
You must be signed in to change notification settings - Fork 414
Description
Is your enhancement request related to a problem? Please describe.
First of all, thank you @soulomoon for implementating fantastic support for semantic tokens! I've long been waiting for this feature 🎉
After the release of 2.6.0.0, I've just tested it and looks really good. I think it will become even better if one can tell (possibly partially-applied) infix operators from ordinary variable/functions semantically.
For example, the image below is what I apply One Monokai + Semantic Tokens to the code fragments containing several ($)s:
In above, functions being applied and ($)s are all coloured homogeneously. Without semantic colouring, OTOH, we got:
I think the latter case gives more legible highlighting - binary operator shines between functions.
Describe the solution you'd like
Add something like TBinaryOperator constructor to HsSemanticTokenType, map its default to operator token, and also allowing users to map them to what they like (as we already did for haskell.plugin.semanticTokens.config.dataConstructorToken etc).
Describe alternatives you've considered
Perhaps, as we have already done to plain symbols, there can be TBinaryFunction and TBinaryVariable, as the function declaration can take its argument in infix-form.

