{ "scopeName": "source.gdresource", "uuid": "e076faa2-3c52-42fa-a8e6-9a7c453c1a5b", "patterns": [ { "include": "#embedded_shader" }, { "include": "#embedded_gdscript" }, { "include": "#comment" }, { "include": "#heading" }, { "include": "#key_value" } ], "repository": { "comment": { "captures": { "1": { "name": "punctuation.definition.comment.gdresource" } }, "match": "(;).*$\\n?", "name": "comment.line.gdresource" }, "embedded_shader": { "name": "meta.embedded.block.gdshader", "begin": "(code) = \"", "end": "\"", "beginCaptures": { "1": { "name": "variable.other.property.gdresource" } }, "patterns": [ { "include": "source.gdshader" } ] }, "embedded_gdscript": { "comment": "meta.embedded.block.gdscript", "begin": "(script/source) = \"", "end": "\"", "beginCaptures": { "1": { "name": "variable.other.property.gdresource" } }, "patterns": [ { "include": "source.gdscript" } ] }, "heading": { "begin": "\\[([a-z_]*)\\s?", "beginCaptures": { "1": { "name": "keyword.control.gdresource" } }, "end": "\\]", "patterns": [ { "include": "#heading_properties" }, { "include": "#data" } ] }, "heading_properties": { "patterns": [ { "name": "invalid.deprecated.noValue.gdresource", "match": "(\\s*[A-Za-z_\\-][A-Za-z0-9_\\-]*\\s*=)(?=\\s*$)" }, { "begin": "\\s*([A-Za-z_-][^\\s]*|\".+\"|'.+'|[0-9]+)\\s*(=)\\s*", "beginCaptures": { "1": { "name": "variable.other.property.gdresource" }, "2": { "name": "punctuation.definition.keyValue.gdresource" } }, "end": "($|(?==)|\\,?|\\s*(?=\\}))", "patterns": [ { "include": "#data" } ] } ] }, "key_value": { "patterns": [ { "name": "invalid.deprecated.noValue.gdresource", "match": "(\\s*[A-Za-z_\\-][A-Za-z0-9_\\-]*\\s*=)(?=\\s*$)" }, { "begin": "\\s*([A-Za-z_-][^\\s]*|\".+\"|'.+'|[0-9]+)\\s*(=)\\s*", "beginCaptures": { "1": { "name": "variable.other.property.gdresource" }, "2": { "name": "punctuation.definition.keyValue.gdresource" } }, "end": "($|(?==)|\\,|\\s*(?=\\}))", "patterns": [ { "include": "#data" } ] } ] }, "data": { "patterns": [ { "include": "#comment" }, { "begin": "(?