diff --git a/crates/grammars/src/javascript/injections.scm b/crates/grammars/src/javascript/injections.scm index 8ccfc5028d..9d07511f95 100644 --- a/crates/grammars/src/javascript/injections.scm +++ b/crates/grammars/src/javascript/injections.scm @@ -142,3 +142,25 @@ ]) (#match? @_ecma_comment "^\\/\\*\\s*(css)\\s*\\*\\/") (#set! injection.language "css")) + +; '/* glsl */' or '/*glsl*/' +(((comment) @_ecma_comment + [ + (string + (string_fragment) @injection.content) + (template_string + (string_fragment) @injection.content) + ]) + (#match? @_ecma_comment "^\\/\\*\\s*glsl\\s*\\*\\/") + (#set! injection.language "glsl")) + +; '/* wgsl */' or '/*wgsl*/' +(((comment) @_ecma_comment + [ + (string + (string_fragment) @injection.content) + (template_string + (string_fragment) @injection.content) + ]) + (#match? @_ecma_comment "^\\/\\*\\s*wgsl\\s*\\*\\/") + (#set! injection.language "WGSL/WESL")) diff --git a/crates/grammars/src/typescript/injections.scm b/crates/grammars/src/typescript/injections.scm index a8cf9a41b5..19ffe69791 100644 --- a/crates/grammars/src/typescript/injections.scm +++ b/crates/grammars/src/typescript/injections.scm @@ -197,3 +197,25 @@ ]) (#match? @_ecma_comment "^\\/\\*\\s*(css)\\s*\\*\\/") (#set! injection.language "css")) + +; '/* glsl */' or '/*glsl*/' +(((comment) @_ecma_comment + [ + (string + (string_fragment) @injection.content) + (template_string + (string_fragment) @injection.content) + ]) + (#match? @_ecma_comment "^\\/\\*\\s*glsl\\s*\\*\\/") + (#set! injection.language "glsl")) + +; '/* wgsl */' or '/*wgsl*/' +(((comment) @_ecma_comment + [ + (string + (string_fragment) @injection.content) + (template_string + (string_fragment) @injection.content) + ]) + (#match? @_ecma_comment "^\\/\\*\\s*wgsl\\s*\\*\\/") + (#set! injection.language "WGSL/WESL"))