magic-racket
magic-racket copied to clipboard
Comments inside expressions aren't highlighted like DrRacket
Environment
- OS: macOS
- OS Version: Big Sur
- VS Code Version: 1.63.2
- Racket version: 8.3
- Racket Langserver checksum: a1141f0871a55c036949d0bb0179fddbf86a97cd
- Magic Racket version: 0.6.3
Expected
The inline comments should use comment colouring, while the struct fields should have another colour, similar to how they are in DrRacket:

Actual
The struct fields and comments are the same colour:

Example file
#lang racket/base
(struct readtable (symbol-parser ; parser for default token handling: symbol-or-number
;; The character table maps characters to either a
;; parsing function or another character whose
;; default to use
char-ht
;; The dispatch table maps character for `#` dispatch
dispatch-ht
;; The delimiter table maps a character to 'delimit,
;; 'no-delimit, or a character whose default to use;
;; absence of a mapping is the default for that character
delimiter-ht)
#:property prop:readtable #t
#:authentic)
I'm happy to attempt a fix here, though https://github.com/Eugleo/magic-racket/pull/53 is in the same area (syntax) and has been open for a while...
Hey, I'm actually happy to merge syntax-related PRs; until I or @dannypsnl come up with an automated way to generate the .json
syntax files, just make the changes both in the .yaml
and in the tmLanguge.json
. It is actually possible to just convert the yaml file to json with an online converted, although it is a bit dirty, it works.
Would you like to mention which online converter? I just find the YAML might be invalid:
import yaml
with open('src/racket.yaml') as f:
data = yaml.load(f, Loader=yaml.FullLoader)
print(data)
# yaml.scanner.ScannerError: while scanning a double-quoted scalar
# in "src/racket.yaml", line 1053, column 16
# found unknown escape character '['
# in "src/racket.yaml", line 1053, column 27
#lang racket
(require yaml)
(read-yaml (open-input-file "src/racket.yaml"))
; racket.yaml:1052:26: while scanning a double-quoted scalar;
; found unknown escape character [