grammars/text.cfml.basic.json in github-linguist-7.11.1 vs grammars/text.cfml.basic.json in github-linguist-7.12.0
- old
+ new
@@ -1,735 +2 @@
-{
- "name": "CFML (do not use)",
- "scopeName": "text.cfml.basic",
- "patterns": [
- {
- "begin": "(?:^\\s+)?(\u003c)((?i:cfscript))(?![^\u003e]*/\u003e)",
- "end": "(\u003c/)((?i:cfscript))(\u003e)(?:\\s*\\n)?",
- "patterns": [
- {
- "contentName": "source.cfscript.embedded.cfml",
- "begin": "(\u003e)",
- "end": "(?=\u003c/(?i:cfscript))",
- "patterns": [
- {
- "include": "source.cfscript"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "meta.tag.block.cf.script.cfml"
- },
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- }
- ],
- "captures": {
- "0": {
- "name": "meta.tag.block.cf.script.cfml"
- },
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.script.cfml"
- },
- "3": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- },
- {
- "name": "meta.tag.block.cf.function.cfml",
- "begin": "(\u003c/?)((?i:cffunction))\\b",
- "end": "(\u003e)",
- "patterns": [
- {
- "include": "#func-name-attribute"
- },
- {
- "include": "#tag-stuff"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.function.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- },
- {
- "name": "meta.tag.inline.cf.any.cfml",
- "contentName": "source.cfscript.embedded.cfml",
- "begin": "(\u003c)(?i:(cfset|cfreturn))\\b",
- "end": "((?:\\s?/)?\u003e)",
- "patterns": [
- {
- "include": "#cfcomments"
- },
- {
- "include": "source.cfscript"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.inline.declaration.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- },
- {
- "name": "meta.tag.inline.cf.any.cfml",
- "begin": "(?x)\n\t\t\t\t(\u003c)\n\t\t\t\t\t(?i:\n\t\t\t\t\t\t(cf(queryparam|location|forward|import|param|break|abort|flush\n\t\t\t\t\t\t\t|setting|test|dump|content|include|catch|continue\n\t\t\t\t\t\t\t|file|log|object|invoke|throw|property|htmlhead\n\t\t\t\t\t\t\t|header|argument|exit|trace)\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\\b\n\t\t\t\t\t)\n\t\t\t",
- "end": "((?:\\s?/)?\u003e)",
- "patterns": [
- {
- "include": "#tag-stuff"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.inline.other.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- },
- {
- "begin": "(?:^\\s+)?(\u003c)((?i:cfquery))\\b(?![^\u003e]*/\u003e)",
- "end": "(\u003c/)((?i:cfquery))(\u003e)(?:\\s*\\n)?",
- "patterns": [
- {
- "name": "meta.tag.block.cf.output.cfml",
- "begin": "(?\u003c=cfquery)\\s",
- "end": "(?=\u003e)",
- "patterns": [
- {
- "include": "#qry-name-attribute"
- },
- {
- "include": "#tag-stuff"
- }
- ]
- },
- {
- "contentName": "source.sql.embedded.cfml",
- "begin": "(\u003e)",
- "end": "(?=\u003c/(?i:cfquery))",
- "patterns": [
- {
- "include": "#string-double-quoted"
- },
- {
- "include": "#string-single-quoted"
- },
- {
- "include": "#embedded-tags"
- },
- {
- "name": "meta.tag.inline.cf.query-param.cfml",
- "begin": "(\u003c/?)((?i:(?:cfqueryparam))\\b)",
- "end": "((?:\\s?/)?\u003e)",
- "patterns": [
- {
- "include": "#tag-stuff"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.inline.param.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- },
- {
- "include": "#nest-hash"
- },
- {
- "include": "source.sql"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "meta.tag.block.cf.query.cfml"
- },
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- }
- ],
- "captures": {
- "0": {
- "name": "meta.tag.block.cf.query.cfml"
- },
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.query.cfml"
- },
- "3": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- },
- {
- "include": "#embedded-tags"
- },
- {
- "name": "meta.tag.block.cf.other.cfml",
- "begin": "(?x)\n\t\t\t\t(\u003c/?)\n\t\t\t\t(?i:\n\t\t\t\t\t(cf((output)|(savecontent)|([\\w\\-_.]+)))\n\t\t\t\t)\n\t\t\t\t\\b\n\t\t\t",
- "end": "(\u003e)",
- "patterns": [
- {
- "include": "#tag-stuff"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.block.other.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- }
- ],
- "repository": {
- "cfcomments": {
- "patterns": [
- {
- "name": "comment.line.cfml",
- "match": "\u003c!---.*?---\u003e"
- },
- {
- "name": "comment.block.cfml",
- "begin": "\u003c!---",
- "end": "---\u003e",
- "patterns": [
- {
- "include": "#cfcomments"
- }
- ],
- "captures": {
- "0": {
- "name": "punctuation.definition.comment.cfml"
- }
- }
- }
- ]
- },
- "cfmail": {
- "begin": "(?:^\\s+)?(\u003c)((?i:cfmail))\\b(?![^\u003e]*/\u003e)",
- "end": "(\u003c/)((?i:cfmail))(\u003e)(?:\\s*\\n)?",
- "patterns": [
- {
- "name": "meta.tag.block.cf.mail.cfml",
- "begin": "(?\u003c=cfmail)\\s",
- "end": "(?=\u003e)",
- "patterns": [
- {
- "include": "#tag-stuff"
- }
- ]
- },
- {
- "contentName": "meta.scope.between-mail-tags.cfml",
- "begin": "(\u003e)",
- "end": "(?=\u003c/(?i:cfmail))",
- "patterns": [
- {
- "include": "#nest-hash"
- },
- {
- "include": "text.html.cfm"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "meta.tag.block.cf.mail.cfml"
- },
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- }
- ],
- "captures": {
- "0": {
- "name": "meta.tag.block.cf.mail.cfml"
- },
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.mail.cfml"
- },
- "3": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- },
- "cfoutput": {
- "begin": "(?:^\\s+)?(\u003c)((?i:cfoutput))\\b(?![^\u003e]*/\u003e)",
- "end": "(\u003c/)((?i:cfoutput))(\u003e)(?:\\s*\\n)?",
- "patterns": [
- {
- "name": "meta.tag.block.cf.output.cfml",
- "begin": "(?\u003c=cfoutput)\\s",
- "end": "(?=\u003e)",
- "patterns": [
- {
- "include": "#tag-stuff"
- }
- ]
- },
- {
- "contentName": "meta.scope.between-output-tags.cfml",
- "begin": "(\u003e)",
- "end": "(?=\u003c/(?i:cfoutput))",
- "patterns": [
- {
- "include": "#nest-hash"
- },
- {
- "include": "text.html.cfm"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "meta.tag.block.cf.output.cfml"
- },
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- }
- ],
- "captures": {
- "0": {
- "name": "meta.tag.block.cf.output.cfml"
- },
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.output.cfml"
- },
- "3": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- },
- "conditionals": {
- "patterns": [
- {
- "name": "meta.tag.block.cf.conditional.cfml",
- "contentName": "source.cfscript.embedded.cfml",
- "begin": "(\u003c/?)((?i:cfif))\\b",
- "end": "(\u003e)",
- "patterns": [
- {
- "include": "source.cfscript"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.conditional.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- },
- {
- "name": "meta.tag.inline.cf.conditional.cfml",
- "contentName": "source.cfscript.embedded.cfml",
- "begin": "(\u003c/?)(?i:(cfelseif|cfelse))",
- "end": "(\u003e)",
- "patterns": [
- {
- "include": "source.cfscript"
- }
- ],
- "captures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.conditional.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- }
- ]
- },
- "embedded-tags": {
- "patterns": [
- {
- "include": "#cfcomments"
- },
- {
- "include": "#conditionals"
- },
- {
- "include": "#flow-control"
- },
- {
- "include": "#exception-handling"
- },
- {
- "include": "#cfoutput"
- },
- {
- "include": "#cfmail"
- }
- ]
- },
- "entities": {
- "patterns": [
- {
- "name": "constant.character.entity.cfml",
- "match": "(\u0026)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)",
- "captures": {
- "1": {
- "name": "punctuation.definition.entity.cfml"
- },
- "3": {
- "name": "punctuation.definition.entity.cfml"
- }
- }
- },
- {
- "name": "invalid.illegal.bad-ampersand.cfml",
- "match": "\u0026"
- }
- ]
- },
- "exception-handling": {
- "patterns": [
- {
- "name": "meta.tag.block.cf.exceptions.cfml",
- "begin": "(?x)\n\t\t\t\t\t\t(\u003c/?)\n\t\t\t\t\t\t(?i:\n\t\t\t\t\t\t\t(cftry)|(cfcatch)|(cflock)|(cffinally|cferror|cfrethrow|cfthrow)\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\\b\n\t\t\t\t\t",
- "end": "(\u003e)",
- "patterns": [
- {
- "include": "#tag-stuff"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.exception.try.cfml"
- },
- "3": {
- "name": "entity.name.tag.cf.exception.catch.cfml"
- },
- "4": {
- "name": "entity.name.tag.cf.lock.cfml"
- },
- "5": {
- "name": "entity.name.tag.cf.exception.other.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- }
- ]
- },
- "flow-control": {
- "patterns": [
- {
- "name": "meta.tag.block.cf.flow-control.cfml",
- "begin": "(?x)\n\t\t\t\t\t\t(\u003c/?)\n\t\t\t\t\t\t(?i:\n\t\t\t\t\t\t\t(cfloop)|(cfswitch)|(cf(?:default)?case)\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\\b\n\t\t\t\t\t",
- "end": "(\u003e)",
- "patterns": [
- {
- "include": "#tag-stuff"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
- },
- "2": {
- "name": "entity.name.tag.cf.flow-control.loop.cfml"
- },
- "3": {
- "name": "entity.name.tag.cf.flow-control.switch.cfml"
- },
- "4": {
- "name": "entity.name.tag.cf.flow-control.case.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- }
- }
- ]
- },
- "func-name-attribute": {
- "name": "meta.attribute-with-value.name.cfml",
- "begin": "\\b(name)\\b\\s*(=)",
- "end": "(?\u003c='|\")",
- "patterns": [
- {
- "name": "string.quoted.double.cfml",
- "contentName": "meta.toc-list.function.cfml",
- "begin": "\"",
- "end": "\"",
- "patterns": [
- {
- "include": "#entities"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.cfml"
- }
- },
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.cfml"
- }
- }
- },
- {
- "name": "string.quoted.single.cfml",
- "contentName": "meta.toc-list.function.cfml",
- "begin": "'",
- "end": "'",
- "patterns": [
- {
- "include": "#entities"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.cfml"
- }
- },
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.cfml"
- }
- }
- }
- ],
- "captures": {
- "1": {
- "name": "entity.other.attribute-name.cfml"
- },
- "2": {
- "name": "punctuation.separator.key-value.cfml"
- }
- }
- },
- "nest-hash": {
- "patterns": [
- {
- "name": "string.escaped.hash.cfml",
- "match": "##"
- },
- {
- "name": "invalid.illegal.unescaped.hash.cfml",
- "match": "(?x)\n\t\t\t\t\t\t\t(\\#)\n\t\t\t\t\t\t\t(?!\t\t# zero width negative lookahead assertion\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t([\\w$]+\t# assertion for plain variables or function names including currency symbol \"$\"\n\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\t(\\[.*\\])\t\t\t\t# asserts a match for anything in square brackets\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\(.*\\))\t\t\t\t# or anything in parens\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\.[\\w$]+)\t\t\t\t# or zero or more \"dot\" notated variables\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\s*[\\+\\-\\*\\/\u0026]\\s*[\\w$]+)\t# or simple arithmentic operators + concatenation\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\s*\u0026\\s*[\"|'].+[\"|']) \t# or concatenation with a quoted string\n\t\t\t\t\t\t\t\t\t\t)*\t\t# asserts preceeding square brackets, parens, dot notated vars or arithmetic zero or more times\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t(\\(.*\\))\t # asserts a match for anything in parens\n\t\t\t\t\t\t\t\t)\\#\t\t# asserts closing hash\n\t\t\t\t\t\t\t)"
- },
- {
- "name": "meta.name.interpolated.hash.cfml",
- "contentName": "source.cfscript.embedded.cfml",
- "begin": "(?x)\n\t\t\t\t\t\t\t(\\#)\n\t\t\t\t\t\t\t(?=\t\t# zero width negative lookahead assertion\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t([\\w$]+\t# assertion for plain variables or function names including currency symbol \"$\"\n\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\t(\\[.*\\])\t\t\t\t# asserts a match for anything in square brackets\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\(.*\\))\t\t\t\t# or anything in parens\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\.[\\w$]+)\t\t\t\t# or zero or more \"dot\" notated variables\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\s*[\\+\\-\\*\\/\u0026]\\s*[\\w$]+)\t# or simple arithmentic operators + concatenation\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\s*\u0026\\s*[\"|'].+[\"|']) \t# or concatenation with a quoted string\n\t\t\t\t\t\t\t\t\t\t)*\t\t# asserts preceeding square brackets, parens, dot notated vars or arithmetic zero or more times\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t(\\(.*\\))\t # asserts a match for anything in parens\n\t\t\t\t\t\t\t\t)\\#\t\t# asserts closing hash\n\t\t\t\t\t\t\t)",
- "end": "(#)",
- "patterns": [
- {
- "include": "source.cfscript"
- }
- ],
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.hash.begin.cfml"
- }
- },
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.hash.end.cfml"
- }
- }
- }
- ]
- },
- "qry-name-attribute": {
- "name": "meta.attribute-with-value.name.cfml",
- "begin": "\\b(name)\\b\\s*(=)",
- "end": "(?\u003c='|\")",
- "patterns": [
- {
- "name": "string.quoted.double.cfml",
- "contentName": "meta.toc-list.query.cfml",
- "begin": "\"",
- "end": "\"",
- "patterns": [
- {
- "include": "#entities"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.cfml"
- }
- },
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.cfml"
- }
- }
- },
- {
- "name": "string.quoted.single.cfml",
- "contentName": "meta.toc-list.query.name.cfml",
- "begin": "'",
- "end": "'",
- "patterns": [
- {
- "include": "#entities"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.cfml"
- }
- },
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.cfml"
- }
- }
- }
- ],
- "captures": {
- "1": {
- "name": "entity.other.attribute-name.cfml"
- },
- "2": {
- "name": "punctuation.separator.key-value.cfml"
- }
- }
- },
- "string-double-quoted": {
- "name": "string.quoted.double.cfml",
- "begin": "\"",
- "end": "\"",
- "patterns": [
- {
- "include": "#nest-hash"
- },
- {
- "include": "#entities"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.cfml"
- }
- },
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.cfml"
- }
- }
- },
- "string-single-quoted": {
- "name": "string.quoted.single.cfml",
- "begin": "'",
- "end": "'",
- "patterns": [
- {
- "include": "#nest-hash"
- },
- {
- "include": "#entities"
- }
- ],
- "beginCaptures": {
- "0": {
- "name": "punctuation.definition.string.begin.cfml"
- }
- },
- "endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.cfml"
- }
- }
- },
- "tag-generic-attribute": {
- "name": "entity.other.attribute-name.cfml",
- "match": "\\b([a-zA-Z\\-:]+)"
- },
- "tag-stuff": {
- "patterns": [
- {
- "include": "#cfcomments"
- },
- {
- "include": "#tag-generic-attribute"
- },
- {
- "include": "#string-double-quoted"
- },
- {
- "include": "#string-single-quoted"
- }
- ]
- }
- }
-}
+{"name":"CFML (do not use)","scopeName":"text.cfml.basic","patterns":[{"begin":"(?:^\\s+)?(\u003c)((?i:cfscript))(?![^\u003e]*/\u003e)","end":"(\u003c/)((?i:cfscript))(\u003e)(?:\\s*\\n)?","patterns":[{"contentName":"source.cfscript.embedded.cfml","begin":"(\u003e)","end":"(?=\u003c/(?i:cfscript))","patterns":[{"include":"source.cfscript"}],"beginCaptures":{"0":{"name":"meta.tag.block.cf.script.cfml"},"1":{"name":"punctuation.definition.tag.end.cfml"}}}],"captures":{"0":{"name":"meta.tag.block.cf.script.cfml"},"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.script.cfml"},"3":{"name":"punctuation.definition.tag.end.cfml"}}},{"name":"meta.tag.block.cf.function.cfml","begin":"(\u003c/?)((?i:cffunction))\\b","end":"(\u003e)","patterns":[{"include":"#func-name-attribute"},{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.function.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.cfml"}}},{"name":"meta.tag.inline.cf.any.cfml","contentName":"source.cfscript.embedded.cfml","begin":"(\u003c)(?i:(cfset|cfreturn))\\b","end":"((?:\\s?/)?\u003e)","patterns":[{"include":"#cfcomments"},{"include":"source.cfscript"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.inline.declaration.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.cfml"}}},{"name":"meta.tag.inline.cf.any.cfml","begin":"(?x)\n\t\t\t\t(\u003c)\n\t\t\t\t\t(?i:\n\t\t\t\t\t\t(cf(queryparam|location|forward|import|param|break|abort|flush\n\t\t\t\t\t\t\t|setting|test|dump|content|include|catch|continue\n\t\t\t\t\t\t\t|file|log|object|invoke|throw|property|htmlhead\n\t\t\t\t\t\t\t|header|argument|exit|trace)\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\\b\n\t\t\t\t\t)\n\t\t\t","end":"((?:\\s?/)?\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.inline.other.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.cfml"}}},{"begin":"(?:^\\s+)?(\u003c)((?i:cfquery))\\b(?![^\u003e]*/\u003e)","end":"(\u003c/)((?i:cfquery))(\u003e)(?:\\s*\\n)?","patterns":[{"name":"meta.tag.block.cf.output.cfml","begin":"(?\u003c=cfquery)\\s","end":"(?=\u003e)","patterns":[{"include":"#qry-name-attribute"},{"include":"#tag-stuff"}]},{"contentName":"source.sql.embedded.cfml","begin":"(\u003e)","end":"(?=\u003c/(?i:cfquery))","patterns":[{"include":"#string-double-quoted"},{"include":"#string-single-quoted"},{"include":"#embedded-tags"},{"name":"meta.tag.inline.cf.query-param.cfml","begin":"(\u003c/?)((?i:(?:cfqueryparam))\\b)","end":"((?:\\s?/)?\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.inline.param.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.cfml"}}},{"include":"#nest-hash"},{"include":"source.sql"}],"beginCaptures":{"0":{"name":"meta.tag.block.cf.query.cfml"},"1":{"name":"punctuation.definition.tag.end.cfml"}}}],"captures":{"0":{"name":"meta.tag.block.cf.query.cfml"},"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.query.cfml"},"3":{"name":"punctuation.definition.tag.end.cfml"}}},{"include":"#embedded-tags"},{"name":"meta.tag.block.cf.other.cfml","begin":"(?x)\n\t\t\t\t(\u003c/?)\n\t\t\t\t(?i:\n\t\t\t\t\t(cf((output)|(savecontent)|([\\w\\-_.]+)))\n\t\t\t\t)\n\t\t\t\t\\b\n\t\t\t","end":"(\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.block.other.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.cfml"}}}],"repository":{"cfcomments":{"patterns":[{"name":"comment.line.cfml","match":"\u003c!---.*?---\u003e"},{"name":"comment.block.cfml","begin":"\u003c!---","end":"---\u003e","patterns":[{"include":"#cfcomments"}],"captures":{"0":{"name":"punctuation.definition.comment.cfml"}}}]},"cfmail":{"begin":"(?:^\\s+)?(\u003c)((?i:cfmail))\\b(?![^\u003e]*/\u003e)","end":"(\u003c/)((?i:cfmail))(\u003e)(?:\\s*\\n)?","patterns":[{"name":"meta.tag.block.cf.mail.cfml","begin":"(?\u003c=cfmail)\\s","end":"(?=\u003e)","patterns":[{"include":"#tag-stuff"}]},{"contentName":"meta.scope.between-mail-tags.cfml","begin":"(\u003e)","end":"(?=\u003c/(?i:cfmail))","patterns":[{"include":"#nest-hash"},{"include":"text.html.cfm"}],"beginCaptures":{"0":{"name":"meta.tag.block.cf.mail.cfml"},"1":{"name":"punctuation.definition.tag.end.cfml"}}}],"captures":{"0":{"name":"meta.tag.block.cf.mail.cfml"},"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.mail.cfml"},"3":{"name":"punctuation.definition.tag.end.cfml"}}},"cfoutput":{"begin":"(?:^\\s+)?(\u003c)((?i:cfoutput))\\b(?![^\u003e]*/\u003e)","end":"(\u003c/)((?i:cfoutput))(\u003e)(?:\\s*\\n)?","patterns":[{"name":"meta.tag.block.cf.output.cfml","begin":"(?\u003c=cfoutput)\\s","end":"(?=\u003e)","patterns":[{"include":"#tag-stuff"}]},{"contentName":"meta.scope.between-output-tags.cfml","begin":"(\u003e)","end":"(?=\u003c/(?i:cfoutput))","patterns":[{"include":"#nest-hash"},{"include":"text.html.cfm"}],"beginCaptures":{"0":{"name":"meta.tag.block.cf.output.cfml"},"1":{"name":"punctuation.definition.tag.end.cfml"}}}],"captures":{"0":{"name":"meta.tag.block.cf.output.cfml"},"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.output.cfml"},"3":{"name":"punctuation.definition.tag.end.cfml"}}},"conditionals":{"patterns":[{"name":"meta.tag.block.cf.conditional.cfml","contentName":"source.cfscript.embedded.cfml","begin":"(\u003c/?)((?i:cfif))\\b","end":"(\u003e)","patterns":[{"include":"source.cfscript"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.conditional.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.cfml"}}},{"name":"meta.tag.inline.cf.conditional.cfml","contentName":"source.cfscript.embedded.cfml","begin":"(\u003c/?)(?i:(cfelseif|cfelse))","end":"(\u003e)","patterns":[{"include":"source.cfscript"}],"captures":{"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.conditional.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.cfml"}}}]},"embedded-tags":{"patterns":[{"include":"#cfcomments"},{"include":"#conditionals"},{"include":"#flow-control"},{"include":"#exception-handling"},{"include":"#cfoutput"},{"include":"#cfmail"}]},"entities":{"patterns":[{"name":"constant.character.entity.cfml","match":"(\u0026)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)","captures":{"1":{"name":"punctuation.definition.entity.cfml"},"3":{"name":"punctuation.definition.entity.cfml"}}},{"name":"invalid.illegal.bad-ampersand.cfml","match":"\u0026"}]},"exception-handling":{"patterns":[{"name":"meta.tag.block.cf.exceptions.cfml","begin":"(?x)\n\t\t\t\t\t\t(\u003c/?)\n\t\t\t\t\t\t(?i:\n\t\t\t\t\t\t\t(cftry)|(cfcatch)|(cflock)|(cffinally|cferror|cfrethrow|cfthrow)\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\\b\n\t\t\t\t\t","end":"(\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.exception.try.cfml"},"3":{"name":"entity.name.tag.cf.exception.catch.cfml"},"4":{"name":"entity.name.tag.cf.lock.cfml"},"5":{"name":"entity.name.tag.cf.exception.other.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.cfml"}}}]},"flow-control":{"patterns":[{"name":"meta.tag.block.cf.flow-control.cfml","begin":"(?x)\n\t\t\t\t\t\t(\u003c/?)\n\t\t\t\t\t\t(?i:\n\t\t\t\t\t\t\t(cfloop)|(cfswitch)|(cf(?:default)?case)\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\\b\n\t\t\t\t\t","end":"(\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.cfml"},"2":{"name":"entity.name.tag.cf.flow-control.loop.cfml"},"3":{"name":"entity.name.tag.cf.flow-control.switch.cfml"},"4":{"name":"entity.name.tag.cf.flow-control.case.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.cfml"}}}]},"func-name-attribute":{"name":"meta.attribute-with-value.name.cfml","begin":"\\b(name)\\b\\s*(=)","end":"(?\u003c='|\")","patterns":[{"name":"string.quoted.double.cfml","contentName":"meta.toc-list.function.cfml","begin":"\"","end":"\"","patterns":[{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.cfml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.cfml"}}},{"name":"string.quoted.single.cfml","contentName":"meta.toc-list.function.cfml","begin":"'","end":"'","patterns":[{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.cfml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.cfml"}}}],"captures":{"1":{"name":"entity.other.attribute-name.cfml"},"2":{"name":"punctuation.separator.key-value.cfml"}}},"nest-hash":{"patterns":[{"name":"string.escaped.hash.cfml","match":"##"},{"name":"invalid.illegal.unescaped.hash.cfml","match":"(?x)\n\t\t\t\t\t\t\t(\\#)\n\t\t\t\t\t\t\t(?!\t\t# zero width negative lookahead assertion\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t([\\w$]+\t# assertion for plain variables or function names including currency symbol \"$\"\n\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\t(\\[.*\\])\t\t\t\t# asserts a match for anything in square brackets\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\(.*\\))\t\t\t\t# or anything in parens\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\.[\\w$]+)\t\t\t\t# or zero or more \"dot\" notated variables\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\s*[\\+\\-\\*\\/\u0026]\\s*[\\w$]+)\t# or simple arithmentic operators + concatenation\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\s*\u0026\\s*[\"|'].+[\"|']) \t# or concatenation with a quoted string\n\t\t\t\t\t\t\t\t\t\t)*\t\t# asserts preceeding square brackets, parens, dot notated vars or arithmetic zero or more times\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t(\\(.*\\))\t # asserts a match for anything in parens\n\t\t\t\t\t\t\t\t)\\#\t\t# asserts closing hash\n\t\t\t\t\t\t\t)"},{"name":"meta.name.interpolated.hash.cfml","contentName":"source.cfscript.embedded.cfml","begin":"(?x)\n\t\t\t\t\t\t\t(\\#)\n\t\t\t\t\t\t\t(?=\t\t# zero width negative lookahead assertion\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t([\\w$]+\t# assertion for plain variables or function names including currency symbol \"$\"\n\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\t(\\[.*\\])\t\t\t\t# asserts a match for anything in square brackets\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\(.*\\))\t\t\t\t# or anything in parens\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\.[\\w$]+)\t\t\t\t# or zero or more \"dot\" notated variables\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\s*[\\+\\-\\*\\/\u0026]\\s*[\\w$]+)\t# or simple arithmentic operators + concatenation\n\t\t\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t\t\t(\\s*\u0026\\s*[\"|'].+[\"|']) \t# or concatenation with a quoted string\n\t\t\t\t\t\t\t\t\t\t)*\t\t# asserts preceeding square brackets, parens, dot notated vars or arithmetic zero or more times\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t\t(\\(.*\\))\t # asserts a match for anything in parens\n\t\t\t\t\t\t\t\t)\\#\t\t# asserts closing hash\n\t\t\t\t\t\t\t)","end":"(#)","patterns":[{"include":"source.cfscript"}],"beginCaptures":{"1":{"name":"punctuation.definition.hash.begin.cfml"}},"endCaptures":{"1":{"name":"punctuation.definition.hash.end.cfml"}}}]},"qry-name-attribute":{"name":"meta.attribute-with-value.name.cfml","begin":"\\b(name)\\b\\s*(=)","end":"(?\u003c='|\")","patterns":[{"name":"string.quoted.double.cfml","contentName":"meta.toc-list.query.cfml","begin":"\"","end":"\"","patterns":[{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.cfml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.cfml"}}},{"name":"string.quoted.single.cfml","contentName":"meta.toc-list.query.name.cfml","begin":"'","end":"'","patterns":[{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.cfml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.cfml"}}}],"captures":{"1":{"name":"entity.other.attribute-name.cfml"},"2":{"name":"punctuation.separator.key-value.cfml"}}},"string-double-quoted":{"name":"string.quoted.double.cfml","begin":"\"","end":"\"","patterns":[{"include":"#nest-hash"},{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.cfml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.cfml"}}},"string-single-quoted":{"name":"string.quoted.single.cfml","begin":"'","end":"'","patterns":[{"include":"#nest-hash"},{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.cfml"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.cfml"}}},"tag-generic-attribute":{"name":"entity.other.attribute-name.cfml","match":"\\b([a-zA-Z\\-:]+)"},"tag-stuff":{"patterns":[{"include":"#cfcomments"},{"include":"#tag-generic-attribute"},{"include":"#string-double-quoted"},{"include":"#string-single-quoted"}]}}}