microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
164.81k stars 29.49k forks source link

Consider finding a new Ruby syntax highlighting grammar. #225195

Open kzvi opened 3 months ago

kzvi commented 3 months ago

Type: Bug

This Ruby source:

%(
    {
    }
    2 + 2
)

is one single string literal, but for some reason the 2 + 2 gets highlighted as code.

Screenshot 2024-08-08 at 5 44 51 PM

For some reason having a } in a string literal seems to break the syntax highlighting.

Additionally, this Ruby source:

%q(
    2 + 2
)

is also one single string literal, but doesn't get highlighted as a string at all.

Screenshot 2024-08-08 at 5 45 14 PM

VS Code version: Code 1.92.0 (Universal) (b1c0a14de1414fcdaa400695b4db1c0799bc3124, 2024-07-31T23:26:45.634Z) OS version: Darwin arm64 22.6.0 Modes:

System Info |Item|Value| |---|---| |CPUs|Apple M1 (8 x 2400)| |GPU Status|2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off| |Load (avg)|1, 2, 2| |Memory (System)|16.00GB (0.23GB free)| |Process Argv|--crash-reporter-id 9ea15b58-b6bf-429d-ac9e-a8b8b73c613d| |Screen Reader|no| |VM|0%|
Extensions (3) Extension|Author (truncated)|Version ---|---|--- codespaces|Git|1.17.2 cron-tasks|zok|0.1.2 sync-settings|zok|0.16.0 (1 theme extensions excluded)
A/B Experiments ``` vsliv368cf:30146710 vspor879:30202332 vspor708:30202333 vspor363:30204092 vscod805cf:30301675 binariesv615:30325510 vsaa593cf:30376535 py29gd2263:31024239 c4g48928:30535728 azure-dev_surveyone:30548225 vscrpc:30673769 a9j8j154:30646983 962ge761:30959799 pythongtdpath:30769146 welcomedialogc:30910334 pythonnoceb:30805159 asynctok:30898717 pythonregdiag2:30936856 pythonmypyd1:30879173 h48ei257:31000450 pythontbext0:30879054 accentitlementst:30995554 dsvsc016:30899300 dsvsc017:30899301 dsvsc018:30899302 cppperfnew:31000557 dsvsc020:30976470 pythonait:31006305 dsvsc021:30996838 9c06g630:31013171 pythoncenvpt:31062603 a69g1124:31058053 dvdeprecation:31068756 dwnewjupytercf:31046870 newcmakeconfigv2:31071590 impr_priority:31102340 refactort:31108082 pythonrstrctxt:31112756 wkspc-onlycs-t:31111718 ```
vs-code-engineering[bot] commented 3 months ago

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.92.1. Please try upgrading to the latest version and checking whether this issue remains.

Happy Coding!

alexr00 commented 2 months ago

Looks like the } is ending the string, even though it doesn't match the opening (. Repurposing this issue to consider finding a new Ruby grammar. I'll investigate in October.