grammars/source.varnish.vcl.json in github-linguist-7.11.1 vs grammars/source.varnish.vcl.json in github-linguist-7.12.0
- old
+ new
@@ -1,331 +2 @@
-{
- "name": "VCL",
- "scopeName": "source.varnish.vcl",
- "patterns": [
- {
- "name": "comment.line.number-sign.vcl",
- "match": "\\#.*"
- },
- {
- "name": "comment.line.double-slash.vcl",
- "match": "\\/\\/.*"
- },
- {
- "name": "comment.block.vcl",
- "begin": "\\/\\*",
- "end": "\\*\\/"
- },
- {
- "name": "meta.include.vcl",
- "begin": "\\b(import|include)\\b\\s*",
- "end": "(?=\\s|;|$)",
- "patterns": [
- {
- "include": "#strings"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "keyword.control.import.php"
- }
- }
- },
- {
- "name": "meta.director.vcl",
- "begin": "(?i)^\\s*(director)\\s+([a-z0-9_]+)\\s+(round\\-robin|random|client|hash|dns|fallback)\\s*\\{",
- "end": "\\}",
- "patterns": [
- {
- "include": "$self"
- }
- ],
- "captures": {
- "1": {
- "name": "storage.type.director.vcl"
- },
- "2": {
- "name": "entity.name.type.director.vcl"
- },
- "3": {
- "name": "storage.type.director.family.vcl"
- }
- }
- },
- {
- "name": "meta.backend.vcl",
- "begin": "(?i)^\\s*(backend)\\s+([a-z0-9_]+)\\s*\\{",
- "end": "\\}",
- "patterns": [
- {
- "include": "$self"
- }
- ],
- "captures": {
- "1": {
- "name": "storage.type.backend.vcl"
- },
- "2": {
- "name": "entity.name.type.backend.vcl"
- }
- }
- },
- {
- "name": "meta.acl.vcl",
- "begin": "(?i)^\\s*(acl)\\s+([a-z0-9_]+)\\s*\\{",
- "end": "\\}",
- "patterns": [
- {
- "include": "$self"
- }
- ],
- "captures": {
- "1": {
- "name": "storage.type.acl.vcl"
- },
- "2": {
- "name": "entity.name.type.acl.vcl"
- }
- }
- },
- {
- "name": "meta.probe.vcl",
- "match": "(?i)^\\s*(probe)\\s+([a-z0-9_]+)\\s*",
- "captures": {
- "1": {
- "name": "storage.type.probe.vcl"
- },
- "2": {
- "name": "entity.name.type.probe.vcl"
- }
- }
- },
- {
- "name": "meta.subroutine.vcl",
- "begin": "(?i)^\\s*(sub)\\s+([a-z0-9_]+)\\s*\\{",
- "end": "\\}",
- "patterns": [
- {
- "include": "$self"
- }
- ],
- "captures": {
- "1": {
- "name": "storage.type.subroutine.vcl"
- },
- "2": {
- "name": "entity.name.type.subroutine.vcl"
- }
- }
- },
- {
- "begin": "\\b(return)\\s*\\(",
- "end": "\\)",
- "patterns": [
- {
- "name": "constant.language.return.vcl",
- "match": "(deliver|error|fetch|hash|hit_for_pass|lookup|ok|pass|pipe|restart|synth|retry|abandon|fail|purge)"
- }
- ],
- "captures": {
- "1": {
- "name": "keyword.control.vcl"
- }
- }
- },
- {
- "name": "meta.error.vcl",
- "begin": "\\b(error)\\b\\s*",
- "end": "(?=\\s|;|$)",
- "patterns": [
- {
- "include": "#strings"
- },
- {
- "include": "#numbers"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "keyword.control.error"
- }
- }
- },
- {
- "match": "\\b(set|unset|remove|synthetic|call|if|else|elsif|else if)\\b",
- "captures": {
- "1": {
- "name": "keyword.control.php"
- }
- }
- },
- {
- "include": "#variables"
- },
- {
- "include": "#numbers"
- },
- {
- "include": "#strings"
- },
- {
- "include": "#functions"
- },
- {
- "include": "#constants"
- },
- {
- "include": "#subkeys"
- },
- {
- "include": "#blocks"
- }
- ],
- "repository": {
- "blocks": {
- "patterns": [
- {
- "begin": "\\{",
- "end": "\\}",
- "patterns": [
- {
- "include": "$self"
- }
- ]
- }
- ]
- },
- "constants": {
- "patterns": [
- {
- "name": "constant.builtin.vcl",
- "match": "\\b(true|false|now)\\b"
- }
- ]
- },
- "functions": {
- "patterns": [
- {
- "name": "support.function.builtin.vcl",
- "match": "(hash_data|regsuball|regsub|ban_url|ban|purge|synth)"
- },
- {
- "name": "support.function.module.std.vcl",
- "match": "std\\.(log|toupper|tolower|set_ip_tos|random|log|syslog|fileread|collect|duration|integer|ip)"
- },
- {
- "name": "support.function.module.libvmodredis.vcl",
- "match": "redis[0-9]?\\.(call|send|pipeline|init_redis)"
- }
- ]
- },
- "numbers": {
- "patterns": [
- {
- "name": "constant.numeric.time.vcl",
- "match": "\\b[0-9]+ ?(m|s|h|d|w)\\b"
- },
- {
- "name": "constant.numeric.vcl",
- "match": "\\b[0-9]+(\\b|;)"
- }
- ]
- },
- "string-double-quoted": {
- "patterns": [
- {
- "name": "string.quoted.double.vcl",
- "contentName": "meta.string-contents.quoted.double.vcl",
- "begin": "\"",
- "end": "\"",
- "patterns": [
- {
- "name": "constant.character.escape.vcl",
- "match": "\\\\[\\\\\"]"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.vcl"
- }
- },
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.vcl"
- }
- }
- }
- ]
- },
- "string-long": {
- "patterns": [
- {
- "name": "string.quoted.long.vcl",
- "contentName": "meta.string-contents.quoted.double.vcl",
- "begin": "\\{\"",
- "end": "\"\\}",
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.vcl"
- }
- },
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.vcl"
- }
- }
- }
- ]
- },
- "string-single-quoted": {
- "name": "string.quoted.single.vcl",
- "contentName": "meta.string-contents.quoted.single.vcl",
- "begin": "'",
- "end": "'",
- "patterns": [
- {
- "name": "constant.character.escape.vcl",
- "match": "\\\\[\\\\']"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.vcl"
- }
- },
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.vcl"
- }
- }
- },
- "strings": {
- "patterns": [
- {
- "include": "#string-long"
- },
- {
- "include": "#string-single-quoted"
- },
- {
- "include": "#string-double-quoted"
- }
- ]
- },
- "subkeys": {
- "patterns": [
- {
- "name": "variable.subkey.vcl",
- "match": "\\.(max_connections|first_byte_timeout|between_bytes_timeout|probe|host_header|retries|backend|weight|host|list|port|connect_timeout|ttl|suffix|url|request|window|threshold|initial|expected_response|interval|timeout)\\b"
- }
- ]
- },
- "variables": {
- "patterns": [
- {
- "name": "variable.other.vcl",
- "match": "(req|bereq|obj|beresp|client|server|resp)\\.[a-zA-Z0-9\\-\\_\\.]+"
- }
- ]
- }
- }
-}
+{"name":"VCL","scopeName":"source.varnish.vcl","patterns":[{"name":"comment.line.number-sign.vcl","match":"\\#.*"},{"name":"comment.line.double-slash.vcl","match":"\\/\\/.*"},{"name":"comment.block.vcl","begin":"\\/\\*","end":"\\*\\/"},{"name":"meta.include.vcl","begin":"\\b(import|include)\\b\\s*","end":"(?=\\s|;|$)","patterns":[{"include":"#strings"}],"beginCaptures":{"1":{"name":"keyword.control.import.php"}}},{"name":"meta.director.vcl","begin":"(?i)^\\s*(director)\\s+([a-z0-9_]+)\\s+(round\\-robin|random|client|hash|dns|fallback)\\s*\\{","end":"\\}","patterns":[{"include":"$self"}],"captures":{"1":{"name":"storage.type.director.vcl"},"2":{"name":"entity.name.type.director.vcl"},"3":{"name":"storage.type.director.family.vcl"}}},{"name":"meta.backend.vcl","begin":"(?i)^\\s*(backend)\\s+([a-z0-9_]+)\\s*\\{","end":"\\}","patterns":[{"include":"$self"}],"captures":{"1":{"name":"storage.type.backend.vcl"},"2":{"name":"entity.name.type.backend.vcl"}}},{"name":"meta.acl.vcl","begin":"(?i)^\\s*(acl)\\s+([a-z0-9_]+)\\s*\\{","end":"\\}","patterns":[{"include":"$self"}],"captures":{"1":{"name":"storage.type.acl.vcl"},"2":{"name":"entity.name.type.acl.vcl"}}},{"name":"meta.probe.vcl","match":"(?i)^\\s*(probe)\\s+([a-z0-9_]+)\\s*","captures":{"1":{"name":"storage.type.probe.vcl"},"2":{"name":"entity.name.type.probe.vcl"}}},{"name":"meta.subroutine.vcl","begin":"(?i)^\\s*(sub)\\s+([a-z0-9_]+)\\s*\\{","end":"\\}","patterns":[{"include":"$self"}],"captures":{"1":{"name":"storage.type.subroutine.vcl"},"2":{"name":"entity.name.type.subroutine.vcl"}}},{"begin":"\\b(return)\\s*\\(","end":"\\)","patterns":[{"name":"constant.language.return.vcl","match":"(deliver|error|fetch|hash|hit_for_pass|lookup|ok|pass|pipe|restart|synth|retry|abandon|fail|purge)"}],"captures":{"1":{"name":"keyword.control.vcl"}}},{"name":"meta.error.vcl","begin":"\\b(error)\\b\\s*","end":"(?=\\s|;|$)","patterns":[{"include":"#strings"},{"include":"#numbers"}],"beginCaptures":{"1":{"name":"keyword.control.error"}}},{"match":"\\b(set|unset|remove|synthetic|call|if|else|elsif|else if)\\b","captures":{"1":{"name":"keyword.control.php"}}},{"include":"#variables"},{"include":"#numbers"},{"include":"#strings"},{"include":"#functions"},{"include":"#constants"},{"include":"#subkeys"},{"include":"#blocks"}],"repository":{"blocks":{"patterns":[{"begin":"\\{","end":"\\}","patterns":[{"include":"$self"}]}]},"constants":{"patterns":[{"name":"constant.builtin.vcl","match":"\\b(true|false|now)\\b"}]},"functions":{"patterns":[{"name":"support.function.builtin.vcl","match":"(hash_data|regsuball|regsub|ban_url|ban|purge|synth)"},{"name":"support.function.module.std.vcl","match":"std\\.(log|toupper|tolower|set_ip_tos|random|log|syslog|fileread|collect|duration|integer|ip)"},{"name":"support.function.module.libvmodredis.vcl","match":"redis[0-9]?\\.(call|send|pipeline|init_redis)"}]},"numbers":{"patterns":[{"name":"constant.numeric.time.vcl","match":"\\b[0-9]+ ?(m|s|h|d|w)\\b"},{"name":"constant.numeric.vcl","match":"\\b[0-9]+(\\b|;)"}]},"string-double-quoted":{"patterns":[{"name":"string.quoted.double.vcl","contentName":"meta.string-contents.quoted.double.vcl","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.vcl","match":"\\\\[\\\\\"]"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.vcl"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.vcl"}}}]},"string-long":{"patterns":[{"name":"string.quoted.long.vcl","contentName":"meta.string-contents.quoted.double.vcl","begin":"\\{\"","end":"\"\\}","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.vcl"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.vcl"}}}]},"string-single-quoted":{"name":"string.quoted.single.vcl","contentName":"meta.string-contents.quoted.single.vcl","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.vcl","match":"\\\\[\\\\']"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.vcl"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.vcl"}}},"strings":{"patterns":[{"include":"#string-long"},{"include":"#string-single-quoted"},{"include":"#string-double-quoted"}]},"subkeys":{"patterns":[{"name":"variable.subkey.vcl","match":"\\.(max_connections|first_byte_timeout|between_bytes_timeout|probe|host_header|retries|backend|weight|host|list|port|connect_timeout|ttl|suffix|url|request|window|threshold|initial|expected_response|interval|timeout)\\b"}]},"variables":{"patterns":[{"name":"variable.other.vcl","match":"(req|bereq|obj|beresp|client|server|resp)\\.[a-zA-Z0-9\\-\\_\\.]+"}]}}}