WGSL syntax highlighting fix (#3996)

This commit is contained in:
Chickenkeeper 2022-09-30 23:43:07 +01:00 committed by GitHub
parent 8a7a6e4cff
commit 60aa7d3607
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 38 additions and 26 deletions

View file

@ -848,7 +848,7 @@ indent = { tab-width = 4, unit = " " }
[[grammar]] [[grammar]]
name = "wgsl" name = "wgsl"
source = { git = "https://github.com/szebniok/tree-sitter-wgsl", rev = "f00ff52251edbd58f4d39c9c3204383253032c11" } source = { git = "https://github.com/szebniok/tree-sitter-wgsl", rev = "272e89ef2aeac74178edb9db4a83c1ffef80a463" }
[[language]] [[language]]
name = "llvm" name = "llvm"

View file

@ -1,23 +1,41 @@
(const_literal) @constant.numeric (int_literal) @constant.numeric.integer
(float_literal) @constant.numeric.float
(bool_literal) @constant.builtin.boolean
(type_declaration) @type (global_constant_declaration) @variable
(global_variable_declaration) @variable
(compound_statement) @variable
(const_expression) @function
(variable_identifier_declaration
(identifier) @variable
(type_declaration) @type)
(function_declaration (function_declaration
(identifier) @function) (identifier) @function
(function_return_type_declaration
(type_declaration) @type))
(parameter
(variable_identifier_declaration
(identifier) @variable.parameter
(type_declaration) @type))
(struct_declaration (struct_declaration
(identifier) @type) (identifier) @type)
(struct_declaration
(struct_member
(variable_identifier_declaration
(identifier) @variable.other.member
(type_declaration) @type)))
(type_constructor_or_function_call_expression (type_constructor_or_function_call_expression
(type_declaration) @function) (type_declaration) @function)
(parameter
(variable_identifier_declaration (identifier) @variable.parameter))
[ [
"struct" "struct"
"bitcast" "bitcast"
; "block"
"discard" "discard"
"enable" "enable"
"fallthrough" "fallthrough"
@ -26,36 +44,28 @@
"private" "private"
"read" "read"
"read_write" "read_write"
"return"
"storage" "storage"
"type" "type"
"uniform" "uniform"
"var" "var"
"workgroup" "workgroup"
"write" "write"
"override"
(texel_format) (texel_format)
] @keyword ; TODO reserved keywords ] @keyword
[ "fn" @keyword.function
(true)
(false)
] @constant.builtin.boolean
[ "," "." ":" ";" ] @punctuation.delimiter "return" @keyword.control.return
;; brackets ["," "." ":" ";"] @punctuation.delimiter
[
"(" ["(" ")" "[" "]" "{" "}"] @punctuation.bracket
")"
"["
"]"
"{"
"}"
] @punctuation.bracket
[ [
"loop" "loop"
"for" "for"
"while"
"break" "break"
"continue" "continue"
"continuing" "continuing"
@ -64,7 +74,6 @@
[ [
"if" "if"
"else" "else"
"elseif"
"switch" "switch"
"case" "case"
"default" "default"
@ -92,10 +101,13 @@
"*" "*"
"~" "~"
"^" "^"
"@"
"++"
"--"
] @operator ] @operator
(attribute (attribute
(identifier) @variable.other.member) (identifier) @attribute)
(comment) @comment (comment) @comment