Beautify XQuery highlighting rules.

This commit is contained in:
William Candillon 2012-11-08 15:06:35 -08:00 • committed by nightwing
commit d91d4954ea

View file

@ -41,48 +41,47 @@ var XQueryHighlightRules = function() {
// regexp must not have capturing parentheses // regexp must not have capturing parentheses
// regexps are ordered -> the first match is used // regexps are ordered -> the first match is used
this.$rules = { this.$rules = {
start : [ { start: [{
token : "text", token: "text",
regex : "<\\!\\[CDATA\\[", regex: "<\\!\\[CDATA\\[",
next : "cdata" next: "cdata"
}, { }, {
token : "xml-pe", token: "xml-pe",
regex : "<\\?.*?\\?>" regex: "<\\?.*?\\?>"
}, { }, {
token : "comment", token: "comment",
regex : "<\\!--", regex: "<\\!--",
next : "comment" next: "comment"
}, { }, {
token : "comment", token: "comment",
regex : "\\(:", regex: "\\(:",
next : "comment" next: "comment"
}, { }, {
token : "text", // opening tag token: "text", // opening tag
regex : "<\\/?", regex: "<\\/?",
next : "tag" next: "tag"
}, { }, {
token : "constant", // number token: "constant", // number
regex : "[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b" regex: "[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"
}, { }, {
token : "variable", // variable token: "variable", // variable
regex : "\\$[a-zA-Z_][a-zA-Z0-9_\\-:]*\\b" regex: "\\$[a-zA-Z_][a-zA-Z0-9_\\-:]*\\b"
}, { }, {
token: "string", token: "string",
regex : '".*?"' regex: '".*?"'
}, { }, {
token: "string", token: "string",
regex : "'.*?'" regex: "'.*?'"
}, { }, {
token : "text", token: "text",
regex : "\\s+" regex: "\\s+"
}, { }, {
token: "support.function", token: "support.function",
regex: "\\w[\\w+_\\-:]+(?=\\()" regex: "\\w[\\w+_\\-:]+(?=\\()"
}, { }, {
token : keywordMapper, token: keywordMapper,
regex : "[a-zA-Z_$][a-zA-Z0-9_$]*\\b" regex: "[a-zA-Z_$][a-zA-Z0-9_$]*\\b"
}, { }, {
token: "keyword.operator", token: "keyword.operator",
regex: "\\*|=|<|>|\\-|\\+" regex: "\\*|=|<|>|\\-|\\+"
@ -92,50 +91,50 @@ var XQueryHighlightRules = function() {
}, { }, {
token: "rparen", token: "rparen",
regex: "[\\])}]" regex: "[\\])}]"
} ], }],
tag : [ { tag: [{
token : "text", token: "text",
regex : ">", regex: ">",
next : "start" next: "start"
}, { }, {
token : "meta.tag", token: "meta.tag",
regex : "[-_a-zA-Z0-9:]+" regex: "[-_a-zA-Z0-9:]+"
}, { }, {
token : "text", token: "text",
regex : "\\s+" regex: "\\s+"
}, { }, {
token : "string", token: "string",
regex : '".*?"' regex: '".*?"'
}, { }, {
token : "string", token: "string",
regex : "'.*?'" regex: "'.*?'"
} ], }],
cdata : [ { cdata: [{
token : "comment", token: "comment",
regex : "\\]\\]>", regex: "\\]\\]>",
next : "start" next: "start"
}, {
token : "comment",
regex : "\\s+"
}, {
token : "comment",
regex : "(?:[^\\]]|\\](?!\\]>))+"
} ],
comment : [ {
token : "comment",
regex : ".*?-->",
next : "start"
}, { }, {
token: "comment", token: "comment",
regex : ".*:\\)", regex: "\\s+"
next : "start"
}, { }, {
token : "comment", token: "comment",
regex : ".+" regex: "(?:[^\\]]|\\](?!\\]>))+"
} ] }],
comment: [{
token: "comment",
regex: ".*?-->",
next: "start"
}, {
token: "comment",
regex: ".*:\\)",
next: "start"
}, {
token: "comment",
regex: ".+"
}]
}; };
}; };