You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1202 lines
36 KiB
1202 lines
36 KiB
{
|
|
"scopeName": "text.html.jsp",
|
|
"name": "JavaServer Pages",
|
|
"fileTypes": [
|
|
"jsp",
|
|
"jspf",
|
|
"jspx",
|
|
"tag"
|
|
],
|
|
"injections": {
|
|
"text.html.jsp - (meta.embedded.block.jsp | meta.embedded.line.jsp | meta.tag | comment), meta.tag string.quoted": {
|
|
"patterns": [
|
|
{
|
|
"include": "#comment"
|
|
},
|
|
{
|
|
"include": "#declaration"
|
|
},
|
|
{
|
|
"include": "#expression"
|
|
},
|
|
{
|
|
"include": "#el_expression"
|
|
},
|
|
{
|
|
"include": "#tags"
|
|
},
|
|
{
|
|
"begin": "(^\\s*)(?=<%(?=\\s))",
|
|
"beginCaptures": {
|
|
"0": {
|
|
"name": "punctuation.whitespace.embedded.leading.erb"
|
|
}
|
|
},
|
|
"end": "(?!\\G)(\\s*$\\n)?",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.whitespace.embedded.trailing.erb"
|
|
}
|
|
},
|
|
"patterns": [
|
|
{
|
|
"include": "#scriptlet"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"include": "#scriptlet"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"patterns": [
|
|
{
|
|
"include": "#xml_tags"
|
|
},
|
|
{
|
|
"include": "text.html.basic"
|
|
}
|
|
],
|
|
"repository": {
|
|
"comment": {
|
|
"begin": "<%--",
|
|
"captures": {
|
|
"0": {
|
|
"name": "punctuation.definition.comment.jsp"
|
|
}
|
|
},
|
|
"end": "--%>",
|
|
"name": "comment.block.jsp"
|
|
},
|
|
"declaration": {
|
|
"begin": "<%!",
|
|
"beginCaptures": {
|
|
"0": {
|
|
"name": "punctuation.section.embedded.begin.jsp"
|
|
}
|
|
},
|
|
"contentName": "source.java",
|
|
"end": "(%)>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.section.embedded.end.jsp"
|
|
},
|
|
"1": {
|
|
"name": "source.java"
|
|
}
|
|
},
|
|
"name": "meta.embedded.line.declaration.jsp",
|
|
"patterns": [
|
|
{
|
|
"include": "source.java"
|
|
}
|
|
]
|
|
},
|
|
"el_expression": {
|
|
"begin": "\\$\\{",
|
|
"beginCaptures": {
|
|
"0": {
|
|
"name": "punctuation.section.embedded.begin.jsp"
|
|
}
|
|
},
|
|
"contentName": "source.java",
|
|
"end": "(\\})",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.section.embedded.end.jsp"
|
|
},
|
|
"1": {
|
|
"name": "source.java"
|
|
}
|
|
},
|
|
"name": "meta.embedded.line.el_expression.jsp",
|
|
"patterns": [
|
|
{
|
|
"include": "source.java.el"
|
|
}
|
|
]
|
|
},
|
|
"expression": {
|
|
"begin": "<%=",
|
|
"beginCaptures": {
|
|
"0": {
|
|
"name": "punctuation.section.embedded.begin.jsp"
|
|
}
|
|
},
|
|
"contentName": "source.java",
|
|
"end": "(%)>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.section.embedded.end.jsp"
|
|
},
|
|
"1": {
|
|
"name": "source.java"
|
|
}
|
|
},
|
|
"name": "meta.embedded.line.expression.jsp",
|
|
"patterns": [
|
|
{
|
|
"include": "source.java"
|
|
}
|
|
]
|
|
},
|
|
"scriptlet": {
|
|
"begin": "<%",
|
|
"beginCaptures": {
|
|
"0": {
|
|
"name": "punctuation.section.embedded.begin.jsp"
|
|
}
|
|
},
|
|
"contentName": "source.java",
|
|
"end": "(%)>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.section.embedded.end.jsp"
|
|
},
|
|
"1": {
|
|
"name": "source.java"
|
|
}
|
|
},
|
|
"name": "meta.embedded.block.scriptlet.jsp",
|
|
"patterns": [
|
|
{
|
|
"match": "\\{",
|
|
"name": "punctuation.section.scope.begin.java"
|
|
},
|
|
{
|
|
"match": "\\}",
|
|
"name": "punctuation.section.scope.end.java"
|
|
},
|
|
{
|
|
"include": "source.java"
|
|
}
|
|
]
|
|
},
|
|
"tags": {
|
|
"begin": "(<%@)\\s*(?=(attribute|include|page|tag|taglib|variable)\\s)",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
}
|
|
},
|
|
"end": "%>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.include.jsp",
|
|
"patterns": [
|
|
{
|
|
"begin": "\\G(attribute)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "keyword.control.attribute.jsp"
|
|
}
|
|
},
|
|
"end": "(?=%>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(name|required|fragment|rtexprvalue|type|description)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "\\G(include)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "keyword.control.include.jsp"
|
|
}
|
|
},
|
|
"end": "(?=%>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(file)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "\\G(page)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "keyword.control.page.jsp"
|
|
}
|
|
},
|
|
"end": "(?=%>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(language|extends|import|session|buffer|autoFlush|isThreadSafe|info|errorPage|isErrorPage|contentType|pageEncoding|isElIgnored)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "\\G(tag)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "keyword.control.tag.jsp"
|
|
}
|
|
},
|
|
"end": "(?=%>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(display-name|body-content|dynamic-attributes|small-icon|large-icon|description|example|language|import|pageEncoding|isELIgnored)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "\\G(taglib)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "keyword.control.taglib.jsp"
|
|
}
|
|
},
|
|
"end": "(?=%>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(uri|tagdir|prefix)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "\\G(variable)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "keyword.control.variable.jsp"
|
|
}
|
|
},
|
|
"end": "(?=%>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(name-given|alias|variable-class|declare|scope|description)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"xml_tags": {
|
|
"patterns": [
|
|
{
|
|
"begin": "(^\\s*)(?=<jsp:(declaration|expression|scriptlet)>)",
|
|
"beginCaptures": {
|
|
"0": {
|
|
"name": "punctuation.whitespace.embedded.leading.erb"
|
|
}
|
|
},
|
|
"end": "(?!\\G)(\\s*$\\n)?",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.whitespace.embedded.trailing.erb"
|
|
}
|
|
},
|
|
"patterns": [
|
|
{
|
|
"include": "#embedded"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"include": "#embedded"
|
|
},
|
|
{
|
|
"include": "#directive"
|
|
},
|
|
{
|
|
"include": "#actions"
|
|
}
|
|
],
|
|
"repository": {
|
|
"actions": {
|
|
"patterns": [
|
|
{
|
|
"begin": "(</?)(jsp:attribute)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": ">",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.attribute.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(name|trim)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
},
|
|
"3": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"match": "(</?)(jsp:body)(>)",
|
|
"name": "meta.tag.template.body.jsp"
|
|
},
|
|
{
|
|
"begin": "(</?)(jsp:element)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": ">",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.element.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(name)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(<)(jsp:doBody)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.dobody.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(var|varReader|scope)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(</?)(jsp:forward)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/?>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.forward.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(page)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(<)(jsp:param)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.param.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(name|value)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(<)(jsp:getProperty)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.getproperty.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(name|property)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(</?)(jsp:include)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/?>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.include.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(page|flush)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(<)(jsp:invoke)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.invoke.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(fragment|var|varReader|scope)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(<)(jsp:output)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.output.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(omit-xml-declaration|doctype-root-element|doctype-system|doctype-public)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(</?)(jsp:plugin)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": ">",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.plugin.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(type|code|codebase|name|archive|align|height|hspace|jreversion|nspluginurl|iepluginurl)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
},
|
|
"3": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"end": ">",
|
|
"match": "(</?)(jsp:fallback)(>)",
|
|
"name": "meta.tag.template.fallback.jsp"
|
|
},
|
|
{
|
|
"begin": "(</?)(jsp:root)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": ">",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.root.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(xmlns|version|xmlns:taglibPrefix)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "(<)(jsp:setProperty)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.setproperty.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(name|property|value)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
},
|
|
"3": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"end": ">",
|
|
"match": "(</?)(jsp:text)(>)",
|
|
"name": "meta.tag.template.text.jsp"
|
|
},
|
|
{
|
|
"begin": "(</?)(jsp:useBean)\\b",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/?>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.usebean.jsp",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(id|scope|class|type|beanName)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"directive": {
|
|
"begin": "(<)(jsp:directive\\.(?=(attribute|include|page|tag|variable)\\s))",
|
|
"beginCaptures": {
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "/>",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.tag.template.$3.jsp",
|
|
"patterns": [
|
|
{
|
|
"begin": "\\G(attribute)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "(?=/>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(name|required|fragment|rtexprvalue|type|description)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "\\G(include)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "(?=/>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(file)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "\\G(page)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "(?=/>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(language|extends|import|session|buffer|autoFlush|isThreadSafe|info|errorPage|isErrorPage|contentType|pageEncoding|isElIgnored)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "\\G(tag)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "(?=/>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(display-name|body-content|dynamic-attributes|small-icon|large-icon|description|example|language|import|pageEncoding|isELIgnored)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "\\G(variable)(?=\\s)",
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.name.tag.jsp"
|
|
}
|
|
},
|
|
"end": "(?=/>)",
|
|
"patterns": [
|
|
{
|
|
"captures": {
|
|
"1": {
|
|
"name": "entity.other.attribute-name.jsp"
|
|
},
|
|
"2": {
|
|
"name": "punctuation.separator.key-value.jsp"
|
|
},
|
|
"3": {
|
|
"name": "string.quoted.double.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.string.begin.jsp"
|
|
},
|
|
"5": {
|
|
"name": "punctuation.definition.string.end.jsp"
|
|
}
|
|
},
|
|
"match": "(name-given|alias|variable-class|declare|scope|description)(=)((\")[^\"]*(\"))"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"embedded": {
|
|
"begin": "(<)(jsp:(declaration|expression|scriptlet))(>)",
|
|
"beginCaptures": {
|
|
"0": {
|
|
"name": "meta.tag.template.$3.jsp"
|
|
},
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "entity.name.tag.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"contentName": "source.java",
|
|
"end": "((<)/)(jsp:\\3)(>)",
|
|
"endCaptures": {
|
|
"0": {
|
|
"name": "meta.tag.template.$4.jsp"
|
|
},
|
|
"1": {
|
|
"name": "punctuation.definition.tag.begin.jsp"
|
|
},
|
|
"2": {
|
|
"name": "source.java"
|
|
},
|
|
"3": {
|
|
"name": "entity.name.tag.jsp"
|
|
},
|
|
"4": {
|
|
"name": "punctuation.definition.tag.end.jsp"
|
|
}
|
|
},
|
|
"name": "meta.embedded.block.jsp",
|
|
"patterns": [
|
|
{
|
|
"include": "source.java"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|