{"name":"Rez","scopeName":"source.rez","patterns":[{"name":"comment.block.rez","begin":"/\\*","end":"\\*/","captures":{"0":{"name":"punctuation.definition.comment.rez"}}},{"begin":"(^[ \\t]+)?(?=//)","end":"(?!\\G)","patterns":[{"name":"comment.line.double-slash.rez","begin":"//","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.rez"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.rez"}}},{"name":"keyword.control.rez","match":"\\b(?i:(change|data|delete|include|read|resource))\\b"},{"name":"storage.type.rez","match":"\\b(?i:(align|array|binary|bit|bitstring|boolean|byte|case|char|cstring|decimal|enum|fill|hex|integer|key|literal|long|longint|nibble|octal|optional|point|pstring|rect|reversebytes|string|switch|unsigned|wide|word|wstring))\\b"},{"name":"keyword.other.attributes.rez","match":"\\b(?i:(appheap|locked|nonpurgeable|purgeable|sysheap|unlocked))\\b"},{"name":"support.function.built-in.rez","match":"(\\$\\$)(?i:(ArrayIndex|Attributes|BitField|Byte|CountOf|Date|Day|Format|Hour|ID|Long|Minute|Month|Name|OptionalCount|PackedSize|Read|Resource|ResourceSize|Second|Shell|Time|Type|Version|Weekday|Word|Year))","captures":{"1":{"name":"punctuation.definition.function.rez"}}},{"name":"constant.numeric.rez","match":"\\b(((0(x|X|B))[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)\\b"},{"name":"constant.numeric.hex.rez","match":"\\$[0-9a-fA-F]+?\\b"},{"name":"string.quoted.double.rez","begin":"\"","end":"\"","patterns":[{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.rez"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.rez"}}},{"name":"string.quoted.single.rez","begin":"'","end":"'","patterns":[{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.rez"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.rez"}}},{"name":"string.quoted.other.hex.rez","begin":"\\$\"","end":"\"","patterns":[{"include":"#escaped_char"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.rez"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.rez"}}},{"name":"meta.preprocessor.rez","match":"^\\s*(#)\\s*(?i:(defined|else|elif|endif|if|ifdef|ifndef|include|line|printf|undef))\\b","captures":{"1":{"name":"punctuation.definition.preprocessor.rez"},"2":{"name":"keyword.control.import.rez"}}},{"name":"meta.preprocessor.define.rez","match":"^\\s*(#)\\s*(?i:(define))\\s+([_A-Za-z][_A-Za-z0-9]+)","captures":{"1":{"name":"punctuation.definition.preprocessor.rez"},"2":{"name":"keyword.control.import.rez"},"3":{"name":"entity.name.function.define.rez"}}},{"name":"meta.type.rez","match":"\\b(?i:(type|resource))\\s+([_A-Za-z][_A-Za-z0-9]+|(0x|\\$)[A-Fa-f0-9]+|[0-9]+|'[^']{1,4}')","captures":{"1":{"name":"keyword.control.rez"},"2":{"name":"entity.name.function.rez"}}}],"repository":{"escaped_char":{"name":"constant.character.escape.rez","match":"\\\\."}}}