Racket: Mark all quoted symbols as @symbol #5376
Open
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.
I've noticed that Neovim does not distinguish quoted and unquoted lists and highlights them the same.
For example,
(a b c)
is a list that can be evaluated as a function call toa
withb
andc
as arguments. But'(a b c)
is a list of the symbolsa
,b
, andc
, not evaluated, just data.How it looks now:
How it will look with this PR:
As you may note, this PR doesn't fix highlighting inside
(quote (a b c))
- this requires a minor change to the racket treesitter parser and will be implemented separately.Important disclaimer: I am not a Racket expert, so it's possible that I understand
quote
semantics incorrectly. I've tried to look at how other editors highlight such code (Emacs, VS Code, Sublime Text, Helix), but they either do not highlight quotes at all, or highlight them approximately the same as Neovim now.