meteor-api/grammars/meteor-api-grammar-spacebars.cson

489 lines
14 KiB
Text

"name": "Spacebars"
"repository":
"html_tags":
"patterns": [
"begin": "(<)([a-zA-Z0-9:]+)(?=[^>]*></\\2>)"
"beginCaptures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.html"
"end": "(>(<)/)(\\2)(>)"
"endCaptures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "meta.scope.between-tag-pair.html"
"3":
"name": "entity.name.tag.html"
"4":
"name": "punctuation.definition.tag.html"
"name": "meta.tag.any.html"
"patterns": [
"include": "#tag-stuff"
]
,
"begin": "(<\\?)(xml)"
"captures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.xml.html"
"end": "(\\?>)"
"name": "meta.tag.preprocessor.xml.html"
"patterns": [
"include": "#tag-generic-attribute"
,
"include": "#string-double-quoted"
,
"include": "#string-single-quoted"
]
,
"begin": "<!--"
"captures":
"0":
"name": "punctuation.definition.comment.html"
"end": "--\\s*>"
"name": "comment.block.html"
"patterns": [
"match": "--"
"name": "invalid.illegal.bad-comments-or-CDATA.html"
]
,
"begin": "<!"
"captures":
"0":
"name": "punctuation.definition.tag.html"
"end": ">"
"name": "meta.tag.sgml.html"
"patterns": [
"begin": "(DOCTYPE|doctype)"
"captures":
"1":
"name": "entity.name.tag.doctype.html"
"end": "(?=>)"
"name": "meta.tag.sgml.doctype.html"
"patterns": [
"match": "\"[^\">]*\""
"name": "string.quoted.double.doctype.identifiers-and-DTDs.html"
]
,
"begin": "\\[CDATA\\["
"end": "]](?=>)"
"name": "constant.other.inline-data.html"
,
"match": "(\\s*)(?!--|>)\\S(\\s*)"
"name": "invalid.illegal.bad-comments-or-CDATA.html"
]
,
"begin": "(?:^\\s+)?(<)((?i:style))\\b(?![^>]*/>)"
"captures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.style.html"
"3":
"name": "punctuation.definition.tag.html"
"end": "(</)((?i:style))(>)(?:\\s*\\n)?"
"name": "source.css.embedded.html"
"patterns": [
"include": "#tag-stuff"
,
"begin": "(>)"
"beginCaptures":
"1":
"name": "punctuation.definition.tag.html"
"end": "(?=</(?i:style))"
"patterns": [
"include": "source.css"
]
]
,
"begin": "(?:^\\s+)?(<)((?i:script))\\b(?![^>]*/>)"
"beginCaptures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.script.html"
"end": "(?<=</(script|SCRIPT))(>)(?:\\s*\\n)?"
"endCaptures":
"2":
"name": "punctuation.definition.tag.html"
"name": "source.js.embedded.html"
"patterns": [
"include": "#tag-stuff"
,
"begin": "(?<!</(?:script|SCRIPT))(>)"
"captures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.script.html"
"end": "(</)((?i:script))"
"patterns": [
"captures":
"1":
"name": "punctuation.definition.comment.js"
"match": "(//).*?((?=</script)|$\\n?)"
"name": "comment.line.double-slash.js"
,
"begin": "/\\*"
"captures":
"0":
"name": "punctuation.definition.comment.js"
"end": "\\*/|(?=</script)"
"name": "comment.block.js"
,
"include": "source.js"
]
]
,
"begin": "(</?)((?i:body|head|html)\\b)"
"captures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.structure.any.html"
"end": "(>)"
"name": "meta.tag.structure.any.html"
"patterns": [
"include": "#tag-stuff"
]
,
"begin": "(</?)((?i:address|blockquote|dd|div|header|section|footer|aside|nav|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)\\b)"
"captures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.block.any.html"
"end": "(>)"
"name": "meta.tag.block.any.html"
"patterns": [
"include": "#tag-stuff"
]
,
"begin": "(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)\\b)"
"captures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.inline.any.html"
"end": "((?: ?/)?>)"
"name": "meta.tag.inline.any.html"
"patterns": [
"include": "#tag-stuff"
]
,
"begin": "(</?)([a-zA-Z0-9:]+)"
"captures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.other.html"
"end": "(>)"
"name": "meta.tag.other.html"
"patterns": [
"include": "#tag-stuff"
]
,
"include": "#entities"
,
"match": "<>"
"name": "invalid.illegal.incomplete.html"
,
"match": "<"
"name": "invalid.illegal.bad-angle-bracket.html"
]
"entities":
"patterns": [
"captures":
"1":
"name": "punctuation.definition.entity.html"
"3":
"name": "punctuation.definition.entity.html"
"match": "(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)"
"name": "constant.character.entity.html"
,
"match": "&"
"name": "invalid.illegal.bad-ampersand.html"
]
"end_block":
"begin": "(\\{\\{~?/)([a-zA-Z0-9_\\.-]+)\\s*"
"end": "(~?\\}\\})"
"name": "meta.function.block.end.spacebars"
"endCaptures":
"1":
"name": "support.constant.spacebars"
"beginCaptures":
"1":
"name": "support.constant.spacebars"
"2":
"name": "support.constant.spacebars"
"patterns": []
"yfm":
"patterns": [
"patterns": [
"include": "source.yaml"
]
"begin": "(?<!\\s)---\\n$"
"end": "^---\\s"
"name": "markup.raw.yaml.front-matter"
]
"comments":
"patterns": [
"patterns": [
"name": "keyword.annotation.spacebars"
"match": "@\\w*"
,
"include": "#comments"
]
"begin": "\\{\\{![^<]"
"end": "\\}\\}"
"name": "comment.block.spacebars"
,
"captures":
"0":
"name": "punctuation.definition.comment.html"
"begin": "<!--"
"end": "-{2,3}\\s*>"
"name": "comment.block.html"
"patterns": [
"name": "invalid.illegal.bad-comments-or-CDATA.html"
"match": "--"
]
]
"block_comments":
"patterns": [
"patterns": [
"name": "keyword.annotation.spacebars"
"match": "@\\w*"
,
"include": "#comments"
]
"begin": "\\{\\{!--"
"end": "--\\}\\}"
"name": "comment.block.spacebars"
,
"captures":
"0":
"name": "punctuation.definition.comment.html"
"begin": "<!--"
"end": "-{2,3}\\s*>"
"name": "comment.block.html"
"patterns": [
"name": "invalid.illegal.bad-comments-or-CDATA.html"
"match": "--"
]
]
"entities":
"patterns": [
"captures":
"1":
"name": "punctuation.definition.entity.html"
"3":
"name": "punctuation.definition.entity.html"
"name": "constant.character.entity.html"
"match": "(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)"
,
"name": "invalid.illegal.bad-ampersand.html"
"match": "&"
]
"block_helper":
"begin": "(\\{\\{~?\\#)([-a-zA-Z0-9_\\./]+)\\s+(@?[-a-zA-Z0-9_\\./]+)*"
"end": "(~?\\}\\})"
"name": "meta.function.block.start.spacebars"
"endCaptures":
"1":
"name": "support.constant.spacebars"
"beginCaptures":
"1":
"name": "support.constant.spacebars"
"3":
"name": "variable.parameter.spacebars"
"2":
"name": "support.constant.spacebars"
"patterns": [
"include": "#string-single-quoted"
,
"include": "#string-double-quoted"
]
"string-single-quoted":
"begin": "'"
"end": "'"
"name": "string.quoted.single.spacebars"
"endCaptures":
"0":
"name": "punctuation.definition.string.end.html"
"beginCaptures":
"0":
"name": "punctuation.definition.string.begin.html"
"patterns": [
"include": "#block_comments"
,
"include": "#comments"
,
"include": "#block_helper"
,
"include": "#end_block"
,
"include": "#partial_and_var"
]
"partial_and_var":
"begin": "(\\{\\{~?\\{*(>|!<)*)\\s*(@?[-a-zA-Z0-9_\\./]+)*"
"end": "(~?\\}\\}\\}*)"
"name": "meta.function.inline.other.spacebars"
"endCaptures":
"1":
"name": "support.constant.spacebars"
"beginCaptures":
"1":
"name": "support.constant.spacebars"
"3":
"name": "variable.parameter.spacebars"
"patterns": [
"include": "#string-single-quoted"
,
"include": "#string-double-quoted"
]
"string-double-quoted":
"begin": "\""
"end": "\""
"name": "string.quoted.double.spacebars"
"endCaptures":
"0":
"name": "punctuation.definition.string.end.html"
"beginCaptures":
"0":
"name": "punctuation.definition.string.begin.html"
"patterns": [
"include": "#block_comments"
,
"include": "#comments"
,
"include": "#block_helper"
,
"include": "#end_block"
,
"include": "#partial_and_var"
]
"inline_script":
"begin": "(?:^\\s+)?(<)((?i:script))\\b(?:.*(type)=([\"'](?:text/x-spacebars-template|text/x-spacebars|text/template)[\"']))(?![^>]*/>)"
"beginCaptures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.script.html"
"3":
"name": "entity.other.attribute-name.html"
"4":
"name": "string.quoted.double.html"
"end": "(?<=</(script|SCRIPT))(>)(?:\\s*\\n)?"
"endCaptures":
"2":
"name": "punctuation.definition.tag.html"
"name": "source.spacebars.embedded.html"
"patterns": [
"include": "#tag-stuff"
,
"begin": "(?<!</(?:script|SCRIPT))(>)"
"captures":
"1":
"name": "punctuation.definition.tag.html"
"2":
"name": "entity.name.tag.script.html"
"end": "(</)((?i:script))"
"patterns": [
"include": "#block_comments"
,
"include": "#comments"
,
"include": "#block_helper"
,
"include": "#end_block"
,
"include": "#partial_and_var"
,
"include": "#html_tags"
,
"include": "text.html.basic"
]
]
"tag_generic_attribute":
"begin": "\\b([a-zA-Z0-9_-]+)\\b\\s*(=)"
"captures":
"1":
"name": "entity.other.attribute-name.generic.html"
"2":
"name": "punctuation.separator.key-value.html"
"patterns": [
"include": "#string-single-quoted"
,
"include": "#string-double-quoted"
]
"name": "entity.other.attribute-name.html"
"end": "(?<='|\"|)"
"tag_id_attribute":
"begin": "\\b(id)\\b\\s*(=)"
"captures":
"1":
"name": "entity.other.attribute-name.id.html"
"2":
"name": "punctuation.separator.key-value.html"
"end": "(?<='|\"|)"
"name": "meta.attribute-with-value.id.html"
"patterns": [
"include": "#string-single-quoted"
,
"include": "#string-double-quoted"
]
"tag-stuff":
"patterns": [
"include": "#tag_id_attribute"
,
"include": "#tag_generic_attribute"
,
"include": "#string-double-quoted"
,
"include": "#string-single-quoted"
,
"include": "#block_comments"
,
"include": "#comments"
,
"include": "#block_helper"
,
"include": "#end_block"
,
"include": "#partial_and_var"
]
"scopeName": "text.html.spacebars"
"patterns": [
"include": "#yfm"
,
"include": "#block_comments"
,
"include": "#comments"
,
"include": "#block_helper"
,
"include": "#end_block"
,
"include": "#partial_and_var"
,
"include": "#inline_script"
,
"include": "#html_tags"
,
"include": "text.html.basic"
]
"fileTypes": [
"html"
,
"handlebars"
,
"hbs"
,
"handlebars.erb"
,
"hbs.erb"
]