grammars/source.zeek.json in github-linguist-7.11.1 vs grammars/source.zeek.json in github-linguist-7.12.0
- old
+ new
@@ -1,412 +2 @@
-{
- "name": "Zeek",
- "scopeName": "source.zeek",
- "patterns": [
- {
- "name": "comment.line.zeek",
- "begin": "(##!|##\u003c|##|#)",
- "end": "$",
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.comment.zeek"
- }
- }
- },
- {
- "name": "string.quoted.double.zeek",
- "begin": "(\\\")",
- "end": "(\\\")",
- "patterns": [
- {
- "name": "constant.character.escape.zeek",
- "match": "\\\\."
- },
- {
- "name": "constant.other.placeholder.zeek",
- "match": "%-?[0-9]*(\\.[0-9]+)?[DTdxsefg]"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.string.begin.zeek"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.string.end.zeek"
- }
- }
- },
- {
- "name": "string.regexp.zeek",
- "begin": "(/)(?=.*/)",
- "end": "(/)",
- "patterns": [
- {
- "name": "constant.character.escape.zeek",
- "match": "\\\\."
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.string.begin.zeek"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.string.end.zeek"
- }
- }
- },
- {
- "name": "meta.preprocessor.zeek",
- "match": "(@(load-plugin|load-sigs|load|unload)).*$",
- "captures": {
- "1": {
- "name": "keyword.other.zeek"
- }
- }
- },
- {
- "name": "meta.preprocessor.zeek",
- "match": "(@(DEBUG|DIR|FILENAME|deprecated|if|ifdef|ifndef|else|endif))",
- "captures": {
- "1": {
- "name": "keyword.other.zeek"
- }
- }
- },
- {
- "name": "meta.preprocessor.zeek",
- "match": "(@prefixes)\\s*(\\+?=).*$",
- "captures": {
- "1": {
- "name": "keyword.other.zeek"
- },
- "2": {
- "name": "keyword.operator.zeek"
- }
- }
- },
- {
- "name": "storage.modifier.attribute.zeek",
- "match": "\\\u0026\\b(redef|priority|log|optional|default|add_func|delete_func|expire_func|read_expire|write_expire|create_expire|synchronized|persistent|rotate_interval|rotate_size|encrypt|raw_output|mergeable|error_handler|type_column|deprecated)\\b"
- },
- {
- "name": "constant.language.zeek",
- "match": "\\b(T|F)\\b"
- },
- {
- "name": "constant.numeric.port.zeek",
- "match": "\\b\\d{1,5}/(udp|tcp|icmp|unknown)\\b"
- },
- {
- "name": "constant.numeric.addr.zeek",
- "match": "\\b(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\b"
- },
- {
- "name": "constant.numeric.addr.zeek",
- "match": "\\[([0-9a-fA-F]{0,4}:){2,7}([0-9a-fA-F]{0,4})?((25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2}))?\\]"
- },
- {
- "name": "constant.numeric.float.decimal.interval.zeek",
- "match": "(((?:(\\d*\\.\\d*)([eE][+-]?\\d+)?)|(?:(\\d*)([eE][+-]?\\d+))|(?:(\\d*\\.\\d*)))|\\d+)\\s*(day|hr|min|msec|usec|sec)s?"
- },
- {
- "name": "constant.numeric.float.decimal.zeek",
- "match": "((?:(\\d*\\.\\d*)([eE][+-]?\\d+)?)|(?:(\\d*)([eE][+-]?\\d+))|(?:(\\d*\\.\\d*)))"
- },
- {
- "name": "constant.numeric.hostname.zeek",
- "match": "\\b(([A-Za-z0-9][A-Za-z0-9\\-]*)(?:\\.([A-Za-z0-9][A-Za-z0-9\\-]*))+)\\b"
- },
- {
- "name": "constant.numeric.integer.hexadecimal.zeek",
- "match": "\\b(0x[0-9a-fA-F]+)\\b"
- },
- {
- "name": "constant.numeric.integer.decimal.zeek",
- "match": "\\b(\\d+)\\b"
- },
- {
- "name": "keyword.operator.zeek",
- "match": "(==)|(!=)|(\u003c=)|(\u003c)|(\u003e=)|(\u003e)"
- },
- {
- "name": "keyword.operator.zeek",
- "match": "(\u0026\u0026)|(||)|(!)"
- },
- {
- "name": "keyword.operator.zeek",
- "match": "(=)|(\\+=)|(-=)"
- },
- {
- "name": "keyword.operator.zeek",
- "match": "(\\+\\+)|(\\+)|(--)|(-)|(\\*)|(/)|(%)"
- },
- {
- "name": "keyword.operator.zeek",
- "match": "(\u0026)|(\\|)|(\\^)|(~)"
- },
- {
- "name": "keyword.operator.zeek",
- "match": "\\b(in|as|is)\\b"
- },
- {
- "name": "punctuation.terminator.zeek",
- "match": ";"
- },
- {
- "name": "punctuation.accessor.zeek",
- "match": "\\??\\$"
- },
- {
- "name": "punctuation.accessor.zeek",
- "match": "::"
- },
- {
- "name": "keyword.operator.zeek",
- "match": "(\\?)"
- },
- {
- "name": "punctuation.separator.zeek",
- "match": "(?\u003c=\\S)(:)"
- },
- {
- "name": "punctuation.separator.zeek",
- "match": "(,)"
- },
- {
- "name": "keyword.operator.zeek",
- "match": "(:)"
- },
- {
- "name": "meta.namespace.zeek",
- "match": "(module)\\s+(([A-Za-z_][A-Za-z_0-9]*)(?:::([A-Za-z_][A-Za-z_0-9]*))*)",
- "captures": {
- "1": {
- "name": "keyword.other.zeek"
- },
- "2": {
- "name": "entity.name.namespace.zeek"
- }
- }
- },
- {
- "name": "keyword.other.zeek",
- "match": "\\b(export)\\b"
- },
- {
- "name": "keyword.control.conditional.zeek",
- "match": "\\b(if|else)\\b"
- },
- {
- "name": "keyword.control.zeek",
- "match": "\\b(for|while)\\b"
- },
- {
- "name": "keyword.control.zeek",
- "match": "\\b(return|break|next|continue|fallthrough)\\b"
- },
- {
- "name": "keyword.control.zeek",
- "match": "\\b(switch|default|case)\\b"
- },
- {
- "name": "keyword.other.zeek",
- "match": "\\b(add|delete)\\b"
- },
- {
- "name": "keyword.other.zeek",
- "match": "\\b(print)\\b"
- },
- {
- "name": "keyword.control.zeek",
- "match": "\\b(when|timeout|schedule)\\b"
- },
- {
- "name": "meta.struct.record.zeek",
- "match": "\\b(type)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\s*(:)\\s*\\b(record)\\b",
- "captures": {
- "1": {
- "name": "keyword.other.zeek"
- },
- "2": {
- "name": "entity.name.struct.record.zeek"
- },
- "3": {
- "name": "punctuation.separator.zeek"
- },
- "4": {
- "name": "storage.type.struct.record.zeek keyword.declaration.struct.record.zeek"
- }
- }
- },
- {
- "name": "meta.enum.zeek",
- "match": "\\b(type)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\s*(:)\\s*\\b(enum)\\b",
- "captures": {
- "1": {
- "name": "keyword.other.zeek"
- },
- "2": {
- "name": "entity.name.enum.zeek"
- },
- "3": {
- "name": "punctuation.separator.zeek"
- },
- "4": {
- "name": "storage.type.enum.zeek keyword.declaration.enum.zeek"
- }
- }
- },
- {
- "name": "meta.type.zeek",
- "match": "\\b(type)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\s*(:)",
- "captures": {
- "1": {
- "name": "keyword.other.zeek"
- },
- "2": {
- "name": "entity.name.type.zeek"
- },
- "3": {
- "name": "punctuation.separator.zeek"
- }
- }
- },
- {
- "name": "meta.struct.record.zeek",
- "match": "\\b(redef)\\s+(record)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\b",
- "captures": {
- "1": {
- "name": "keyword.other.zeek"
- },
- "2": {
- "name": "storage.type.struct.record.zeek keyword.declaration.struct.record.zeek"
- },
- "3": {
- "name": "entity.name.struct.record.zeek"
- }
- }
- },
- {
- "name": "meta.enum.zeek",
- "match": "\\b(redef)\\s+(enum)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\b",
- "captures": {
- "1": {
- "name": "keyword.other.zeek"
- },
- "2": {
- "name": "storage.type.enum.zeek keyword.declaration.enum.zeek"
- },
- "3": {
- "name": "entity.name.enum.zeek"
- }
- }
- },
- {
- "match": "\\b(event)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)(?=\\s*\\()",
- "captures": {
- "1": {
- "name": "storage.type.zeek"
- },
- "2": {
- "name": "entity.name.function.event.zeek"
- }
- }
- },
- {
- "match": "\\b(hook)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)(?=\\s*\\()",
- "captures": {
- "1": {
- "name": "storage.type.zeek"
- },
- "2": {
- "name": "entity.name.function.hook.zeek"
- }
- }
- },
- {
- "match": "\\b(function)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)(?=\\s*\\()",
- "captures": {
- "1": {
- "name": "storage.type.zeek"
- },
- "2": {
- "name": "entity.name.function.zeek"
- }
- }
- },
- {
- "name": "keyword.other.zeek",
- "match": "\\b(redef)\\b"
- },
- {
- "name": "storage.type.zeek",
- "match": "\\b(any)\\b"
- },
- {
- "name": "storage.type.zeek",
- "match": "\\b(enum|record|set|table|vector)\\b"
- },
- {
- "match": "\\b(opaque)\\s+(of)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\b",
- "captures": {
- "1": {
- "name": "storage.type.zeek"
- },
- "2": {
- "name": "keyword.operator.zeek"
- },
- "3": {
- "name": "storage.type.zeek"
- }
- }
- },
- {
- "name": "keyword.operator.zeek",
- "match": "\\b(of)\\b"
- },
- {
- "name": "storage.type.zeek",
- "match": "\\b(addr|bool|count|double|file|int|interval|pattern|port|string|subnet|time)\\b"
- },
- {
- "name": "storage.type.zeek",
- "match": "\\b(function|hook|event)\\b"
- },
- {
- "name": "storage.modifier.zeek",
- "match": "\\b(global|local|const|option)\\b"
- },
- {
- "name": "entity.name.function.call.zeek",
- "match": "\\b((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)(?=\\s*\\()"
- },
- {
- "name": "punctuation.section.block.begin.zeek",
- "match": "\\{"
- },
- {
- "name": "punctuation.section.block.end.zeek",
- "match": "\\}"
- },
- {
- "name": "punctuation.section.brackets.begin.zeek",
- "match": "\\["
- },
- {
- "name": "punctuation.section.brackets.end.zeek",
- "match": "\\]"
- },
- {
- "name": "punctuation.section.parens.begin.zeek",
- "match": "\\("
- },
- {
- "name": "punctuation.section.parens.end.zeek",
- "match": "\\)"
- }
- ]
-}
+{"name":"Zeek","scopeName":"source.zeek","patterns":[{"name":"comment.line.zeek","begin":"(##!|##\u003c|##|#)","end":"$","beginCaptures":{"1":{"name":"punctuation.definition.comment.zeek"}}},{"name":"string.quoted.double.zeek","begin":"(\\\")","end":"(\\\")","patterns":[{"name":"constant.character.escape.zeek","match":"\\\\."},{"name":"constant.other.placeholder.zeek","match":"%-?[0-9]*(\\.[0-9]+)?[DTdxsefg]"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.zeek"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.zeek"}}},{"name":"string.regexp.zeek","begin":"(/)(?=.*/)","end":"(/)","patterns":[{"name":"constant.character.escape.zeek","match":"\\\\."}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.zeek"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.zeek"}}},{"name":"meta.preprocessor.zeek","match":"(@(load-plugin|load-sigs|load|unload)).*$","captures":{"1":{"name":"keyword.other.zeek"}}},{"name":"meta.preprocessor.zeek","match":"(@(DEBUG|DIR|FILENAME|deprecated|if|ifdef|ifndef|else|endif))","captures":{"1":{"name":"keyword.other.zeek"}}},{"name":"meta.preprocessor.zeek","match":"(@prefixes)\\s*(\\+?=).*$","captures":{"1":{"name":"keyword.other.zeek"},"2":{"name":"keyword.operator.zeek"}}},{"name":"storage.modifier.attribute.zeek","match":"\\\u0026\\b(redef|priority|log|optional|default|add_func|delete_func|expire_func|read_expire|write_expire|create_expire|synchronized|persistent|rotate_interval|rotate_size|encrypt|raw_output|mergeable|error_handler|type_column|deprecated)\\b"},{"name":"constant.language.zeek","match":"\\b(T|F)\\b"},{"name":"constant.numeric.port.zeek","match":"\\b\\d{1,5}/(udp|tcp|icmp|unknown)\\b"},{"name":"constant.numeric.addr.zeek","match":"\\b(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\b"},{"name":"constant.numeric.addr.zeek","match":"\\[([0-9a-fA-F]{0,4}:){2,7}([0-9a-fA-F]{0,4})?((25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2})\\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{1,2}))?\\]"},{"name":"constant.numeric.float.decimal.interval.zeek","match":"(((?:(\\d*\\.\\d*)([eE][+-]?\\d+)?)|(?:(\\d*)([eE][+-]?\\d+))|(?:(\\d*\\.\\d*)))|\\d+)\\s*(day|hr|min|msec|usec|sec)s?"},{"name":"constant.numeric.float.decimal.zeek","match":"((?:(\\d*\\.\\d*)([eE][+-]?\\d+)?)|(?:(\\d*)([eE][+-]?\\d+))|(?:(\\d*\\.\\d*)))"},{"name":"constant.numeric.hostname.zeek","match":"\\b(([A-Za-z0-9][A-Za-z0-9\\-]*)(?:\\.([A-Za-z0-9][A-Za-z0-9\\-]*))+)\\b"},{"name":"constant.numeric.integer.hexadecimal.zeek","match":"\\b(0x[0-9a-fA-F]+)\\b"},{"name":"constant.numeric.integer.decimal.zeek","match":"\\b(\\d+)\\b"},{"name":"keyword.operator.zeek","match":"(==)|(!=)|(\u003c=)|(\u003c)|(\u003e=)|(\u003e)"},{"name":"keyword.operator.zeek","match":"(\u0026\u0026)|(||)|(!)"},{"name":"keyword.operator.zeek","match":"(=)|(\\+=)|(-=)"},{"name":"keyword.operator.zeek","match":"(\\+\\+)|(\\+)|(--)|(-)|(\\*)|(/)|(%)"},{"name":"keyword.operator.zeek","match":"(\u0026)|(\\|)|(\\^)|(~)"},{"name":"keyword.operator.zeek","match":"\\b(in|as|is)\\b"},{"name":"punctuation.terminator.zeek","match":";"},{"name":"punctuation.accessor.zeek","match":"\\??\\$"},{"name":"punctuation.accessor.zeek","match":"::"},{"name":"keyword.operator.zeek","match":"(\\?)"},{"name":"punctuation.separator.zeek","match":"(?\u003c=\\S)(:)"},{"name":"punctuation.separator.zeek","match":"(,)"},{"name":"keyword.operator.zeek","match":"(:)"},{"name":"meta.namespace.zeek","match":"(module)\\s+(([A-Za-z_][A-Za-z_0-9]*)(?:::([A-Za-z_][A-Za-z_0-9]*))*)","captures":{"1":{"name":"keyword.other.zeek"},"2":{"name":"entity.name.namespace.zeek"}}},{"name":"keyword.other.zeek","match":"\\b(export)\\b"},{"name":"keyword.control.conditional.zeek","match":"\\b(if|else)\\b"},{"name":"keyword.control.zeek","match":"\\b(for|while)\\b"},{"name":"keyword.control.zeek","match":"\\b(return|break|next|continue|fallthrough)\\b"},{"name":"keyword.control.zeek","match":"\\b(switch|default|case)\\b"},{"name":"keyword.other.zeek","match":"\\b(add|delete)\\b"},{"name":"keyword.other.zeek","match":"\\b(print)\\b"},{"name":"keyword.control.zeek","match":"\\b(when|timeout|schedule)\\b"},{"name":"meta.struct.record.zeek","match":"\\b(type)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\s*(:)\\s*\\b(record)\\b","captures":{"1":{"name":"keyword.other.zeek"},"2":{"name":"entity.name.struct.record.zeek"},"3":{"name":"punctuation.separator.zeek"},"4":{"name":"storage.type.struct.record.zeek keyword.declaration.struct.record.zeek"}}},{"name":"meta.enum.zeek","match":"\\b(type)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\s*(:)\\s*\\b(enum)\\b","captures":{"1":{"name":"keyword.other.zeek"},"2":{"name":"entity.name.enum.zeek"},"3":{"name":"punctuation.separator.zeek"},"4":{"name":"storage.type.enum.zeek keyword.declaration.enum.zeek"}}},{"name":"meta.type.zeek","match":"\\b(type)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\s*(:)","captures":{"1":{"name":"keyword.other.zeek"},"2":{"name":"entity.name.type.zeek"},"3":{"name":"punctuation.separator.zeek"}}},{"name":"meta.struct.record.zeek","match":"\\b(redef)\\s+(record)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\b","captures":{"1":{"name":"keyword.other.zeek"},"2":{"name":"storage.type.struct.record.zeek keyword.declaration.struct.record.zeek"},"3":{"name":"entity.name.struct.record.zeek"}}},{"name":"meta.enum.zeek","match":"\\b(redef)\\s+(enum)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\b","captures":{"1":{"name":"keyword.other.zeek"},"2":{"name":"storage.type.enum.zeek keyword.declaration.enum.zeek"},"3":{"name":"entity.name.enum.zeek"}}},{"match":"\\b(event)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)(?=\\s*\\()","captures":{"1":{"name":"storage.type.zeek"},"2":{"name":"entity.name.function.event.zeek"}}},{"match":"\\b(hook)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)(?=\\s*\\()","captures":{"1":{"name":"storage.type.zeek"},"2":{"name":"entity.name.function.hook.zeek"}}},{"match":"\\b(function)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)(?=\\s*\\()","captures":{"1":{"name":"storage.type.zeek"},"2":{"name":"entity.name.function.zeek"}}},{"name":"keyword.other.zeek","match":"\\b(redef)\\b"},{"name":"storage.type.zeek","match":"\\b(any)\\b"},{"name":"storage.type.zeek","match":"\\b(enum|record|set|table|vector)\\b"},{"match":"\\b(opaque)\\s+(of)\\s+((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)\\b","captures":{"1":{"name":"storage.type.zeek"},"2":{"name":"keyword.operator.zeek"},"3":{"name":"storage.type.zeek"}}},{"name":"keyword.operator.zeek","match":"\\b(of)\\b"},{"name":"storage.type.zeek","match":"\\b(addr|bool|count|double|file|int|interval|pattern|port|string|subnet|time)\\b"},{"name":"storage.type.zeek","match":"\\b(function|hook|event)\\b"},{"name":"storage.modifier.zeek","match":"\\b(global|local|const|option)\\b"},{"name":"entity.name.function.call.zeek","match":"\\b((?:[A-Za-z_][A-Za-z_0-9]*)(?:::(?:[A-Za-z_][A-Za-z_0-9]*))*)(?=\\s*\\()"},{"name":"punctuation.section.block.begin.zeek","match":"\\{"},{"name":"punctuation.section.block.end.zeek","match":"\\}"},{"name":"punctuation.section.brackets.begin.zeek","match":"\\["},{"name":"punctuation.section.brackets.end.zeek","match":"\\]"},{"name":"punctuation.section.parens.begin.zeek","match":"\\("},{"name":"punctuation.section.parens.end.zeek","match":"\\)"}]}