grammars/text.cfml.basic.json in github-linguist-5.3.3 vs grammars/text.cfml.basic.json in github-linguist-6.0.0
- old
+ new
@@ -1,165 +1,144 @@
{
"name": "CFML (do not use)",
+ "scopeName": "text.cfml.basic",
"patterns": [
{
- "begin": "(?:^\\s+)?(<)((?i:cfscript))(?![^>]*/>)",
- "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"
- }
- },
- "end": "(</)((?i:cfscript))(>)(?:\\s*\\n)?",
+ "begin": "(?:^\\s+)?(\u003c)((?i:cfscript))(?![^\u003e]*/\u003e)",
+ "end": "(\u003c/)((?i:cfscript))(\u003e)(?:\\s*\\n)?",
"patterns": [
{
- "begin": "(>)",
+ "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"
}
- },
- "contentName": "source.cfscript.embedded.cfml",
- "end": "(?=</(?i:cfscript))",
- "patterns": [
- {
- "include": "source.cfscript"
- }
- ]
+ }
}
- ]
- },
- {
- "begin": "(</?)((?i:cffunction))\\b",
- "beginCaptures": {
+ ],
+ "captures": {
+ "0": {
+ "name": "meta.tag.block.cf.script.cfml"
+ },
"1": {
"name": "punctuation.definition.tag.begin.cfml"
},
"2": {
- "name": "entity.name.tag.cf.function.cfml"
- }
- },
- "end": "(>)",
- "endCaptures": {
- "1": {
+ "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"
}
- ]
- },
- {
- "begin": "(<)(?i:(cfset|cfreturn))\\b",
+ ],
"beginCaptures": {
"1": {
"name": "punctuation.definition.tag.begin.cfml"
},
"2": {
- "name": "entity.name.tag.cf.inline.declaration.cfml"
+ "name": "entity.name.tag.cf.function.cfml"
}
},
- "end": "((?:\\s?/)?>)",
"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"
}
- ]
- },
- {
- "begin": "(?x)\n\t\t\t\t(<)\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",
+ ],
"beginCaptures": {
"1": {
"name": "punctuation.definition.tag.begin.cfml"
},
"2": {
- "name": "entity.name.tag.cf.inline.other.cfml"
+ "name": "entity.name.tag.cf.inline.declaration.cfml"
}
},
- "end": "((?:\\s?/)?>)",
"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"
}
- ]
- },
- {
- "begin": "(?:^\\s+)?(<)((?i:cfquery))\\b(?![^>]*/>)",
- "captures": {
- "0": {
- "name": "meta.tag.block.cf.query.cfml"
- },
+ ],
+ "beginCaptures": {
"1": {
"name": "punctuation.definition.tag.begin.cfml"
},
"2": {
- "name": "entity.name.tag.cf.query.cfml"
- },
- "3": {
- "name": "punctuation.definition.tag.end.cfml"
+ "name": "entity.name.tag.cf.inline.other.cfml"
}
},
- "end": "(</)((?i:cfquery))(>)(?:\\s*\\n)?",
+ "endCaptures": {
+ "1": {
+ "name": "punctuation.definition.tag.end.cfml"
+ }
+ }
+ },
+ {
+ "begin": "(?:^\\s+)?(\u003c)((?i:cfquery))\\b(?![^\u003e]*/\u003e)",
+ "end": "(\u003c/)((?i:cfquery))(\u003e)(?:\\s*\\n)?",
"patterns": [
{
- "begin": "(?<=cfquery)\\s",
- "end": "(?=>)",
"name": "meta.tag.block.cf.output.cfml",
+ "begin": "(?\u003c=cfquery)\\s",
+ "end": "(?=\u003e)",
"patterns": [
{
"include": "#qry-name-attribute"
},
{
"include": "#tag-stuff"
}
]
},
{
- "begin": "(>)",
- "beginCaptures": {
- "0": {
- "name": "meta.tag.block.cf.query.cfml"
- },
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- },
"contentName": "source.sql.embedded.cfml",
- "end": "(?=</(?i:cfquery))",
+ "begin": "(\u003e)",
+ "end": "(?=\u003c/(?i:cfquery))",
"patterns": [
{
"include": "#string-double-quoted"
},
{
@@ -167,570 +146,590 @@
},
{
"include": "#embedded-tags"
},
{
- "begin": "(</?)((?i:(?:cfqueryparam))\\b)",
+ "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"
}
},
- "end": "((?:\\s?/)?>)",
"endCaptures": {
"1": {
"name": "punctuation.definition.tag.end.cfml"
}
- },
- "name": "meta.tag.inline.cf.query-param.cfml",
- "patterns": [
- {
- "include": "#tag-stuff"
- }
- ]
+ }
},
{
"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"
},
{
- "begin": "(?x)\n\t\t\t\t(</?)\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",
+ "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"
}
},
- "end": "(>)",
"endCaptures": {
"1": {
"name": "punctuation.definition.tag.end.cfml"
}
- },
- "name": "meta.tag.block.cf.other.cfml",
- "patterns": [
- {
- "include": "#tag-stuff"
- }
- ]
+ }
}
],
"repository": {
- "embedded-tags": {
+ "cfcomments": {
"patterns": [
{
- "include": "#cfcomments"
+ "name": "comment.line.cfml",
+ "match": "\u003c!---.*?---\u003e"
},
{
- "include": "#conditionals"
- },
- {
- "include": "#flow-control"
- },
- {
- "include": "#exception-handling"
- },
- {
- "include": "#cfoutput"
- },
- {
- "include": "#cfmail"
+ "name": "comment.block.cfml",
+ "begin": "\u003c!---",
+ "end": "---\u003e",
+ "patterns": [
+ {
+ "include": "#cfcomments"
+ }
+ ],
+ "captures": {
+ "0": {
+ "name": "punctuation.definition.comment.cfml"
+ }
+ }
}
]
},
- "flow-control": {
+ "cfmail": {
+ "begin": "(?:^\\s+)?(\u003c)((?i:cfmail))\\b(?![^\u003e]*/\u003e)",
+ "end": "(\u003c/)((?i:cfmail))(\u003e)(?:\\s*\\n)?",
"patterns": [
{
- "begin": "(?x)\n\t\t\t\t\t\t(</?)\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",
- "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"
- }
- },
- "end": "(>)",
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.tag.end.cfml"
- }
- },
- "name": "meta.tag.block.cf.flow-control.cfml",
+ "name": "meta.tag.block.cf.mail.cfml",
+ "begin": "(?\u003c=cfmail)\\s",
+ "end": "(?=\u003e)",
"patterns": [
{
"include": "#tag-stuff"
}
]
- }
- ]
- },
- "exception-handling": {
- "patterns": [
+ },
{
- "begin": "(?x)\n\t\t\t\t\t\t(</?)\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",
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
+ "contentName": "meta.scope.between-mail-tags.cfml",
+ "begin": "(\u003e)",
+ "end": "(?=\u003c/(?i:cfmail))",
+ "patterns": [
+ {
+ "include": "#nest-hash"
},
- "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"
+ {
+ "include": "text.html.cfm"
}
- },
- "end": "(>)",
- "endCaptures": {
+ ],
+ "beginCaptures": {
+ "0": {
+ "name": "meta.tag.block.cf.mail.cfml"
+ },
"1": {
"name": "punctuation.definition.tag.end.cfml"
}
- },
- "name": "meta.tag.block.cf.exceptions.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": [
{
- "begin": "(</?)((?i:cfif))\\b",
+ "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"
}
},
- "end": "(>)",
"endCaptures": {
"1": {
"name": "punctuation.definition.tag.end.cfml"
}
- },
- "name": "meta.tag.block.cf.conditional.cfml",
+ }
+ },
+ {
+ "name": "meta.tag.inline.cf.conditional.cfml",
"contentName": "source.cfscript.embedded.cfml",
+ "begin": "(\u003c/?)(?i:(cfelseif|cfelse))",
+ "end": "(\u003e)",
"patterns": [
{
"include": "source.cfscript"
}
- ]
- },
- {
- "begin": "(</?)(?i:(cfelseif|cfelse))",
+ ],
"captures": {
"1": {
"name": "punctuation.definition.tag.begin.cfml"
},
"2": {
"name": "entity.name.tag.cf.conditional.cfml"
}
},
- "end": "(>)",
"endCaptures": {
"1": {
"name": "punctuation.definition.tag.end.cfml"
}
- },
- "name": "meta.tag.inline.cf.conditional.cfml",
- "contentName": "source.cfscript.embedded.cfml",
- "patterns": [
- {
- "include": "source.cfscript"
- }
- ]
+ }
}
]
},
- "cfoutput": {
- "begin": "(?:^\\s+)?(<)((?i:cfoutput))\\b(?![^>]*/>)",
- "captures": {
- "0": {
- "name": "meta.tag.block.cf.output.cfml"
+ "embedded-tags": {
+ "patterns": [
+ {
+ "include": "#cfcomments"
},
- "1": {
- "name": "punctuation.definition.tag.begin.cfml"
+ {
+ "include": "#conditionals"
},
- "2": {
- "name": "entity.name.tag.cf.output.cfml"
+ {
+ "include": "#flow-control"
},
- "3": {
- "name": "punctuation.definition.tag.end.cfml"
+ {
+ "include": "#exception-handling"
+ },
+ {
+ "include": "#cfoutput"
+ },
+ {
+ "include": "#cfmail"
}
- },
- "end": "(</)((?i:cfoutput))(>)(?:\\s*\\n)?",
+ ]
+ },
+ "entities": {
"patterns": [
{
- "begin": "(?<=cfoutput)\\s",
- "end": "(?=>)",
- "name": "meta.tag.block.cf.output.cfml",
+ "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"
}
- ]
- },
- {
- "begin": "(>)",
+ ],
"beginCaptures": {
- "0": {
- "name": "meta.tag.block.cf.output.cfml"
+ "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"
}
- },
- "end": "(?=</(?i:cfoutput))",
- "contentName": "meta.scope.between-output-tags.cfml",
- "patterns": [
- {
- "include": "#nest-hash"
- },
- {
- "include": "text.html.cfm"
- }
- ]
+ }
}
]
},
- "cfmail": {
- "begin": "(?:^\\s+)?(<)((?i:cfmail))\\b(?![^>]*/>)",
- "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"
- }
- },
- "end": "(</)((?i:cfmail))(>)(?:\\s*\\n)?",
+ "flow-control": {
"patterns": [
{
- "begin": "(?<=cfmail)\\s",
- "end": "(?=>)",
- "name": "meta.tag.block.cf.mail.cfml",
+ "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"
}
- ]
- },
- {
- "begin": "(>)",
+ ],
"beginCaptures": {
- "0": {
- "name": "meta.tag.block.cf.mail.cfml"
+ "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"
}
- },
- "end": "(?=</(?i:cfmail))",
- "contentName": "meta.scope.between-mail-tags.cfml",
- "patterns": [
- {
- "include": "#nest-hash"
- },
- {
- "include": "text.html.cfm"
- }
- ]
+ }
}
]
},
"func-name-attribute": {
- "begin": "\\b(name)\\b\\s*(=)",
- "captures": {
- "1": {
- "name": "entity.other.attribute-name.cfml"
- },
- "2": {
- "name": "punctuation.separator.key-value.cfml"
- }
- },
- "end": "(?<='|\")",
"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"
}
},
- "contentName": "meta.toc-list.function.cfml",
- "end": "\"",
"endCaptures": {
"0": {
"name": "punctuation.definition.string.end.cfml"
}
- },
- "name": "string.quoted.double.cfml",
+ }
+ },
+ {
+ "name": "string.quoted.single.cfml",
+ "contentName": "meta.toc-list.function.cfml",
+ "begin": "'",
+ "end": "'",
"patterns": [
{
"include": "#entities"
}
- ]
- },
- {
- "begin": "'",
+ ],
"beginCaptures": {
"0": {
"name": "punctuation.definition.string.begin.cfml"
}
},
- "contentName": "meta.toc-list.function.cfml",
- "end": "'",
"endCaptures": {
"0": {
"name": "punctuation.definition.string.end.cfml"
}
- },
- "name": "string.quoted.single.cfml",
- "patterns": [
- {
- "include": "#entities"
- }
- ]
+ }
}
- ]
- },
- "qry-name-attribute": {
- "begin": "\\b(name)\\b\\s*(=)",
+ ],
"captures": {
"1": {
"name": "entity.other.attribute-name.cfml"
},
"2": {
"name": "punctuation.separator.key-value.cfml"
}
- },
- "end": "(?<='|\")",
- "name": "meta.attribute-with-value.name.cfml",
+ }
+ },
+ "nest-hash": {
"patterns": [
{
- "begin": "\"",
+ "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": {
- "0": {
- "name": "punctuation.definition.string.begin.cfml"
+ "1": {
+ "name": "punctuation.definition.hash.begin.cfml"
}
},
- "contentName": "meta.toc-list.query.cfml",
- "end": "\"",
"endCaptures": {
- "0": {
- "name": "punctuation.definition.string.end.cfml"
+ "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"
}
- ]
- },
- {
- "begin": "'",
+ ],
"beginCaptures": {
"0": {
"name": "punctuation.definition.string.begin.cfml"
}
},
- "contentName": "meta.toc-list.query.name.cfml",
- "end": "'",
"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"
}
- ]
- }
- ]
- },
- "cfcomments": {
- "patterns": [
- {
- "match": "<!---.*?--->",
- "name": "comment.line.cfml"
- },
- {
- "begin": "<!---",
- "captures": {
+ ],
+ "beginCaptures": {
"0": {
- "name": "punctuation.definition.comment.cfml"
+ "name": "punctuation.definition.string.begin.cfml"
}
},
- "end": "--->",
- "name": "comment.block.cfml",
- "patterns": [
- {
- "include": "#cfcomments"
+ "endCaptures": {
+ "0": {
+ "name": "punctuation.definition.string.end.cfml"
}
- ]
+ }
}
- ]
+ ],
+ "captures": {
+ "1": {
+ "name": "entity.other.attribute-name.cfml"
+ },
+ "2": {
+ "name": "punctuation.separator.key-value.cfml"
+ }
+ }
},
- "tag-stuff": {
+ "string-double-quoted": {
+ "name": "string.quoted.double.cfml",
+ "begin": "\"",
+ "end": "\"",
"patterns": [
{
- "include": "#cfcomments"
+ "include": "#nest-hash"
},
{
- "include": "#tag-generic-attribute"
- },
- {
- "include": "#string-double-quoted"
- },
- {
- "include": "#string-single-quoted"
+ "include": "#entities"
}
- ]
- },
- "tag-generic-attribute": {
- "match": "\\b([a-zA-Z\\-:]+)",
- "name": "entity.other.attribute-name.cfml"
- },
- "string-double-quoted": {
- "begin": "\"",
+ ],
"beginCaptures": {
"0": {
"name": "punctuation.definition.string.begin.cfml"
}
},
- "end": "\"",
"endCaptures": {
"0": {
"name": "punctuation.definition.string.end.cfml"
}
- },
- "name": "string.quoted.double.cfml",
+ }
+ },
+ "string-single-quoted": {
+ "name": "string.quoted.single.cfml",
+ "begin": "'",
+ "end": "'",
"patterns": [
{
"include": "#nest-hash"
},
{
"include": "#entities"
}
- ]
- },
- "string-single-quoted": {
- "begin": "'",
+ ],
"beginCaptures": {
"0": {
"name": "punctuation.definition.string.begin.cfml"
}
},
- "end": "'",
"endCaptures": {
"0": {
"name": "punctuation.definition.string.end.cfml"
}
- },
- "name": "string.quoted.single.cfml",
- "patterns": [
- {
- "include": "#nest-hash"
- },
- {
- "include": "#entities"
- }
- ]
+ }
},
- "entities": {
+ "tag-generic-attribute": {
+ "name": "entity.other.attribute-name.cfml",
+ "match": "\\b([a-zA-Z\\-:]+)"
+ },
+ "tag-stuff": {
"patterns": [
{
- "captures": {
- "1": {
- "name": "punctuation.definition.entity.cfml"
- },
- "3": {
- "name": "punctuation.definition.entity.cfml"
- }
- },
- "match": "(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)",
- "name": "constant.character.entity.cfml"
+ "include": "#cfcomments"
},
{
- "match": "&",
- "name": "invalid.illegal.bad-ampersand.cfml"
- }
- ]
- },
- "nest-hash": {
- "patterns": [
- {
- "match": "##",
- "name": "string.escaped.hash.cfml"
+ "include": "#tag-generic-attribute"
},
{
- "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*[\\+\\-\\*\\/&]\\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*&\\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": "invalid.illegal.unescaped.hash.cfml"
+ "include": "#string-double-quoted"
},
{
- "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*[\\+\\-\\*\\/&]\\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*&\\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)",
- "beginCaptures": {
- "1": {
- "name": "punctuation.definition.hash.begin.cfml"
- }
- },
- "end": "(#)",
- "endCaptures": {
- "1": {
- "name": "punctuation.definition.hash.end.cfml"
- }
- },
- "contentName": "source.cfscript.embedded.cfml",
- "name": "meta.name.interpolated.hash.cfml",
- "patterns": [
- {
- "include": "source.cfscript"
- }
- ]
+ "include": "#string-single-quoted"
}
]
}
- },
- "scopeName": "text.cfml.basic",
- "uuid": "C48DE6D0-4226-11E1-B86C-0800200C9A66"
-}
\ No newline at end of file
+ }
+}