microsoft / microsoft/TypeScript-TmLanguage
TypeScript's const modifier on type parameteres breaks syntax highlighting in `.tsx` files
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 471
- Forks
- 149
- PR merge metrics
- No merged PRs in 30d
Description
Type: Bug
- Create a file
repro.ts. - Paste the code below.
- See that the syntax highlighting works fine.
- Change the extension to
.tsx. - See that the syntax highlighting is broken.
export const always = <const T,>(value: T) => {
return () => value
}
repro.ts:
repro.tsx:
Context: https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/#const-type-parameters
VS Code version: Code - Insiders 1.78.0-insider (Universal) (e410e7c66e7ce5c6bc31f73150d66857804a0ee9, 2023-04-28T12:31:32.032Z)
OS version: Darwin arm64 22.3.0
Modes:
Sandboxed: Yes
System Info
| Item | Value |
|---|---|
| CPUs | Apple M1 (8 x 24) |
| GPU Status | 2d_canvas: enabled canvas_oop_rasterization: disabled_off direct_rendering_display_compositor: disabled_off_ok gpu_compositing: enabled metal: disabled_off multiple_raster_threads: enabled_on opengl: enabled_on rasterization: enabled raw_draw: disabled_off_ok video_decode: enabled video_encode: enabled vulkan: disabled_off webgl: enabled webgl2: enabled webgpu: enabled |
| Load (avg) | 3, 3, 3 |
| Memory (System) | 8.00GB (0.13GB free) |
| Process Argv | |
| Screen Reader | no |
| VM | 0% |
A/B Experiments
vsliv695:30137379
vsins829:30139715
vsliv368cf:30146710
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
pythontb:30258533
vsc_aacf:30263846
pythonptprofiler:30281269
vshan820:30294714
pythondataviewer:30285072
vscod805:30301674
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593:30376534
pythonvs932:30404738
cppdebug:30492333
vsclangdf:30492506
c4g48928:30535728
dsvsc012cf:30540253
pynewext54:30618038
pylantcb52:30590116
nodejswelcome1:30587009
pyind779:30611226
pythonsymbol12:30651887
2i9eh265:30646982
6233i204:30725950
azdwalk:30721579
pythonms35:30671666
03d35959:30680466
24365598:30687740
pythonfmttext:30716741
pythoncmvfstr:30726892
fixshowwlkth:30724385
showsbindicator:30724477
pythongtdpath:30726887
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the provided generic function in both .ts and .tsx files, then inspect the TypeScript TextMate grammar files in this repository. Compare how the grammar tokenizes the const type parameter in each extension; done means the .tsx example receives syntax highlighting consistent with the .ts version.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 45/100