Merge branch 'highlighting/xmlrefactor' into master

Conflicts:
	lib/ace/ext/modelist.js
	lib/ace/mode/_test/tokens_luapage.json
This commit is contained in:
nightwing 2013-07-14 06:23:24 +04:00
commit 386f1ecade
40 changed files with 1779 additions and 1632 deletions

View file

@ -1,3 +1,4 @@
<!DOCTYPE html>
<html> <html>
<head> <head>

View file

@ -1,3 +1,20 @@
<!DOCTYPE html>
<html>
<head>
<title>My Webpage</title>
</head>
<body>
<ul id="navigation">
{% for item in navigation %}
<li><a href="{{ item.href|escape }}">{{ item.caption }}</a></li>
{% endfor %}
</ul>
{% if 1 not in [1, 2, 3] %}
{# is equivalent to #}
{% if not (1 in [1, 2, 3]) %}
{% autoescape true %} {% autoescape true %}
{{ var }} {{ var }}
{{ var|raw }} {# var won't be escaped #} {{ var|raw }} {# var won't be escaped #}
@ -7,3 +24,7 @@
{{ include('twig.html', sandboxed = true) }} {{ include('twig.html', sandboxed = true) }}
{{"string #{with} \" escapes" 'another#one' }} {{"string #{with} \" escapes" 'another#one' }}
<h1>My Webpage</h1>
{{ a_variable }}
</body>
</html>

View file

@ -65,7 +65,7 @@ var supportedModes = {
Erlang: ["erl|hrl"], Erlang: ["erl|hrl"],
EJS: ["ejs"], EJS: ["ejs"],
Forth: ["frt|fs|ldr"], Forth: ["frt|fs|ldr"],
ftl: ["ftl"], FTL: ["ftl"],
Glsl: ["glsl|frag|vert"], Glsl: ["glsl|frag|vert"],
golang: ["go"], golang: ["go"],
Groovy: ["groovy"], Groovy: ["groovy"],
@ -144,7 +144,7 @@ var nameOverrides = {
C_Cpp: "C/C++", C_Cpp: "C/C++",
coffee: "CoffeeScript", coffee: "CoffeeScript",
HTML_Ruby: "HTML (Ruby)", HTML_Ruby: "HTML (Ruby)",
ftl: "FreeMarker" FTL: "FreeMarker"
}; };
var modesByName = {}; var modesByName = {};
for (var name in supportedModes) { for (var name in supportedModes) {

View file

@ -5,22 +5,22 @@
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","cfset"], ["meta.tag.name","cfset"],
["text"," "], ["text"," "],
["entity.other.attribute-name","welcome"], ["entity.other.attribute-name","welcome"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"Hello World!\""], ["string","\"Hello World!\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","cfoutput"], ["meta.tag.name","cfoutput"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","#welcome#"], ["text","#welcome#"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","cfoutput"], ["meta.tag.name","cfoutput"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
]] ]]

View file

@ -76,13 +76,13 @@
"media", "media",
["string","@keyframes blink {"] ["string","@keyframes blink {"]
],[ ],[
"media_ruleset", ["ruleset","media"],
["text"," "], ["text"," "],
["constant","0"], ["constant","0"],
["text","% "], ["text","% "],
["paren.lparen","{"] ["paren.lparen","{"]
],[ ],[
"media_ruleset", ["ruleset","media"],
["text"," "], ["text"," "],
["support.type","opacity"], ["support.type","opacity"],
["text",": "], ["text",": "],
@ -93,13 +93,13 @@
["text"," "], ["text"," "],
["paren.rparen","}"] ["paren.rparen","}"]
],[ ],[
"media_ruleset", ["ruleset","media"],
["text"," "], ["text"," "],
["constant","40"], ["constant","40"],
["text","% "], ["text","% "],
["paren.lparen","{"] ["paren.lparen","{"]
],[ ],[
"media_ruleset", ["ruleset","media"],
["text"," "], ["text"," "],
["support.type","opacity"], ["support.type","opacity"],
["text",": "], ["text",": "],
@ -110,14 +110,14 @@
["text"," "], ["text"," "],
["paren.rparen","}"] ["paren.rparen","}"]
],[ ],[
"media_ruleset", ["ruleset","media"],
["text"," "], ["text"," "],
["constant","40"], ["constant","40"],
["variable",".5"], ["variable",".5"],
["text","% "], ["text","% "],
["paren.lparen","{"] ["paren.lparen","{"]
],[ ],[
"media_ruleset", ["ruleset","media"],
["text"," "], ["text"," "],
["support.type","opacity"], ["support.type","opacity"],
["text",": "], ["text",": "],
@ -127,13 +127,13 @@
["text"," "], ["text"," "],
["paren.rparen","}"] ["paren.rparen","}"]
],[ ],[
"media_ruleset", ["ruleset","media"],
["text"," "], ["text"," "],
["constant","100"], ["constant","100"],
["text","% "], ["text","% "],
["paren.lparen","{"] ["paren.lparen","{"]
],[ ],[
"media_ruleset", ["ruleset","media"],
["text"," "], ["text"," "],
["support.type","opacity"], ["support.type","opacity"],
["text",": "], ["text",": "],

View file

@ -9,48 +9,48 @@
["text","tokenize embedded script"] ["text","tokenize embedded script"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin.script","<"],
["meta.tag.tag-name.script","script"], ["meta.tag.name.script","script"],
["text"," "], ["text"," "],
["entity.other.attribute-name","a"], ["entity.other.attribute-name","a"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","'a'"], ["string","'a'"],
["meta.tag.r",">"], ["punctuation.meta.tag.end.script",">"],
["storage.type","var"], ["storage.type","var"],
["meta.tag","</"], ["punctuation.meta.tag.begin.script","</"],
["meta.tag.tag-name.script","script"], ["meta.tag.name.script","script"],
["meta.tag.r",">"], ["punctuation.meta.tag.end.script",">"],
["text","'123'"] ["text","'123'"]
],[ ],[
"start", "start",
["text","tokenize multiline attribute value with double quotes"] ["text","tokenize multiline attribute value with double quotes"]
],[ ],[
"tag_qqstring", ["qqstring_inner","start_tag_stuff"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["text"," "], ["text"," "],
["entity.other.attribute-name","href"], ["entity.other.attribute-name","href"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"abc{{xyz}}"] ["string","\"abc{{xyz}}"]
],[ ],[
"start", "start",
["string","def\""], ["string","def\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","tokenize multiline attribute value with single quotes"] ["text","tokenize multiline attribute value with single quotes"]
],[ ],[
"tag_qstring", ["qstring_inner","start_tag_stuff"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["text"," "], ["text"," "],
["entity.other.attribute-name","href"], ["entity.other.attribute-name","href"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","'abc"] ["string","'abc"]
],[ ],[
"start", "start",
["string","def\\\"'"], ["string","def\\\"'"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
]] ]]

View file

@ -28,13 +28,13 @@
["text"," "], ["text"," "],
["keyword","/>"] ["keyword","/>"]
],[ ],[
"comment", "ftl-dcomment",
["comment","<#--"] ["comment","<#--"]
],[ ],[
"comment", "ftl-dcomment",
["comment"," FreeMarker comment"] ["comment"," FreeMarker comment"]
],[ ],[
"comment", "ftl-dcomment",
["comment"," ${abc} <#assign a=12 />"] ["comment"," ${abc} <#assign a=12 />"]
],[ ],[
"start", "start",
@ -43,100 +43,103 @@
"start" "start"
],[ ],[
"start", "start",
["xml-pe","<!DOCTYPE html>"] ["punctuation.doctype.begin","<!"],
["keyword.doctype","DOCTYPE"],
["text"," html"],
["punctuation.doctype.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["text"," "], ["text"," "],
["entity.other.attribute-name","lang"], ["entity.other.attribute-name","lang"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"en-us\""], ["string","\"en-us\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","head"], ["meta.tag.name","head"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","meta"], ["meta.tag.name","meta"],
["text"," "], ["text"," "],
["entity.other.attribute-name","charset"], ["entity.other.attribute-name","charset"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"utf-8\""], ["string","\"utf-8\""],
["text"," "], ["text"," "],
["meta.tag.r","/>"] ["punctuation.meta.tag.end","/>"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","title"], ["meta.tag.name","title"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["string.interpolated","${"], ["string.interpolated","${"],
["variable","title"], ["variable","title"],
["keyword.operator","!"], ["keyword.operator","!"],
["string","\"FreeMarker\""], ["string","\"FreeMarker\""],
["string.interpolated","}"], ["string.interpolated","}"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","title"], ["meta.tag.name","title"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","head"], ["meta.tag.name","head"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","body"], ["meta.tag.name","body"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h1"], ["meta.tag.name","h1"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Hello "], ["text","Hello "],
["string.interpolated","${"], ["string.interpolated","${"],
["variable","name"], ["variable","name"],
["keyword.operator","!"], ["keyword.operator","!"],
["string","\"\""], ["string","\"\""],
["string.interpolated","}"], ["string.interpolated","}"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h1"], ["meta.tag.name","h1"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Today is: "], ["text","Today is: "],
["string.interpolated","${"], ["string.interpolated","${"],
["language.variable",".now"], ["language.variable",".now"],
["support.function","?date"], ["support.function","?date"],
["string.interpolated","}"], ["string.interpolated","}"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
@ -182,9 +185,9 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","ul"], ["meta.tag.name","ul"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -199,9 +202,9 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","li"], ["meta.tag.name","li"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["string.interpolated","${"], ["string.interpolated","${"],
["variable","item_index"], ["variable","item_index"],
["string.interpolated","}"], ["string.interpolated","}"],
@ -219,9 +222,9 @@
["constant.numeric","0"], ["constant.numeric","0"],
["paren.rparen","]"], ["paren.rparen","]"],
["string.interpolated","}"], ["string.interpolated","}"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","li"], ["meta.tag.name","li"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -230,9 +233,9 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","ul"], ["meta.tag.name","ul"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
@ -306,32 +309,32 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.image","img"], ["meta.tag.name.image","img"],
["text"," "], ["text"," "],
["entity.other.attribute-name","src"], ["entity.other.attribute-name","src"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"images/"], ["string","\"images/"],
["string.interpolated","${"], ["string.interpolated","${"],
["variable","user.id"], ["variable","user.id"],
["string.interpolated","}"], ["string.interpolated","}"],
["string",".png\""], ["string",".png\""],
["text"," "], ["text"," "],
["meta.tag.r","/>"] ["punctuation.meta.tag.end","/>"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","body"], ["meta.tag.name","body"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
]] ]]

View file

@ -1,51 +1,51 @@
[[ [[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin.script","<"],
["meta.tag.tag-name.script","script"], ["meta.tag.name.script","script"],
["text"," "], ["text"," "],
["entity.other.attribute-name","a"], ["entity.other.attribute-name","a"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","'a'"], ["string","'a'"],
["meta.tag.r",">"], ["punctuation.meta.tag.end.script",">"],
["storage.type","var"], ["storage.type","var"],
["meta.tag","</"], ["punctuation.meta.tag.begin.script","</"],
["meta.tag.tag-name.script","script"], ["meta.tag.name.script","script"],
["meta.tag.r",">"], ["punctuation.meta.tag.end.script",">"],
["text","'123'"] ["text","'123'"]
],[ ],[
"tag_qqstring", ["qqstring_inner","start_tag_stuff"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["text"," "], ["text"," "],
["entity.other.attribute-name","href"], ["entity.other.attribute-name","href"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"abc"] ["string","\"abc"]
],[ ],[
"start", "start",
["string"," def\""], ["string"," def\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"tag_qstring", ["qstring_inner","start_tag_stuff"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["text"," "], ["text"," "],
["entity.other.attribute-name","href"], ["entity.other.attribute-name","href"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","'abc"] ["string","'abc"]
],[ ],[
"start", "start",
["string","def\\'"], ["string","def\\'"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
]] ]]

View file

@ -1,79 +1,79 @@
[[ [[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h1"], ["meta.tag.name","h1"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Listing Books"], ["text","Listing Books"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h1"], ["meta.tag.name","h1"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","table"], ["meta.tag.name.table","table"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","tr"], ["meta.tag.name.table","tr"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Title"], ["text","Title"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Summary"], ["text","Summary"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","th"], ["meta.tag.name.table","th"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","tr"], ["meta.tag.name.table","tr"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
@ -93,15 +93,15 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","tr"], ["meta.tag.name.table","tr"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["support.ruby_tag","<%="], ["support.ruby_tag","<%="],
["text"," "], ["text"," "],
["identifier","book"], ["identifier","book"],
@ -109,15 +109,15 @@
["identifier","title"], ["identifier","title"],
["text"," "], ["text"," "],
["support.ruby_tag","%>"], ["support.ruby_tag","%>"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["support.ruby_tag","<%="], ["support.ruby_tag","<%="],
["text"," "], ["text"," "],
["identifier","book"], ["identifier","book"],
@ -125,15 +125,15 @@
["identifier","content"], ["identifier","content"],
["text"," "], ["text"," "],
["support.ruby_tag","%>"], ["support.ruby_tag","%>"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["support.ruby_tag","<%="], ["support.ruby_tag","<%="],
["text"," "], ["text"," "],
["support.function","link_to"], ["support.function","link_to"],
@ -143,15 +143,15 @@
["identifier","book"], ["identifier","book"],
["text"," "], ["text"," "],
["support.ruby_tag","%>"], ["support.ruby_tag","%>"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["support.ruby_tag","<%="], ["support.ruby_tag","<%="],
["text"," "], ["text"," "],
["support.function","link_to"], ["support.function","link_to"],
@ -164,15 +164,15 @@
["paren.rparen",")"], ["paren.rparen",")"],
["text"," "], ["text"," "],
["support.ruby_tag","%>"], ["support.ruby_tag","%>"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["support.ruby_tag","<%="], ["support.ruby_tag","<%="],
["text"," "], ["text"," "],
["support.function","link_to"], ["support.function","link_to"],
@ -194,15 +194,15 @@
["constant.other.symbol.ruby",":delete"], ["constant.other.symbol.ruby",":delete"],
["text"," "], ["text"," "],
["support.ruby_tag","%>"], ["support.ruby_tag","%>"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","tr"], ["meta.tag.name.table","tr"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["support.ruby_tag","<%"], ["support.ruby_tag","<%"],
@ -212,18 +212,18 @@
["support.ruby_tag","%>"] ["support.ruby_tag","%>"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","table"], ["meta.tag.name.table","table"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","br"], ["meta.tag.name","br"],
["text"," "], ["text"," "],
["meta.tag.r","/>"] ["punctuation.meta.tag.end","/>"]
],[ ],[
"start", "start",
["text"," "] ["text"," "]

View file

@ -1,19 +1,19 @@
[[ [[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","body"], ["meta.tag.name","body"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"js-start", "js-start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin.script","<"],
["meta.tag.tag-name.script","script"], ["meta.tag.name.script","script"],
["meta.tag.r",">"] ["punctuation.meta.tag.end.script",">"]
],[ ],[
"js-start", "js-start",
["text"," "], ["text"," "],
@ -40,23 +40,23 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin.script","</"],
["meta.tag.tag-name.script","script"], ["meta.tag.name.script","script"],
["meta.tag.r",">"] ["punctuation.meta.tag.end.script",">"]
],[ ],[
"css-start", "css-start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin.style","<"],
["meta.tag.tag-name.style","style"], ["meta.tag.name.style","style"],
["meta.tag.r",">"] ["punctuation.meta.tag.end.style",">"]
],[ ],[
"css-ruleset", ["css-ruleset","css-start"],
["text"," "], ["text"," "],
["variable",".class"], ["variable",".class"],
["text"," "], ["text"," "],
["paren.lparen","{"] ["paren.lparen","{"]
],[ ],[
"css-ruleset", ["css-ruleset","css-start"],
["text"," "], ["text"," "],
["support.type","background"], ["support.type","background"],
["text",": "], ["text",": "],
@ -69,17 +69,17 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin.style","</"],
["meta.tag.tag-name.style","style"], ["meta.tag.name.style","style"],
["meta.tag.r",">"] ["punctuation.meta.tag.end.style",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," Today's date: "], ["text"," Today's date: "],
@ -104,9 +104,9 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -164,155 +164,155 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Select Languages:"], ["text","Select Languages:"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.form","form"], ["meta.tag.name.form","form"],
["text"," "], ["text"," "],
["entity.other.attribute-name","ACTION"], ["entity.other.attribute-name","ACTION"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"jspCheckBox.jsp\""], ["string","\"jspCheckBox.jsp\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.form","input"], ["meta.tag.name.form","input"],
["text"," "], ["text"," "],
["entity.other.attribute-name","type"], ["entity.other.attribute-name","type"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"checkbox\""], ["string","\"checkbox\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","name"], ["entity.other.attribute-name","name"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"id\""], ["string","\"id\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","value"], ["entity.other.attribute-name","value"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"Java\""], ["string","\"Java\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," Java"], ["text"," Java"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","BR"], ["meta.tag.name","BR"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.form","input"], ["meta.tag.name.form","input"],
["text"," "], ["text"," "],
["entity.other.attribute-name","type"], ["entity.other.attribute-name","type"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"checkbox\""], ["string","\"checkbox\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","name"], ["entity.other.attribute-name","name"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"id\""], ["string","\"id\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","value"], ["entity.other.attribute-name","value"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\".NET\""], ["string","\".NET\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," .NET"], ["text"," .NET"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","BR"], ["meta.tag.name","BR"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.form","input"], ["meta.tag.name.form","input"],
["text"," "], ["text"," "],
["entity.other.attribute-name","type"], ["entity.other.attribute-name","type"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"checkbox\""], ["string","\"checkbox\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","name"], ["entity.other.attribute-name","name"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"id\""], ["string","\"id\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","value"], ["entity.other.attribute-name","value"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"PHP\""], ["string","\"PHP\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," PHP"], ["text"," PHP"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","BR"], ["meta.tag.name","BR"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.form","input"], ["meta.tag.name.form","input"],
["text"," "], ["text"," "],
["entity.other.attribute-name","type"], ["entity.other.attribute-name","type"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"checkbox\""], ["string","\"checkbox\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","name"], ["entity.other.attribute-name","name"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"id\""], ["string","\"id\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","value"], ["entity.other.attribute-name","value"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"C/C++\""], ["string","\"C/C++\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," C/C++"], ["text"," C/C++"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","BR"], ["meta.tag.name","BR"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.form","input"], ["meta.tag.name.form","input"],
["text"," "], ["text"," "],
["entity.other.attribute-name","type"], ["entity.other.attribute-name","type"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"checkbox\""], ["string","\"checkbox\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","name"], ["entity.other.attribute-name","name"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"id\""], ["string","\"id\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","value"], ["entity.other.attribute-name","value"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"PERL\""], ["string","\"PERL\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," PERL "], ["text"," PERL "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","BR"], ["meta.tag.name","BR"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.form","input"], ["meta.tag.name.form","input"],
["text"," "], ["text"," "],
["entity.other.attribute-name","type"], ["entity.other.attribute-name","type"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"submit\""], ["string","\"submit\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","value"], ["entity.other.attribute-name","value"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"Submit\""], ["string","\"Submit\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.form","form"], ["meta.tag.name.form","form"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
@ -424,12 +424,12 @@
["meta.tag","%>"] ["meta.tag","%>"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","body"], ["meta.tag.name","body"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
]] ]]

View file

@ -41,13 +41,13 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","ul"], ["meta.tag.name","ul"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"products\""], ["string","\"products\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -65,15 +65,15 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","li"], ["meta.tag.name","li"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["variable","{{"], ["variable","{{"],
["text"," "], ["text"," "],
["identifier","product"], ["identifier","product"],
@ -81,9 +81,9 @@
["identifier","title"], ["identifier","title"],
["text"," "], ["text"," "],
["variable","}}"], ["variable","}}"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," Only "], ["text"," Only "],
@ -101,9 +101,9 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["variable","{{"], ["variable","{{"],
["text"," "], ["text"," "],
["identifier","product"], ["identifier","product"],
@ -117,17 +117,17 @@
["constant.numeric","200"], ["constant.numeric","200"],
["text"," "], ["text"," "],
["variable","}}"], ["variable","}}"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","li"], ["meta.tag.name","li"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -139,9 +139,9 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","ul"], ["meta.tag.name","ul"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
@ -153,18 +153,18 @@
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Filters"], ["text","Filters"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," The word \"tobi\" in uppercase: "], ["text"," The word \"tobi\" in uppercase: "],
["variable","{{"], ["variable","{{"],
["text"," "], ["text"," "],
@ -174,14 +174,14 @@
["text"," "], ["text"," "],
["variable","}}"], ["variable","}}"],
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","The word \"tobi\" has "], ["text","The word \"tobi\" has "],
["variable","{{"], ["variable","{{"],
["text"," "], ["text"," "],
@ -191,14 +191,14 @@
["text"," "], ["text"," "],
["variable","}}"], ["variable","}}"],
["text"," letters! "], ["text"," letters! "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Change \"Hello world\" to \"Hi world\": "], ["text","Change \"Hello world\" to \"Hi world\": "],
["variable","{{"], ["variable","{{"],
["text"," "], ["text"," "],
@ -212,14 +212,14 @@
["text"," "], ["text"," "],
["variable","}}"], ["variable","}}"],
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","The date today is "], ["text","The date today is "],
["variable","{{"], ["variable","{{"],
["text"," "], ["text"," "],
@ -231,27 +231,27 @@
["text"," "], ["text"," "],
["variable","}}"], ["variable","}}"],
["text"," "], ["text"," "],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","If"], ["text","If"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -292,27 +292,27 @@
["variable","%}"] ["variable","%}"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Case"], ["text","Case"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -392,27 +392,27 @@
["variable","%}"] ["variable","%}"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","For Loops"], ["text","For Loops"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -446,27 +446,27 @@
["variable","%}"] ["variable","%}"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Tables"], ["text","Tables"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -543,9 +543,9 @@
["variable","%}"] ["variable","%}"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
]] ]]

View file

@ -1,25 +1,20 @@
[[ [[
"tag_embed_attribute_list", "doctype",
["text",""], ["text",""],
["meta.tag","<"], ["punctuation.doctype.begin","<!"],
["text","!"], ["keyword.doctype","DOCTYPE"],
["entity.other.attribute-name","DOCTYPE"], ["text"," html PUBLIC "],
["text"," "],
["entity.other.attribute-name","html"],
["text"," "],
["entity.other.attribute-name","PUBLIC"],
["text"," "],
["string","\"-//W3C//DTD XHTML 1.0 Strict//EN\""] ["string","\"-//W3C//DTD XHTML 1.0 Strict//EN\""]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["string","\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\""], ["string","\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\""],
["meta.tag.r",">"] ["punctuation.doctype.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
["lua-bracketedComment",2,"lua-start"], ["lua-bracketedComment",2,"lua-start"],
["keyword","<%"], ["keyword","<%"],
@ -38,31 +33,31 @@
["keyword","%>"] ["keyword","%>"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","head"], ["meta.tag.name","head"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","title"], ["meta.tag.name","title"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Reference"], ["text","Reference"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","title"], ["meta.tag.name","title"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","link"], ["meta.tag.name","link"],
["text"," "], ["text"," "],
["entity.other.attribute-name","rel"], ["entity.other.attribute-name","rel"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"stylesheet\""], ["string","\"stylesheet\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","href"], ["entity.other.attribute-name","href"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\""], ["string","\""],
["keyword","<%="], ["keyword","<%="],
["identifier","luadoc"], ["identifier","luadoc"],
@ -76,123 +71,129 @@
["string","\"luadoc.css\""], ["string","\"luadoc.css\""],
["paren.rparen",")"], ["paren.rparen",")"],
["keyword","%>"], ["keyword","%>"],
["text","\" type=\"text/css\" />"] ["string","\""],
["text"," "],
["entity.other.attribute-name","type"],
["keyword.operator.separator","="],
["string","\"text/css\""],
["text"," "],
["punctuation.meta.tag.end","/>"]
],[ ],[
"start", "start",
["text","\t"], ["text","\t"],
["comment","<!--meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/-->"] ["comment","<!--meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/-->"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","head"], ["meta.tag.name","head"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","body"], ["meta.tag.name","body"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"container\""], ["string","\"container\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"product\""], ["string","\"product\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t"], ["text","\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"product_logo\""], ["string","\"product_logo\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t"], ["text","\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"product_name\""], ["string","\"product_name\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","big"], ["meta.tag.name","big"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","b"], ["meta.tag.name","b"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","b"], ["meta.tag.name","b"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","big"], ["meta.tag.name","big"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t"], ["text","\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"product_description\""], ["string","\"product_description\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," "], ["text"," "],
["comment","<!-- id=\"product\" -->"] ["comment","<!-- id=\"product\" -->"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"main\""], ["string","\"main\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"navigation\""], ["string","\"navigation\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["keyword","<%="], ["keyword","<%="],
@ -218,22 +219,22 @@
"start" "start"
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," "], ["text"," "],
["comment","<!-- id=\"navigation\" -->"] ["comment","<!-- id=\"navigation\" -->"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"content\""], ["string","\"content\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
@ -262,22 +263,22 @@
["keyword","then%>"] ["keyword","then%>"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Modules"], ["text","Modules"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","table"], ["meta.tag.name.table","table"],
["text"," "], ["text"," "],
["entity.other.attribute-name","class"], ["entity.other.attribute-name","class"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"module_list\""], ["string","\"module_list\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["comment","<!--<tr><td colspan=\"2\">Modules</td></tr>-->"] ["comment","<!--<tr><td colspan=\"2\">Modules</td></tr>-->"]
@ -302,24 +303,24 @@
],[ ],[
"start", "start",
["text","\t"], ["text","\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","tr"], ["meta.tag.name.table","tr"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t\t"], ["text","\t\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["text"," "], ["text"," "],
["entity.other.attribute-name","class"], ["entity.other.attribute-name","class"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"name\""], ["string","\"name\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["text"," "], ["text"," "],
["entity.other.attribute-name","href"], ["entity.other.attribute-name","href"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\""], ["string","\""],
["keyword","<%="], ["keyword","<%="],
["identifier","luadoc"], ["identifier","luadoc"],
@ -335,26 +336,27 @@
["identifier","doc"], ["identifier","doc"],
["paren.rparen",")"], ["paren.rparen",")"],
["keyword","%>"], ["keyword","%>"],
["text","\">"], ["string","\""],
["punctuation.meta.tag.end",">"],
["keyword","<%="], ["keyword","<%="],
["identifier","modulename"], ["identifier","modulename"],
["keyword","%>"], ["keyword","%>"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t\t"], ["text","\t\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["text"," "], ["text"," "],
["entity.other.attribute-name","class"], ["entity.other.attribute-name","class"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"summary\""], ["string","\"summary\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["keyword","<%="], ["keyword","<%="],
["identifier","doc"], ["identifier","doc"],
["text","."], ["text","."],
@ -365,23 +367,23 @@
["text","."], ["text","."],
["identifier","summary"], ["identifier","summary"],
["keyword","%>"], ["keyword","%>"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t"], ["text","\t"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","tr"], ["meta.tag.name.table","tr"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["keyword","<%end%>"] ["keyword","<%end%>"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","table"], ["meta.tag.name.table","table"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["keyword","<%end%>"] ["keyword","<%end%>"]
@ -415,22 +417,22 @@
["keyword","then%>"] ["keyword","then%>"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Files"], ["text","Files"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","h2"], ["meta.tag.name","h2"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","table"], ["meta.tag.name.table","table"],
["text"," "], ["text"," "],
["entity.other.attribute-name","class"], ["entity.other.attribute-name","class"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"file_list\""], ["string","\"file_list\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["comment","<!--<tr><td colspan=\"2\">Files</td></tr>-->"] ["comment","<!--<tr><td colspan=\"2\">Files</td></tr>-->"]
@ -455,24 +457,24 @@
],[ ],[
"start", "start",
["text","\t"], ["text","\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","tr"], ["meta.tag.name.table","tr"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t\t"], ["text","\t\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["text"," "], ["text"," "],
["entity.other.attribute-name","class"], ["entity.other.attribute-name","class"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"name\""], ["string","\"name\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["text"," "], ["text"," "],
["entity.other.attribute-name","href"], ["entity.other.attribute-name","href"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\""], ["string","\""],
["keyword","<%="], ["keyword","<%="],
["identifier","luadoc"], ["identifier","luadoc"],
@ -486,43 +488,44 @@
["identifier","filepath"], ["identifier","filepath"],
["paren.rparen",")"], ["paren.rparen",")"],
["keyword","%>"], ["keyword","%>"],
["text","\">"], ["string","\""],
["punctuation.meta.tag.end",">"],
["keyword","<%="], ["keyword","<%="],
["identifier","filepath"], ["identifier","filepath"],
["keyword","%>"], ["keyword","%>"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t\t"], ["text","\t\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["text"," "], ["text"," "],
["entity.other.attribute-name","class"], ["entity.other.attribute-name","class"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"summary\""], ["string","\"summary\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","td"], ["meta.tag.name.table","td"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t"], ["text","\t"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","tr"], ["meta.tag.name.table","tr"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["keyword","<%end%>"] ["keyword","<%end%>"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.table","table"], ["meta.tag.name.table","table"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["keyword","<%end%>"] ["keyword","<%end%>"]
@ -530,97 +533,97 @@
"start" "start"
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," "], ["text"," "],
["comment","<!-- id=\"content\" -->"] ["comment","<!-- id=\"content\" -->"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," "], ["text"," "],
["comment","<!-- id=\"main\" -->"] ["comment","<!-- id=\"main\" -->"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"about\""], ["string","\"about\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","\t"], ["text","\t"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["text"," "], ["text"," "],
["entity.other.attribute-name","href"], ["entity.other.attribute-name","href"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"http://validator.w3.org/check?uri=referer\""], ["string","\"http://validator.w3.org/check?uri=referer\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name.image","img"], ["meta.tag.name.image","img"],
["text"," "], ["text"," "],
["entity.other.attribute-name","src"], ["entity.other.attribute-name","src"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"http://www.w3.org/Icons/valid-xhtml10\""], ["string","\"http://www.w3.org/Icons/valid-xhtml10\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","alt"], ["entity.other.attribute-name","alt"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"Valid XHTML 1.0!\""], ["string","\"Valid XHTML 1.0!\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","height"], ["entity.other.attribute-name","height"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"31\""], ["string","\"31\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","width"], ["entity.other.attribute-name","width"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"88\""], ["string","\"88\""],
["text"," "], ["text"," "],
["meta.tag.r","/>"], ["punctuation.meta.tag.end","/>"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name.anchor","a"], ["meta.tag.name.anchor","a"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," "], ["text"," "],
["comment","<!-- id=\"about\" -->"] ["comment","<!-- id=\"about\" -->"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","div"], ["meta.tag.name","div"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," "], ["text"," "],
["comment","<!-- id=\"container\" -->"], ["comment","<!-- id=\"container\" -->"],
["text","\t"] ["text","\t"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","body"], ["meta.tag.name","body"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
]] ]]

View file

@ -81,13 +81,13 @@
],[ ],[
"start", "start",
["text","in plain text "], ["text","in plain text "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","b"], ["meta.tag.name","b"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","http://ace.ajaxorg.com"], ["text","http://ace.ajaxorg.com"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","b"], ["meta.tag.name","b"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"allowBlock" "allowBlock"
],[ ],[

View file

@ -1,55 +1,55 @@
[[ [[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","head"], ["meta.tag.name","head"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","title"], ["meta.tag.name","title"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Title"], ["text","Title"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","title"], ["meta.tag.name","title"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","head"], ["meta.tag.name","head"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","body"], ["meta.tag.name","body"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","This is an R HTML document. When you click the "], ["text","This is an R HTML document. When you click the "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","b"], ["meta.tag.name","b"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Knit HTML"], ["text","Knit HTML"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","b"], ["meta.tag.name","b"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text"," button a web page will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:"], ["text"," button a web page will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
@ -68,13 +68,13 @@
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","You can also embed plots, for example:"], ["text","You can also embed plots, for example:"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","p"], ["meta.tag.name","p"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
@ -93,14 +93,14 @@
"start" "start"
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","body"], ["meta.tag.name","body"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","html"], ["meta.tag.name","html"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
]] ]]

View file

@ -1,68 +1,65 @@
[[ [[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","svg"] ["meta.tag.name","svg"]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","width"], ["entity.other.attribute-name","width"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"800\""], ["string","\"800\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","height"], ["entity.other.attribute-name","height"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"600\""] ["string","\"600\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","xmlns"], ["entity.other.attribute-name","xmlns"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"http://www.w3.org/2000/svg\""] ["string","\"http://www.w3.org/2000/svg\""]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["entity.other.attribute-name","onload"], ["entity.other.attribute-name","onload"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"StartAnimation(evt)\""], ["string","\"StartAnimation(evt)\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","title"], ["meta.tag.name","title"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Test Tube Progress Bar"], ["text","Test Tube Progress Bar"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","title"], ["meta.tag.name","title"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","desc"], ["meta.tag.name","desc"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","Created for the Web Directions SVG competition"], ["text","Created for the Web Directions SVG competition"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","desc"], ["meta.tag.name","desc"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"js-start", "js-no_regex",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin.script","<"],
["meta.tag.tag-name","script"], ["meta.tag.name.script","script"],
["text"," "], ["text"," "],
["entity.other.attribute-name","type"], ["entity.other.attribute-name","type"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"text/ecmascript\""], ["string","\"text/ecmascript\""],
["meta.tag.r",">"], ["punctuation.meta.tag.end.script",">"],
["keyword.operator","<!"], ["string.begin","<![CDATA["]
["paren.lparen","["],
["identifier","CDATA"],
["paren.lparen","["]
],[ ],[
"js-start", "js-start",
["text"," "], ["text"," "],
@ -491,198 +488,197 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["paren.rparen","]]"], ["string.end","]]>"],
["keyword.operator",">"], ["punctuation.meta.tag.begin.script","</"],
["meta.tag","</"], ["meta.tag.name.script","script"],
["meta.tag.tag-name","script"], ["punctuation.meta.tag.end.script",">"]
["meta.tag.r",">"]
],[ ],[
"start" "start"
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","rect"] ["meta.tag.name","rect"]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","fill"], ["entity.other.attribute-name","fill"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"#2e3436\""] ["string","\"#2e3436\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","fill-rule"], ["entity.other.attribute-name","fill-rule"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"nonzero\""] ["string","\"nonzero\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","stroke-width"], ["entity.other.attribute-name","stroke-width"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"3\""] ["string","\"3\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","y"], ["entity.other.attribute-name","y"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"0\""] ["string","\"0\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","x"], ["entity.other.attribute-name","x"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"0\""] ["string","\"0\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","height"], ["entity.other.attribute-name","height"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"600\""] ["string","\"600\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","width"], ["entity.other.attribute-name","width"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"800\""] ["string","\"800\""]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"rect3590\""], ["string","\"rect3590\""],
["meta.tag.r","/>"] ["punctuation.meta.tag.end","/>"]
],[ ],[
"start" "start"
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","text"] ["meta.tag.name","text"]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","style"], ["entity.other.attribute-name","style"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"font-size:144px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans Bold\""] ["string","\"font-size:144px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans Bold\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","x"], ["entity.other.attribute-name","x"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"50\""] ["string","\"50\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","y"], ["entity.other.attribute-name","y"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"350\""] ["string","\"350\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"hickory\""] ["string","\"hickory\""]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["entity.other.attribute-name","display"], ["entity.other.attribute-name","display"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"none\""], ["string","\"none\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," Hickory,"], ["text"," Hickory,"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","text"], ["meta.tag.name","text"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","text"] ["meta.tag.name","text"]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","style"], ["entity.other.attribute-name","style"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"font-size:144px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans Bold\""] ["string","\"font-size:144px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans Bold\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","x"], ["entity.other.attribute-name","x"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"50\""] ["string","\"50\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","y"], ["entity.other.attribute-name","y"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"350\""] ["string","\"350\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"dickory\""] ["string","\"dickory\""]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["entity.other.attribute-name","display"], ["entity.other.attribute-name","display"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"none\""], ["string","\"none\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," dickory,"], ["text"," dickory,"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","text"], ["meta.tag.name","text"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","text"] ["meta.tag.name","text"]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","style"], ["entity.other.attribute-name","style"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"font-size:144px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans Bold\""] ["string","\"font-size:144px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans Bold\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","x"], ["entity.other.attribute-name","x"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"50\""] ["string","\"50\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","y"], ["entity.other.attribute-name","y"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"350\""] ["string","\"350\""]
],[ ],[
"tag_embed_attribute_list", "punctuation.meta.tag.begin",
["text"," "], ["text"," "],
["entity.other.attribute-name","id"], ["entity.other.attribute-name","id"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"dock\""] ["string","\"dock\""]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["entity.other.attribute-name","display"], ["entity.other.attribute-name","display"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"none\""], ["string","\"none\""],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," dock!"], ["text"," dock!"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","text"], ["meta.tag.name","text"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","svg"], ["meta.tag.name","svg"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
]] ]]

View file

@ -1,5 +1,178 @@
[[ [[
"start", "start",
["punctuation.doctype.begin","<!"],
["keyword.doctype","DOCTYPE"],
["text"," html"],
["punctuation.doctype.end",">"]
],[
"start",
["punctuation.meta.tag.begin","<"],
["meta.tag.name","html"],
["punctuation.meta.tag.end",">"]
],[
"start",
["text"," "],
["punctuation.meta.tag.begin","<"],
["meta.tag.name","head"],
["punctuation.meta.tag.end",">"]
],[
"start",
["text"," "],
["punctuation.meta.tag.begin","<"],
["meta.tag.name","title"],
["punctuation.meta.tag.end",">"],
["text","My Webpage"],
["punctuation.meta.tag.begin","</"],
["meta.tag.name","title"],
["punctuation.meta.tag.end",">"]
],[
"start",
["text"," "],
["punctuation.meta.tag.begin","</"],
["meta.tag.name","head"],
["punctuation.meta.tag.end",">"]
],[
"start",
["text"," "],
["punctuation.meta.tag.begin","<"],
["meta.tag.name","body"],
["punctuation.meta.tag.end",">"]
],[
"start",
["text"," "],
["punctuation.meta.tag.begin","<"],
["meta.tag.name","ul"],
["text"," "],
["entity.other.attribute-name","id"],
["keyword.operator.separator","="],
["string","\"navigation\""],
["punctuation.meta.tag.end",">"]
],[
"start",
["text"," "],
["meta.tag.twig","{%"],
["text"," "],
["keyword.control.twig","for"],
["text"," "],
["identifier","item"],
["text"," "],
["keyword.operator.twig","in"],
["text"," "],
["identifier","navigation"],
["text"," "],
["meta.tag.twig","%}"]
],[
"start",
["text"," "],
["punctuation.meta.tag.begin","<"],
["meta.tag.name","li"],
["punctuation.meta.tag.end",">"],
["punctuation.meta.tag.begin","<"],
["meta.tag.name.anchor","a"],
["text"," "],
["entity.other.attribute-name","href"],
["keyword.operator.separator","="],
["string","\""],
["variable.other.readwrite.local.twig","{{"],
["text"," "],
["identifier","item"],
["punctuation.operator","."],
["identifier","href"],
["keyword.operator.other","|"],
["support.function.twig","escape"],
["text"," "],
["variable.other.readwrite.local.twig","}}"],
["string","\""],
["punctuation.meta.tag.end",">"],
["variable.other.readwrite.local.twig","{{"],
["text"," "],
["identifier","item"],
["punctuation.operator","."],
["identifier","caption"],
["text"," "],
["variable.other.readwrite.local.twig","}}"],
["punctuation.meta.tag.begin","</"],
["meta.tag.name.anchor","a"],
["punctuation.meta.tag.end",">"],
["punctuation.meta.tag.begin","</"],
["meta.tag.name","li"],
["punctuation.meta.tag.end",">"]
],[
"start",
["text"," "],
["meta.tag.twig","{%"],
["text"," "],
["keyword.control.twig","endfor"],
["text"," "],
["meta.tag.twig","%}"]
],[
"start",
["text"," "],
["punctuation.meta.tag.begin","</"],
["meta.tag.name","ul"],
["punctuation.meta.tag.end",">"]
],[
"start"
],[
"start",
["text"," "],
["meta.tag.twig","{%"],
["text"," "],
["keyword.control.twig","if"],
["text"," "],
["constant.numeric","1"],
["text"," "],
["keyword.operator.twig","not"],
["text"," "],
["keyword.operator.twig","in"],
["text"," "],
["paren.lparen","["],
["constant.numeric","1"],
["punctuation.operator",","],
["text"," "],
["constant.numeric","2"],
["punctuation.operator",","],
["text"," "],
["constant.numeric","3"],
["paren.rparen","]"],
["text"," "],
["meta.tag.twig","%}"]
],[
"start"
],[
"start",
["text"," "],
["comment.block.twig","{# is equivalent to #}"]
],[
"start",
["text"," "],
["meta.tag.twig","{%"],
["text"," "],
["keyword.control.twig","if"],
["text"," "],
["keyword.operator.twig","not"],
["text"," "],
["paren.lparen","("],
["constant.numeric","1"],
["text"," "],
["keyword.operator.twig","in"],
["text"," "],
["paren.lparen","["],
["constant.numeric","1"],
["punctuation.operator",","],
["text"," "],
["constant.numeric","2"],
["punctuation.operator",","],
["text"," "],
["constant.numeric","3"],
["paren.rparen","])"],
["text"," "],
["meta.tag.twig","%}"]
],[
"start"
],[
"start",
["text"," "],
["meta.tag.twig","{%"], ["meta.tag.twig","{%"],
["text"," "], ["text"," "],
["keyword.control.twig","autoescape"], ["keyword.control.twig","autoescape"],
@ -41,6 +214,7 @@
["comment.block.twig","{# var won't be doubled-escaped #}"] ["comment.block.twig","{# var won't be doubled-escaped #}"]
],[ ],[
"start", "start",
["text"," "],
["meta.tag.twig","{%"], ["meta.tag.twig","{%"],
["text"," "], ["text"," "],
["keyword.control.twig","endautoescape"], ["keyword.control.twig","endautoescape"],
@ -50,6 +224,7 @@
"start" "start"
],[ ],[
"start", "start",
["text"," "],
["variable.other.readwrite.local.twig","{{"], ["variable.other.readwrite.local.twig","{{"],
["text"," "], ["text"," "],
["keyword.control.twig","include"], ["keyword.control.twig","include"],
@ -69,6 +244,7 @@
"start" "start"
],[ ],[
"start", "start",
["text"," "],
["variable.other.readwrite.local.twig","{{"], ["variable.other.readwrite.local.twig","{{"],
["string","\"string "], ["string","\"string "],
["constant.language.escape","#{with}"], ["constant.language.escape","#{with}"],
@ -79,4 +255,33 @@
["string","'another#one'"], ["string","'another#one'"],
["text"," "], ["text"," "],
["variable.other.readwrite.local.twig","}}"] ["variable.other.readwrite.local.twig","}}"]
],[
"start",
["text"," "],
["punctuation.meta.tag.begin","<"],
["meta.tag.name","h1"],
["punctuation.meta.tag.end",">"],
["text","My Webpage"],
["punctuation.meta.tag.begin","</"],
["meta.tag.name","h1"],
["punctuation.meta.tag.end",">"]
],[
"start",
["text"," "],
["variable.other.readwrite.local.twig","{{"],
["text"," "],
["identifier","a_variable"],
["text"," "],
["variable.other.readwrite.local.twig","}}"]
],[
"start",
["text"," "],
["punctuation.meta.tag.begin","</"],
["meta.tag.name","body"],
["punctuation.meta.tag.end",">"]
],[
"start",
["punctuation.meta.tag.begin","</"],
["meta.tag.name","html"],
["punctuation.meta.tag.end",">"]
]] ]]

View file

@ -1,11 +1,11 @@
[[ [[
"comment", "vm_comment",
["comment.block","#*"] ["comment.block","#*"]
],[ ],[
"comment", "vm_comment",
["comment"," This is a sample comment block that"] ["comment"," This is a sample comment block that"]
],[ ],[
"comment", "vm_comment",
["comment"," spans multiple lines."] ["comment"," spans multiple lines."]
],[ ],[
"start", "start",
@ -26,15 +26,15 @@
],[ ],[
"start", "start",
["text"," "], ["text"," "],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","li"], ["meta.tag.name","li"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["variable","${"], ["variable","${"],
["identifier","item"], ["identifier","item"],
["variable","}"], ["variable","}"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","li"], ["meta.tag.name","li"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["keyword","#end"] ["keyword","#end"]
@ -68,9 +68,9 @@
"start" "start"
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","ul"], ["meta.tag.name","ul"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text"," "], ["text"," "],
@ -128,16 +128,16 @@
["keyword","#end"] ["keyword","#end"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","ul"], ["meta.tag.name","ul"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start" "start"
],[ ],[
"js-start", "js-start",
["meta.tag","<"], ["punctuation.meta.tag.begin.script","<"],
["meta.tag.tag-name","script"], ["meta.tag.name.script","script"],
["meta.tag.r",">"] ["punctuation.meta.tag.end.script",">"]
],[ ],[
"js-comment_regex_allowed", "js-comment_regex_allowed",
["text"," "], ["text"," "],
@ -216,37 +216,37 @@
["paren.rparen","}"] ["paren.rparen","}"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin.script","</"],
["meta.tag.tag-name","script"], ["meta.tag.name.script","script"],
["meta.tag.r",">"] ["punctuation.meta.tag.end.script",">"]
],[ ],[
"start" "start"
],[ ],[
"css-start", "css-start",
["meta.tag","<"], ["punctuation.meta.tag.begin.style","<"],
["meta.tag.tag-name","style"], ["meta.tag.name.style","style"],
["meta.tag.r",">"] ["punctuation.meta.tag.end.style",">"]
],[ ],[
"css-comment", ["css-comment","css-start"],
["text"," "], ["text"," "],
["comment","/*"] ["comment","/*"]
],[ ],[
"css-comment", ["css-comment","css-start"],
["comment"," A sample style to decomstrate"] ["comment"," A sample style to decomstrate"]
],[ ],[
"css-comment", ["css-comment","css-start"],
["comment"," CSS highlighting and folding."] ["comment"," CSS highlighting and folding."]
],[ ],[
"css-start", "css-start",
["comment"," */"] ["comment"," */"]
],[ ],[
"css-ruleset", ["css-ruleset","css-start"],
["text"," "], ["text"," "],
["variable",".class"], ["variable",".class"],
["text"," "], ["text"," "],
["paren.lparen","{"] ["paren.lparen","{"]
],[ ],[
"css-ruleset", ["css-ruleset","css-start"],
["text"," "], ["text"," "],
["support.type","font-family"], ["support.type","font-family"],
["text",": Monaco, "], ["text",": Monaco, "],
@ -255,7 +255,7 @@
["support.constant.fonts","monospace"], ["support.constant.fonts","monospace"],
["text",";"] ["text",";"]
],[ ],[
"css-ruleset", ["css-ruleset","css-start"],
["text"," "], ["text"," "],
["support.type","font-size"], ["support.type","font-size"],
["text",": "], ["text",": "],
@ -263,7 +263,7 @@
["keyword","px"], ["keyword","px"],
["text",";"] ["text",";"]
],[ ],[
"css-ruleset", ["css-ruleset","css-start"],
["text"," "], ["text"," "],
["support.type","cursor"], ["support.type","cursor"],
["text",": "], ["text",": "],
@ -275,7 +275,7 @@
["paren.rparen","}"] ["paren.rparen","}"]
],[ ],[
"start", "start",
["meta.tag","</"], ["punctuation.meta.tag.begin.style","</"],
["meta.tag.tag-name","style"], ["meta.tag.name.style","style"],
["meta.tag.r",">"] ["punctuation.meta.tag.end.style",">"]
]] ]]

View file

@ -1,43 +1,43 @@
[[ [[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","Juhu"], ["meta.tag.name","Juhu"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["text","//Juhu Kinners"], ["text","//Juhu Kinners"],
["meta.tag","</"], ["punctuation.meta.tag.begin","</"],
["meta.tag.tag-name","Kinners"], ["meta.tag.name","Kinners"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","test: two tags in the same lines should be in separate tokens\""] ["text","test: two tags in the same lines should be in separate tokens\""]
],[ ],[
"start", "start",
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","Juhu"], ["meta.tag.name","Juhu"],
["meta.tag.r",">"], ["punctuation.meta.tag.end",">"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","Kinners"], ["meta.tag.name","Kinners"],
["meta.tag.r",">"] ["punctuation.meta.tag.end",">"]
],[ ],[
"start", "start",
["text","test: multiline attributes\""] ["text","test: multiline attributes\""]
],[ ],[
"tag_qqstring", ["qqstring_inner","punctuation.meta.tag.begin"],
["meta.tag","<"], ["punctuation.meta.tag.begin","<"],
["meta.tag.tag-name","copy"], ["meta.tag.name","copy"],
["text"," "], ["text"," "],
["entity.other.attribute-name","set"], ["entity.other.attribute-name","set"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"{"] ["string","\"{"]
],[ ],[
"tag_qqstring", ["qqstring_inner","punctuation.meta.tag.begin"],
["string","}\""], ["string","}\""],
["text"," "], ["text"," "],
["entity.other.attribute-name","undo"], ["entity.other.attribute-name","undo"],
["keyword.operator","="], ["keyword.operator.separator","="],
["string","\"{"] ["string","\"{"]
],[ ],[
"start", "start",
["string","}\""], ["string","}\""],
["meta.tag.r","/>"] ["punctuation.meta.tag.end","/>"]
]] ]]

View file

@ -38,14 +38,9 @@ var TokenIterator = require("../../token_iterator").TokenIterator;
var voidElements = ['area', 'base', 'br', 'col', 'command', 'embed', 'hr', 'img', 'input', 'keygen', 'link', 'meta', 'param', 'source', 'track', 'wbr']; var voidElements = ['area', 'base', 'br', 'col', 'command', 'embed', 'hr', 'img', 'input', 'keygen', 'link', 'meta', 'param', 'source', 'track', 'wbr'];
function hasType(token, type) { function hasType(token, type) {
var hasType = true; var tokenTypes = token.type.split('.');
var typeList = token.type.split('.'); return type.split('.').every(function(type){
var needleList = type.split('.'); return (tokenTypes.indexOf(type) !== -1);
needleList.forEach(function(needle){
if (typeList.indexOf(needle) == -1) {
hasType = false;
return false;
}
}); });
return hasType; return hasType;
} }
@ -60,7 +55,7 @@ var HtmlBehaviour = function () {
var iterator = new TokenIterator(session, position.row, position.column); var iterator = new TokenIterator(session, position.row, position.column);
var token = iterator.getCurrentToken(); var token = iterator.getCurrentToken();
if (hasType(token, 'string') && iterator.getCurrentTokenColumn() + token.value.length > position.column) if (token && hasType(token, 'string') && iterator.getCurrentTokenColumn() + token.value.length > position.column)
return; return;
var atCursor = false; var atCursor = false;
if (!token || !hasType(token, 'meta.tag') && !(hasType(token, 'text') && token.value.match('/'))){ if (!token || !hasType(token, 'meta.tag') && !(hasType(token, 'text') && token.value.match('/'))){
@ -70,8 +65,8 @@ var HtmlBehaviour = function () {
} else { } else {
atCursor = true; atCursor = true;
} }
if (!token || !hasType(token, 'meta.tag-name') || iterator.stepBackward().value.match('/')) { if (!token || !hasType(token, 'meta.tag.name') || iterator.stepBackward().value.match('/')) {
return return;
} }
var element = token.value; var element = token.value;
if (atCursor){ if (atCursor){

View file

@ -37,14 +37,9 @@ var CstyleBehaviour = require("./cstyle").CstyleBehaviour;
var TokenIterator = require("../../token_iterator").TokenIterator; var TokenIterator = require("../../token_iterator").TokenIterator;
function hasType(token, type) { function hasType(token, type) {
var hasType = true; var tokenTypes = token.type.split('.');
var typeList = token.type.split('.'); return type.split('.').every(function(type){
var needleList = type.split('.'); return (tokenTypes.indexOf(type) !== -1);
needleList.forEach(function(needle){
if (typeList.indexOf(needle) == -1) {
hasType = false;
return false;
}
}); });
return hasType; return hasType;
} }
@ -58,6 +53,9 @@ var XmlBehaviour = function () {
var position = editor.getCursorPosition(); var position = editor.getCursorPosition();
var iterator = new TokenIterator(session, position.row, position.column); var iterator = new TokenIterator(session, position.row, position.column);
var token = iterator.getCurrentToken(); var token = iterator.getCurrentToken();
if (token && hasType(token, 'string') && iterator.getCurrentTokenColumn() + token.value.length > position.column)
return;
var atCursor = false; var atCursor = false;
if (!token || !hasType(token, 'meta.tag') && !(hasType(token, 'text') && token.value.match('/'))){ if (!token || !hasType(token, 'meta.tag') && !(hasType(token, 'text') && token.value.match('/'))){
do { do {
@ -66,8 +64,8 @@ var XmlBehaviour = function () {
} else { } else {
atCursor = true; atCursor = true;
} }
if (!token || !hasType(token, 'meta.tag-name') || iterator.stepBackward().value.match('/')) { if (!token || !hasType(token, 'meta.tag.name') || iterator.stepBackward().value.match('/')) {
return return;
} }
var tag = token.value; var tag = token.value;
if (atCursor){ if (atCursor){

View file

@ -32,92 +32,18 @@ define(function(require, exports, module) {
"use strict"; "use strict";
var oop = require("../lib/oop"); var oop = require("../lib/oop");
var CssHighlightRules = require("./css_highlight_rules").CssHighlightRules;
var JavaScriptHighlightRules = require("./javascript_highlight_rules").JavaScriptHighlightRules; var JavaScriptHighlightRules = require("./javascript_highlight_rules").JavaScriptHighlightRules;
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; var HtmlHighlightRules = require("./html_highlight_rules").HtmlHighlightRules;
var xml_util = require("./xml_util");
var ColdfusionHighlightRules = function() { var ColdfusionHighlightRules = function() {
HtmlHighlightRules.call(this);
// regexp must not have capturing parentheses this.embedTagRules(JavaScriptHighlightRules, "cfjs-", "cfscript");
// regexps are ordered -> the first match is used
this.$rules = { this.normalizeRules();
start : [ {
token : "text",
regex : "<\\!\\[CDATA\\[",
next : "cdata"
}, {
token : "xml-pe",
regex : "<\\?.*?\\?>"
}, {
token : "comment",
regex : "<\\!--",
next : "comment"
}, {
token : "meta.tag",
regex : "<(?=script)",
next : "script"
}, {
token : "meta.tag",
regex : "<(?=cfscript)",
next : "cfscript"
}, {
token : "meta.tag",
regex : "<(?=style)",
next : "style"
}, {
token : "meta.tag", // opening tag
regex : "<\\/?",
next : "tag"
} ],
cdata : [ {
token : "text",
regex : "\\]\\]>",
next : "start"
} ],
comment : [ {
token : "comment",
regex : ".*?-->",
next : "start"
}, {
defaultToken : "comment"
} ]
}; };
xml_util.tag(this.$rules, "tag", "start"); oop.inherits(ColdfusionHighlightRules, HtmlHighlightRules);
xml_util.tag(this.$rules, "style", "css-start");
xml_util.tag(this.$rules, "script", "js-start");
xml_util.tag(this.$rules, "cfscript", "js-start");
this.embedRules(JavaScriptHighlightRules, "js-", [{
token: "comment",
regex: "\\/\\/.*(?=<\\/script>)",
next: "tag"
}, {
token: "meta.tag",
regex: "<\\/(?=script)",
next: "tag"
}, {
token: "comment",
regex: "\\/\\/.*(?=<\\/cfscript>)",
next: "tag"
}, {
token: "meta.tag",
regex: "<\\/(?=cfscript)",
next: "tag"
}]);
this.embedRules(CssHighlightRules, "css-", [{
token: "meta.tag",
regex: "<\\/(?=style)",
next: "tag"
}]);
};
oop.inherits(ColdfusionHighlightRules, TextHighlightRules);
exports.ColdfusionHighlightRules = ColdfusionHighlightRules; exports.ColdfusionHighlightRules = ColdfusionHighlightRules;
}); });

View file

@ -60,11 +60,80 @@ var CssHighlightRules = function() {
// regexp must not have capturing parentheses. Use (?:) instead. // regexp must not have capturing parentheses. Use (?:) instead.
// regexps are ordered -> the first match is used // regexps are ordered -> the first match is used
var base_ruleset = [ this.$rules = {
{ "start" : [{
token : "comment", // multi line comment token : "comment", // multi line comment
regex : "\\/\\*", regex : "\\/\\*",
next : "ruleset_comment" push : "comment"
}, {
token: "paren.lparen",
regex: "\\{",
push: "ruleset"
}, {
token: "string",
regex: "@.*?{",
push: "media"
}, {
token: "keyword",
regex: "#[a-z0-9-_]+"
}, {
token: "variable",
regex: "\\.[a-z0-9-_]+"
}, {
token: "string",
regex: ":[a-z0-9-_]+"
}, {
token: "constant",
regex: "[a-z0-9-_]+"
}, {
caseInsensitive: true
}],
"media" : [{
token : "comment", // multi line comment
regex : "\\/\\*",
push : "comment"
}, {
token: "paren.lparen",
regex: "\\{",
push: "ruleset"
}, {
token: "string",
regex: "\\}",
next: "pop"
}, {
token: "keyword",
regex: "#[a-z0-9-_]+"
}, {
token: "variable",
regex: "\\.[a-z0-9-_]+"
}, {
token: "string",
regex: ":[a-z0-9-_]+"
}, {
token: "constant",
regex: "[a-z0-9-_]+"
}, {
caseInsensitive: true
}],
"comment" : [{
token : "comment",
regex : "\\*\\/",
next : "pop"
}, {
defaultToken : "comment"
}],
"ruleset" : [
{
token : "paren.rparen",
regex : "\\}",
next: "pop"
}, {
token : "comment", // multi line comment
regex : "\\/\\*",
push : "comment"
}, { }, {
token : "string", // single line token : "string", // single line
regex : '["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]' regex : '["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]'
@ -97,114 +166,10 @@ var CssHighlightRules = function() {
regex : "\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*" regex : "\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"
}, { }, {
caseInsensitive: true caseInsensitive: true
} }]
];
var ruleset = lang.copyArray(base_ruleset);
ruleset.unshift({
token : "paren.rparen",
regex : "\\}",
next: "start"
});
var media_ruleset = lang.copyArray( base_ruleset );
media_ruleset.unshift({
token : "paren.rparen",
regex : "\\}",
next: "media"
});
var base_comment = [{
token : "comment", // comment spanning whole line
regex : ".+"
}];
var comment = lang.copyArray(base_comment);
comment.unshift({
token : "comment", // closing comment
regex : ".*?\\*\\/",
next : "start"
});
var media_comment = lang.copyArray(base_comment);
media_comment.unshift({
token : "comment", // closing comment
regex : ".*?\\*\\/",
next : "media"
});
var ruleset_comment = lang.copyArray(base_comment);
ruleset_comment.unshift({
token : "comment", // closing comment
regex : ".*?\\*\\/",
next : "ruleset"
});
this.$rules = {
"start" : [{
token : "comment", // multi line comment
regex : "\\/\\*",
next : "comment"
}, {
token: "paren.lparen",
regex: "\\{",
next: "ruleset"
}, {
token: "string",
regex: "@.*?{",
next: "media"
},{
token: "keyword",
regex: "#[a-z0-9-_]+"
},{
token: "variable",
regex: "\\.[a-z0-9-_]+"
},{
token: "string",
regex: ":[a-z0-9-_]+"
},{
token: "constant",
regex: "[a-z0-9-_]+"
},{
caseInsensitive: true
}],
"media" : [ {
token : "comment", // multi line comment
regex : "\\/\\*",
next : "media_comment"
}, {
token: "paren.lparen",
regex: "\\{",
next: "media_ruleset"
},{
token: "string",
regex: "\\}",
next: "start"
},{
token: "keyword",
regex: "#[a-z0-9-_]+"
},{
token: "variable",
regex: "\\.[a-z0-9-_]+"
},{
token: "string",
regex: ":[a-z0-9-_]+"
},{
token: "constant",
regex: "[a-z0-9-_]+"
},{
caseInsensitive: true
}],
"comment" : comment,
"ruleset" : ruleset,
"ruleset_comment" : ruleset_comment,
"media_ruleset" : media_ruleset,
"media_comment" : media_comment
}; };
this.normalizeRules();
}; };
oop.inherits(CssHighlightRules, TextHighlightRules); oop.inherits(CssHighlightRules, TextHighlightRules);

View file

@ -42,34 +42,21 @@ var HtmlHighlightRules = require("./html_highlight_rules").HtmlHighlightRules;
var CurlyHighlightRules = function() { var CurlyHighlightRules = function() {
var CurlyRules = { HtmlHighlightRules.call(this);
"start" : [
{ this.$rules["start"].unshift({
token: "variable", token: "variable",
regex: "{{", regex: "{{",
next: "curly_mode" push: "curly-start"
} });
],
"curly_mode" : [ this.$rules["curly-start"] = [{
{
token: "variable", token: "variable",
regex: "}}", regex: "}}",
next: "start" next: "pop"
} }];
]
};
var htmlRules = new HtmlHighlightRules().getRules(); this.normalizeRules();
// Inject Curly start array into HTML rules
htmlRules.start = CurlyRules.start.concat(htmlRules.start);
// Inject Mustach mode array into HTML rules
htmlRules.curly_mode = CurlyRules.curly_mode;
// Return the augmented HTML rules
this.$rules = htmlRules;
}; };
oop.inherits(CurlyHighlightRules, HtmlHighlightRules); oop.inherits(CurlyHighlightRules, HtmlHighlightRules);

View file

@ -68,7 +68,7 @@ oop.inherits(FoldMode, BaseFoldMode);
var value = ""; var value = "";
for (var i = 0; i < tokens.length; i++) { for (var i = 0; i < tokens.length; i++) {
var token = tokens[i]; var token = tokens[i];
if (token.type.indexOf("meta.tag") === 0) if (token.type.indexOf("meta.tag") !== -1)
value += token.value; value += token.value;
else else
value += lang.stringRepeat(" ", token.value.length); value += lang.stringRepeat(" ", token.value.length);
@ -105,7 +105,7 @@ oop.inherits(FoldMode, BaseFoldMode);
var start; var start;
do { do {
if (token.type.indexOf("meta.tag") === 0) { if (token.type.indexOf("meta.tag") !== -1) {
if (!start) { if (!start) {
var start = { var start = {
row: iterator.getCurrentTokenRow(), row: iterator.getCurrentTokenRow(),
@ -138,7 +138,7 @@ oop.inherits(FoldMode, BaseFoldMode);
var end; var end;
do { do {
if (token.type.indexOf("meta.tag") === 0) { if (token.type.indexOf("meta.tag") !== -1) {
if (!end) { if (!end) {
end = { end = {
row: iterator.getCurrentTokenRow(), row: iterator.getCurrentTokenRow(),

View file

@ -131,14 +131,18 @@ var FtlLangHighlightRules = function () {
oop.inherits(FtlLangHighlightRules, TextHighlightRules); oop.inherits(FtlLangHighlightRules, TextHighlightRules);
var FtlHighlightRules = function() { var FtlHighlightRules = function() {
HtmlHighlightRules.call(this);
var directives = "assign|attempt|break|case|compress|default|elseif|else|escape|fallback|function|flush|" var directives = "assign|attempt|break|case|compress|default|elseif|else|escape|fallback|function|flush|"
+ "ftl|global|if|import|include|list|local|lt|macro|nested|noescape|noparse|nt|recover|recurse|return|rt|" + "ftl|global|if|import|include|list|local|lt|macro|nested|noescape|noparse|nt|recover|recurse|return|rt|"
+ "setting|stop|switch|t|visit"; + "setting|stop|switch|t|visit";
HtmlHighlightRules.call(this); var startRules = [
{
for (var i in this.$rules) { token : "comment",
this.$rules[i].unshift({ regex : "<#--",
next : "ftl-dcomment"
}, {
token : "string.interpolated", token : "string.interpolated",
regex : "\\${", regex : "\\${",
push : "ftl-start" push : "ftl-start"
@ -150,12 +154,11 @@ var FtlHighlightRules = function() {
token : "keyword.other", token : "keyword.other",
regex : "</?@[a-zA-Z\\.]+", regex : "</?@[a-zA-Z\\.]+",
push : "ftl-start" push : "ftl-start"
});
} }
];
this.embedRules(FtlLangHighlightRules, "ftl-"); var endRules = [
{
this.$rules["ftl-start"].unshift({
token : "keyword", token : "keyword",
regex : "/?>", regex : "/?>",
next : "pop" next : "pop"
@ -163,21 +166,23 @@ var FtlHighlightRules = function() {
token : "string.interpolated", token : "string.interpolated",
regex : "}", regex : "}",
next : "pop" next : "pop"
}); }
];
this.$rules.start.unshift({ for (var key in this.$rules)
token : "comment", this.$rules[key].unshift.apply(this.$rules[key], startRules);
regex : "<#--",
next : "comment"
});
this.$rules.comment.unshift({ this.embedRules(FtlLangHighlightRules, "ftl-", endRules, ["start"]);
this.addRules({
"ftl-dcomment" : [{
token : "comment", token : "comment",
regex : ".*?-->", regex : ".*?-->",
next : "start" next : "pop"
}, { }, {
token : "comment", token : "comment",
regex : ".+" regex : ".+"
}]
}); });
this.normalizeRules(); this.normalizeRules();

View file

@ -35,8 +35,7 @@ var oop = require("../lib/oop");
var lang = require("../lib/lang"); var lang = require("../lib/lang");
var CssHighlightRules = require("./css_highlight_rules").CssHighlightRules; var CssHighlightRules = require("./css_highlight_rules").CssHighlightRules;
var JavaScriptHighlightRules = require("./javascript_highlight_rules").JavaScriptHighlightRules; var JavaScriptHighlightRules = require("./javascript_highlight_rules").JavaScriptHighlightRules;
var xmlUtil = require("./xml_util"); var XmlHighlightRules = require("./xml_highlight_rules").XmlHighlightRules;
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
var tagMap = lang.createMap({ var tagMap = lang.createMap({
a : 'anchor', a : 'anchor',
@ -58,81 +57,66 @@ var tagMap = lang.createMap({
}); });
var HtmlHighlightRules = function() { var HtmlHighlightRules = function() {
XmlHighlightRules.call(this);
// regexp must not have capturing parentheses this.addRules({
// regexps are ordered -> the first match is used attributes: [{
this.$rules = { include : "space"
start : [{
token : "text",
regex : "<\\!\\[CDATA\\[",
next : "cdata"
}, { }, {
token : "xml-pe", token : "entity.other.attribute-name",
regex : "<\\?.*?\\?>" regex : "[-_a-zA-Z0-9:]+"
}, { }, {
token : "comment", token : "keyword.operator.separator",
regex : "<\\!--", regex : "=",
next : "comment" push : [{
include: "space",
}, { }, {
token : "xml-pe", token : "string",
regex : "<\\!.*?>" regex : "[^<>='\"`\\s]+",
next : "pop"
}, { }, {
token : "meta.tag", token : "empty",
regex : "<(?=script\\b)", regex : "",
next : "script" next : "pop"
}, {
token : "meta.tag",
regex : "<(?=style\\b)",
next : "style"
}, {
token : "meta.tag", // opening tag
regex : "<\\/?(?=\\S)",
next : "tag"
}, {
token : "text",
regex : "\\s+"
}, {
token : "constant.character.entity",
regex : "(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"
}],
cdata : [ {
token : "text",
regex : "\\]\\]>",
next : "start"
} ],
comment : [ {
token : "comment",
regex : ".*?-->",
next : "start"
}, {
defaultToken : "comment"
}] }]
};
xmlUtil.tag(this.$rules, "tag", "start", tagMap);
xmlUtil.tag(this.$rules, "style", "css-start", tagMap);
xmlUtil.tag(this.$rules, "script", "js-start", tagMap);
this.embedRules(JavaScriptHighlightRules, "js-", [{
token: "comment",
regex: "\\/\\/.*(?=<\\/script>)",
next: "tag"
}, { }, {
token: "meta.tag", include : "string"
regex: "<\\/(?=script)", }],
next: "tag" tag: [{
}]); token : function(start, tag) {
var group = tagMap[tag];
return ["punctuation.meta.tag.begin",
"meta.tag.name" + (group ? "." + group : "")];
},
regex : "(<)([-_a-zA-Z0-9:]+)",
next: "start_tag_stuff"
}, {
token : function(start, tag) {
var group = tagMap[tag];
return ["punctuation.meta.tag.begin",
"meta.tag.name" + (group ? "." + group : "")];
},
regex : "(</)([-_a-zA-Z0-9:]+)",
next: "end_tag_stuff"
}],
start_tag_stuff: [
{include : "attributes"},
{token : "punctuation.meta.tag.end", regex : "/?>", next : "start"}
],
end_tag_stuff: [
{include : "space"},
{token : "punctuation.meta.tag.end", regex : ">", next : "start"}
]
});
this.embedRules(CssHighlightRules, "css-", [{ this.embedTagRules(CssHighlightRules, "css-", "style");
token: "meta.tag", this.embedTagRules(JavaScriptHighlightRules, "js-", "script");
regex: "<\\/(?=style)",
next: "tag" if (this.constructor === HtmlHighlightRules)
}]); this.normalizeRules();
}; };
oop.inherits(HtmlHighlightRules, TextHighlightRules); oop.inherits(HtmlHighlightRules, XmlHighlightRules);
exports.HtmlHighlightRules = HtmlHighlightRules; exports.HtmlHighlightRules = HtmlHighlightRules;
}); });

View file

@ -38,8 +38,8 @@ define(function(require, exports, module) {
var HtmlRubyHighlightRules = function() { var HtmlRubyHighlightRules = function() {
HtmlHighlightRules.call(this); HtmlHighlightRules.call(this);
for (var i in this.$rules) { var startRules = [
this.$rules[i].unshift({ {
regex: "<%%|%%>", regex: "<%%|%%>",
token: "constant.language.escape" token: "constant.language.escape"
}, { }, {
@ -50,19 +50,24 @@ define(function(require, exports, module) {
token : "support.ruby_tag", token : "support.ruby_tag",
regex : "<%+(?!>)[-=]?", regex : "<%+(?!>)[-=]?",
push : "ruby-start" push : "ruby-start"
});
} }
];
this.embedRules(RubyHighlightRules, "ruby-"); var endRules = [
{
this.$rules["ruby-start"].unshift({
token : "support.ruby_tag", token : "support.ruby_tag",
regex : "%>", regex : "%>",
next : "pop" next : "pop"
}, { }, {
token: "comment", token: "comment",
regex: /#(?:[^%]|%[^>])*/ regex: "#(?:[^%]|%[^>])*"
}); }
];
for (var key in this.$rules)
this.$rules[key].unshift.apply(this.$rules[key], startRules);
this.embedRules(RubyHighlightRules, "ruby-", endRules, ["start"]);
this.normalizeRules(); this.normalizeRules();
}; };

View file

@ -86,7 +86,8 @@ var JavaScriptHighlightRules = function() {
"no_regex" : [ "no_regex" : [
{ {
token : "comment", token : "comment",
regex : /\/\/.*$/ regex : "\\/\\/",
next : "line_comment"
}, },
DocCommentHighlightRules.getStartRule("doc-start"), DocCommentHighlightRules.getStartRule("doc-start"),
{ {
@ -215,8 +216,8 @@ var JavaScriptHighlightRules = function() {
next : "comment_regex_allowed" next : "comment_regex_allowed"
}, { }, {
token : "comment", token : "comment",
regex : "\\/\\/.*$", regex : "\\/\\/",
next : "start" next : "line_comment_regex_allowed"
}, { }, {
token: "string.regexp", token: "string.regexp",
regex: "\\/", regex: "\\/",
@ -309,6 +310,14 @@ var JavaScriptHighlightRules = function() {
{token : "comment", regex : "\\*\\/", next : "no_regex"}, {token : "comment", regex : "\\*\\/", next : "no_regex"},
{defaultToken : "comment"} {defaultToken : "comment"}
], ],
"line_comment_regex_allowed" : [
{token : "comment", regex : "$|^", next : "start"},
{defaultToken : "comment"}
],
"line_comment" : [
{token : "comment", regex : "$|^", next : "no_regex"},
{defaultToken : "comment"}
],
"qqstring" : [ "qqstring" : [
{ {
token : "constant.language.escape", token : "constant.language.escape",

View file

@ -37,45 +37,52 @@ var JavaHighlightRules = require("./java_highlight_rules").JavaHighlightRules;
var JspHighlightRules = function() { var JspHighlightRules = function() {
HtmlHighlightRules.call(this); HtmlHighlightRules.call(this);
for (var i in this.$rules) {
this.$rules[i].unshift({
token : "meta.tag", // jsp open tag
regex : "<%@?|<%=?|<jsp:[^>]+>",
next : "jsp-start"
});
}
var builtinVariables = 'request|response|out|session|' + var builtinVariables = 'request|response|out|session|' +
'application|config|pageContext|page|Exception'; 'application|config|pageContext|page|Exception';
var keywords = 'page|include|taglib'; var keywords = 'page|include|taglib';
this.embedRules(JavaHighlightRules, "jsp-"); var startRules = [
{
this.$rules["start"].unshift({
token : "comment", token : "comment",
regex : "<%--", regex : "<%--",
next : "comment" push : "jsp-dcomment"
}); }, {
token : "meta.tag", // jsp open tag
regex : "<%@?|<%=?|<jsp:[^>]+>",
push : "jsp-start"
}
];
this.$rules["jsp-start"].unshift({ var endRules = [
{
token : "meta.tag", // jsp close tag token : "meta.tag", // jsp close tag
regex : "%>|<\\/jsp:[^>]+>", regex : "%>|<\\/jsp:[^>]+>",
next : "start" next : "pop"
}, }, {
{
token: "variable.language", token: "variable.language",
regex : builtinVariables regex : builtinVariables
}, { }, {
token: "keyword", token: "keyword",
regex : keywords regex : keywords
}); }
];
this.$rules.comment.unshift({ for (var key in this.$rules)
this.$rules[key].unshift.apply(this.$rules[key], startRules);
this.embedRules(JavaHighlightRules, "jsp-", endRules, ["start"]);
this.addRules({
"jsp-dcomment" : [{
token : "comment", token : "comment",
regex : ".*?--%>", regex : ".*?--%>",
next : "start" next : "pop"
}]
}); });
this.normalizeRules();
}; };
oop.inherits(JspHighlightRules, HtmlHighlightRules); oop.inherits(JspHighlightRules, HtmlHighlightRules);

View file

@ -32,12 +32,11 @@ define(function(require, exports, module) {
"use strict"; "use strict";
var oop = require("../lib/oop"); var oop = require("../lib/oop");
var CssHighlightRules = require("./css_highlight_rules").CssHighlightRules;
var JavaScriptHighlightRules = require("./javascript_highlight_rules").JavaScriptHighlightRules;
var xmlUtil = require("./xml_util");
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
var HtmlHighlightRules = require("./html_highlight_rules").HtmlHighlightRules;
var LiquidHighlightRules = function() { var LiquidHighlightRules = function() {
HtmlHighlightRules.call(this);
// see: https://developer.mozilla.org/en/Liquid/Reference/Global_Objects // see: https://developer.mozilla.org/en/Liquid/Reference/Global_Objects
var functions = ( var functions = (
@ -69,65 +68,28 @@ var LiquidHighlightRules = function() {
"keyword.definition": definitions "keyword.definition": definitions
}, "identifier"); }, "identifier");
// regexp must not have capturing parentheses. Use (?:) instead. // add liquid start tags to the HTML start tags
// regexps are ordered -> the first match is used for (var rule in this.$rules) {
this.$rules[rule].unshift({
this.$rules = {
start : [{
token : "variable", token : "variable",
regex : "{%", regex : "{%",
next : "liquid_start" push : "liquid-start"
}, { }, {
token : "variable", token : "variable",
regex : "{{", regex : "{{",
next : "liquid_start" push : "liquid-start"
}, { });
token : "meta.tag", }
regex : "<\\!\\[CDATA\\[",
next : "cdata"
}, {
token : "xml-pe",
regex : "<\\?.*?\\?>"
}, {
token : "comment",
regex : "<\\!--",
next : "comment"
}, {
token : "meta.tag",
regex : "<(?=\\s*script\\b)",
next : "script"
}, {
token : "meta.tag",
regex : "<(?=\\s*style\\b)",
next : "style"
}, {
token : "meta.tag", // opening tag
regex : "<\\/?",
next : "tag"
} ],
cdata : [ { this.addRules({
token : "text", "liquid-start" : [{
regex : "\\]\\]>",
next : "start"
} ],
comment : [ {
token : "comment",
regex : ".*?-->",
next : "start"
}, {
defaultToken : "comment"
} ] ,
liquid_start : [{
token: "variable", token: "variable",
regex: "}}", regex: "}}",
next: "start" next: "pop"
}, { }, {
token: "variable", token: "variable",
regex: "%}", regex: "%}",
next: "start" next: "pop"
}, { }, {
token : "string", // single line token : "string", // single line
regex : '["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]' regex : '["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]'
@ -159,27 +121,9 @@ var LiquidHighlightRules = function() {
token : "text", token : "text",
regex : "\\s+" regex : "\\s+"
}] }]
}; });
xmlUtil.tag(this.$rules, "tag", "start"); this.normalizeRules();
xmlUtil.tag(this.$rules, "style", "css-start");
xmlUtil.tag(this.$rules, "script", "js-start");
this.embedRules(JavaScriptHighlightRules, "js-", [{
token: "comment",
regex: "\\/\\/.*(?=<\\/script>)",
next: "tag"
}, {
token: "meta.tag",
regex: "<\\/(?=script)",
next: "tag"
}]);
this.embedRules(CssHighlightRules, "css-", [{
token: "meta.tag",
regex: "<\\/(?=style)",
next: "tag"
}]);
}; };
oop.inherits(LiquidHighlightRules, TextHighlightRules); oop.inherits(LiquidHighlightRules, TextHighlightRules);

View file

@ -8,31 +8,38 @@ var HtmlHighlightRules = require("./html_highlight_rules").HtmlHighlightRules;
var LuaHighlightRules = require("./lua_highlight_rules").LuaHighlightRules; var LuaHighlightRules = require("./lua_highlight_rules").LuaHighlightRules;
var LuaPageHighlightRules = function() { var LuaPageHighlightRules = function() {
this.$rules = new HtmlHighlightRules().getRules(); HtmlHighlightRules.call(this);
for (var i in this.$rules) { var startRules = [
this.$rules[i].unshift({ {
token: "keyword", token: "keyword",
regex: "<\\%\\=?", regex: "<\\%\\=?",
next: "lua-start" push: "lua-start"
}, { }, {
token: "keyword", token: "keyword",
regex: "<\\?lua\\=?", regex: "<\\?lua\\=?",
next: "lua-start" push: "lua-start"
});
} }
this.embedRules(LuaHighlightRules, "lua-", [ ];
var endRules = [
{ {
token: "keyword", token: "keyword",
regex: "\\%>", regex: "\\%>",
next: "start" next: "pop"
}, }, {
{
token: "keyword", token: "keyword",
regex: "\\?>", regex: "\\?>",
next: "start" next: "pop"
} }
]); ];
this.embedRules(LuaHighlightRules, "lua-", endRules, ["start"]);
for (var key in this.$rules)
this.$rules[key].unshift.apply(this.$rules[key], startRules);
this.normalizeRules();
}; };
oop.inherits(LuaPageHighlightRules, HtmlHighlightRules); oop.inherits(LuaPageHighlightRules, HtmlHighlightRules);

View file

@ -42,16 +42,57 @@ function github_embed(tag, prefix) {
return { // Github style block return { // Github style block
token : "support.function", token : "support.function",
regex : "^```" + tag + "\\s*$", regex : "^```" + tag + "\\s*$",
next : prefix + "start" push : prefix + "start"
}; };
} }
var MarkdownHighlightRules = function() { var MarkdownHighlightRules = function() {
HtmlHighlightRules.call(this);
// 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"].unshift({
token : "empty_line",
regex : '^$',
next: "allowBlock"
}, { // h1
token: "markup.heading.1",
regex: "^=+(?=\\s*$)"
}, { // h2
token: "markup.heading.2",
regex: "^\\-+(?=\\s*$)"
}, {
token : function(value) {
return "markup.heading." + value.length;
},
regex : /^#{1,6}(?=\s*[^ #]|\s+#.)/,
next : "header"
},
github_embed("(?:javascript|js)", "jscode-"),
github_embed("xml", "xmlcode-"),
github_embed("html", "htmlcode-"),
github_embed("css", "csscode-"),
{ // Github style block
token : "support.function",
regex : "^```\\s*[a-zA-Z]*(?:{.*?\\})?\\s*$",
next : "githubblock"
}, { // block quote
token : "string",
regex : "^>[ ].+$",
next : "blockquote"
}, { // HR * - _
token : "constant",
regex : "^ {0,2}(?:(?: ?\\* ?){3,}|(?: ?\\- ?){3,}|(?: ?\\_ ?){3,})\\s*$",
next: "allowBlock"
}, { // list
token : "markup.list",
regex : "^\\s{0,3}(?:[*+-]|\\d+\\.)\\s+",
next : "listblock-start"
}, {
include : "basic"
});
this.addRules({
"basic" : [{ "basic" : [{
token : "constant.language.escape", token : "constant.language.escape",
regex : /\\[\\`*_{}\[\]()#+\-.!]/ regex : /\\[\\`*_{}\[\]()#+\-.!]/
@ -93,47 +134,6 @@ var MarkdownHighlightRules = function() {
{token : "empty", regex : "", next : "start"} {token : "empty", regex : "", next : "start"}
], ],
"start" : [{
token : "empty_line",
regex : '^$',
next: "allowBlock"
}, { // h1
token: "markup.heading.1",
regex: "^=+(?=\\s*$)"
}, { // h2
token: "markup.heading.2",
regex: "^\\-+(?=\\s*$)"
}, {
token : function(value) {
return "markup.heading." + value.length;
},
regex : /^#{1,6}(?=\s*[^ #]|\s+#.)/,
next : "header"
},
github_embed("(?:javascript|js)", "js-"),
github_embed("xml", "xml-"),
github_embed("html", "html-"),
github_embed("css", "css-"),
{ // Github style block
token : "support.function",
regex : "^```\\s*[a-zA-Z]*(?:{.*?\\})?\\s*$",
next : "githubblock"
}, { // block quote
token : "string",
regex : "^>[ ].+$",
next : "blockquote"
}, { // HR * - _
token : "constant",
regex : "^ {0,2}(?:(?: ?\\* ?){3,}|(?: ?\\- ?){3,}|(?: ?\\_ ?){3,})\\s*$",
next: "allowBlock"
}, { // list
token : "markup.list",
regex : "^\\s{0,3}(?:[*+-]|\\d+\\.)\\s+",
next : "listblock-start"
}, {
include : "basic"
}],
"header" : [{ "header" : [{
regex: "$", regex: "$",
next : "start" next : "start"
@ -180,40 +180,32 @@ var MarkdownHighlightRules = function() {
token : "support.function", token : "support.function",
regex : ".+" regex : ".+"
} ] } ]
}; });
this.embedRules(JavaScriptHighlightRules, "js-", [{ this.embedRules(JavaScriptHighlightRules, "jscode-", [{
token : "support.function", token : "support.function",
regex : "^```", regex : "^```",
next : "start" next : "pop"
}]); }]);
this.embedRules(HtmlHighlightRules, "html-", [{ this.embedRules(HtmlHighlightRules, "htmlcode-", [{
token : "support.function", token : "support.function",
regex : "^```", regex : "^```",
next : "start" next : "pop"
}]); }]);
this.embedRules(CssHighlightRules, "css-", [{ this.embedRules(CssHighlightRules, "csscode-", [{
token : "support.function", token : "support.function",
regex : "^```", regex : "^```",
next : "start" next : "pop"
}]); }]);
this.embedRules(XmlHighlightRules, "xml-", [{ this.embedRules(XmlHighlightRules, "xmlcode-", [{
token : "support.function", token : "support.function",
regex : "^```", regex : "^```",
next : "start" next : "pop"
}]); }]);
var html = new HtmlHighlightRules().getRules();
for (var i in html) {
if (this.$rules[i])
this.$rules[i] = this.$rules[i].concat(html[i]);
else
this.$rules[i] = html[i];
}
this.normalizeRules(); this.normalizeRules();
}; };
oop.inherits(MarkdownHighlightRules, TextHighlightRules); oop.inherits(MarkdownHighlightRules, TextHighlightRules);

View file

@ -1057,21 +1057,27 @@ oop.inherits(PhpLangHighlightRules, TextHighlightRules);
var PhpHighlightRules = function() { var PhpHighlightRules = function() {
HtmlHighlightRules.call(this); HtmlHighlightRules.call(this);
for (var i in this.$rules) { var startRules = [
this.$rules[i].unshift({ {
token : "support.php_tag", // php open tag token : "support.php_tag", // php open tag
regex : "<\\?(?:php|=)?", regex : "<\\?(?:php|=)?",
push : "php-start" push : "php-start"
});
} }
];
this.embedRules(PhpLangHighlightRules, "php-"); var endRules = [
{
this.$rules["php-start"].unshift({
token : "support.php_tag", // php close tag token : "support.php_tag", // php close tag
regex : "\\?>", regex : "\\?>",
next : "pop" next : "pop"
}); }
];
for (var key in this.$rules)
this.$rules[key].unshift.apply(this.$rules[key], startRules);
this.embedRules(PhpLangHighlightRules, "php-", endRules, ["start"]);
this.normalizeRules(); this.normalizeRules();
}; };

View file

@ -24,24 +24,21 @@ var HtmlHighlightRules = require("./html_highlight_rules").HtmlHighlightRules;
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
var RHtmlHighlightRules = function() { var RHtmlHighlightRules = function() {
HtmlHighlightRules.call(this);
// regexp must not have capturing parentheses
// regexps are ordered -> the first match is used
this.$rules = new HtmlHighlightRules().getRules();
this.$rules["start"].unshift({ this.$rules["start"].unshift({
token: "support.function.codebegin", token: "support.function.codebegin",
regex: "^<" + "!--\\s*begin.rcode\\s*(?:.*)", regex: "^<" + "!--\\s*begin.rcode\\s*(?:.*)",
next: "r-start" next: "r-start"
}); });
var rRules = new RHighlightRules().getRules(); this.embedRules(RHighlightRules, "r-", [{
this.addRules(rRules, "r-");
this.$rules["r-start"].unshift({
token: "support.function.codeend", token: "support.function.codeend",
regex: "^\\s*end.rcode\\s*-->", regex: "^\\s*end.rcode\\s*-->",
next: "start" next: "start"
}); }], ["start"]);
this.normalizeRules();
}; };
oop.inherits(RHtmlHighlightRules, TextHighlightRules); oop.inherits(RHtmlHighlightRules, TextHighlightRules);

View file

@ -34,28 +34,13 @@ define(function(require, exports, module) {
var oop = require("../lib/oop"); var oop = require("../lib/oop");
var JavaScriptHighlightRules = require("./javascript_highlight_rules").JavaScriptHighlightRules; var JavaScriptHighlightRules = require("./javascript_highlight_rules").JavaScriptHighlightRules;
var XmlHighlightRules = require("./xml_highlight_rules").XmlHighlightRules; var XmlHighlightRules = require("./xml_highlight_rules").XmlHighlightRules;
var xmlUtil = require("./xml_util");
var SvgHighlightRules = function() { var SvgHighlightRules = function() {
XmlHighlightRules.call(this); XmlHighlightRules.call(this);
this.$rules.start.splice(3, 0, { this.embedTagRules(JavaScriptHighlightRules, "js-", "script");
token : "meta.tag",
regex : "<(?=script)",
next : "script"
});
xmlUtil.tag(this.$rules, "script", "js-start"); this.normalizeRules();
this.embedRules(JavaScriptHighlightRules, "js-", [{
token: "comment",
regex: "\\/\\/.*(?=<\\/script>)",
next: "tag"
}, {
token: "meta.tag",
regex: "<\\/(?=script)",
next: "tag"
}]);
}; };
oop.inherits(SvgHighlightRules, XmlHighlightRules); oop.inherits(SvgHighlightRules, XmlHighlightRules);

View file

@ -51,15 +51,23 @@ var TextHighlightRules = function() {
(function() { (function() {
this.addRules = function(rules, prefix) { this.addRules = function(rules, prefix) {
if (!prefix) {
for (var key in rules)
this.$rules[key] = rules[key];
return;
}
for (var key in rules) { for (var key in rules) {
var state = rules[key]; var state = rules[key];
for (var i = 0; i < state.length; i++) { for (var i = 0; i < state.length; i++) {
var rule = state[i]; var rule = state[i];
if (rule.next) { if (rule.next) {
if (typeof rule.next != "string") if (typeof rule.next != "string") {
if (rule.nextState && rule.nextState.indexOf(prefix) !== 0)
rule.nextState = prefix + rule.nextState; rule.nextState = prefix + rule.nextState;
else } else {
if (rule.next.indexOf(prefix) !== 0)
rule.next = prefix + rule.next; rule.next = prefix + rule.next;
}
} }
} }
@ -93,7 +101,7 @@ var TextHighlightRules = function() {
if (!this.$embeds) if (!this.$embeds)
this.$embeds = []; this.$embeds = [];
this.$embeds.push(prefix); this.$embeds.push(prefix);
} };
this.getEmbeds = function() { this.getEmbeds = function() {
return this.$embeds; return this.$embeds;

View file

@ -56,35 +56,37 @@ var TwigHighlightRules = function() {
}, "identifier"); }, "identifier");
// add twig start tags to the HTML start tags // add twig start tags to the HTML start tags
this.$rules.start.unshift({ for (var rule in this.$rules) {
this.$rules[rule].unshift({
token : "variable.other.readwrite.local.twig", token : "variable.other.readwrite.local.twig",
regex : "\\{\\{-?", regex : "\\{\\{-?",
next : "twig-start" push : "twig-start"
}, { }, {
token : "meta.tag.twig", token : "meta.tag.twig",
regex : "\\{%-?", regex : "\\{%-?",
next : "twig-start" push : "twig-start"
}, { }, {
token : "comment.block.twig", token : "comment.block.twig",
regex : "\\{#-?", regex : "\\{#-?",
next : "comment" push : "twig-comment"
}); });
}
// add twig closing comment to HTML comments // add twig closing comment to HTML comments
this.$rules.comment.unshift({ this.$rules["twig-comment"] = [{
token : "comment.block.twig", token : "comment.block.twig",
regex : ".*-?#\\}", regex : ".*-?#\\}",
next : "start" next : "pop"
}); }];
this.$rules["twig-start"] = [{ this.$rules["twig-start"] = [{
token : "variable.other.readwrite.local.twig", token : "variable.other.readwrite.local.twig",
regex : "-?\\}\\}", regex : "-?\\}\\}",
next : "start" next : "pop"
}, { }, {
token : "meta.tag.twig", token : "meta.tag.twig",
regex : "-?%\\}", regex : "-?%\\}",
next : "start" next : "pop"
}, { }, {
token : "string", token : "string",
regex : "'", regex : "'",
@ -131,8 +133,6 @@ var TwigHighlightRules = function() {
regex : "\\s+" regex : "\\s+"
} ]; } ];
this.$rules["twig-qqstring"] = [{ this.$rules["twig-qqstring"] = [{
token : "constant.language.escape", token : "constant.language.escape",
regex : /\\[\\"$#ntr]|#{[^"}]*}/ regex : /\\[\\"$#ntr]|#{[^"}]*}/
@ -156,6 +156,8 @@ var TwigHighlightRules = function() {
defaultToken : "string" defaultToken : "string"
} }
]; ];
this.normalizeRules();
}; };
oop.inherits(TwigHighlightRules, TextHighlightRules); oop.inherits(TwigHighlightRules, TextHighlightRules);

View file

@ -3,12 +3,12 @@ define(function(require, exports, module) {
var oop = require("../lib/oop"); var oop = require("../lib/oop");
var lang = require("../lib/lang"); var lang = require("../lib/lang");
var xmlUtil = require("./xml_util");
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
var CssHighlightRules = require("./css_highlight_rules").CssHighlightRules; var HtmlHighlightRules = require("./html_highlight_rules").HtmlHighlightRules;
var JavaScriptHighlightRules = require("./javascript_highlight_rules").JavaScriptHighlightRules;
var VelocityHighlightRules = function() { var VelocityHighlightRules = function() {
HtmlHighlightRules.call(this);
var builtinConstants = lang.arrayToMap( var builtinConstants = lang.arrayToMap(
('true|false|null').split('|') ('true|false|null').split('|')
); );
@ -31,38 +31,14 @@ var VelocityHighlightRules = function() {
// regexp must not have capturing parentheses. Use (?:) instead. // regexp must not have capturing parentheses. Use (?:) instead.
// regexps are ordered -> the first match is used // regexps are ordered -> the first match is used
this.$rules = { this.$rules.start.push(
"start" : [
{ {
token : "meta.tag",
regex : "<\\!\\[CDATA\\[",
next : "cdata"
}, {
token : "xml-pe",
regex : "<\\?.*?\\?>"
}, {
token : "comment",
regex : "<\\!--",
next : "comment"
}, {
token : "meta.tag",
regex : "<(?=\\s*script\\b)",
next : "script"
}, {
token : "meta.tag",
regex : "<(?=\\s*style\\b)",
next : "style"
}, {
token : "meta.tag", // opening tag
regex : "<\\/?(?=[a-z])",
next : "tag"
}, {
token : "comment", token : "comment",
regex : "##.*$" regex : "##.*$"
},{ },{
token : "comment.block", // multi line comment token : "comment.block", // multi line comment
regex : "#\\*", regex : "#\\*",
next : "comment" next : "vm_comment"
}, { }, {
token : "string.regexp", token : "string.regexp",
regex : "[/](?:(?:\\[(?:\\\\]|[^\\]])+\\])|(?:\\\\/|[^\\]/]))*[/]\\w*\\s*(?=[).,;]|$)" regex : "[/](?:(?:\\[(?:\\\\]|[^\\]])+\\])|(?:\\\\/|[^\\]/]))*[/]\\w*\\s*(?=[).,;]|$)"
@ -114,21 +90,9 @@ var VelocityHighlightRules = function() {
token : "text", token : "text",
regex : "\\s+" regex : "\\s+"
} }
], );
"cdata" : [
{ this.$rules["vm_comment"] = [
token : "text",
regex : "\\]\\]>",
next : "start"
}, {
token : "text",
regex : "\\s+"
}, {
token : "text",
regex : ".+"
}
],
"comment" : [
{ {
token : "comment", // closing comment token : "comment", // closing comment
regex : "\\*#|-->", regex : "\\*#|-->",
@ -136,12 +100,13 @@ var VelocityHighlightRules = function() {
}, { }, {
defaultToken: "comment" defaultToken: "comment"
} }
], ];
"vm_start" : [
this.$rules["vm_start"] = [
{ {
token: "variable", token: "variable",
regex: "}", regex: "}",
next: "start" next: "pop"
}, { }, {
token : "string.regexp", token : "string.regexp",
regex : "[/](?:(?:\\[(?:\\\\]|[^\\]])+\\])|(?:\\\\/|[^\\]/]))*[/]\\w*\\s*(?=[).,;]|$)" regex : "[/](?:(?:\\[(?:\\\\]|[^\\]])+\\])|(?:\\\\/|[^\\]/]))*[/]\\w*\\s*(?=[).,;]|$)"
@ -193,36 +158,17 @@ var VelocityHighlightRules = function() {
token : "text", token : "text",
regex : "\\s+" regex : "\\s+"
} }
] ];
};
xmlUtil.tag(this.$rules, "tag", "start");
xmlUtil.tag(this.$rules, "style", "css-start");
xmlUtil.tag(this.$rules, "script", "js-start");
this.embedRules(JavaScriptHighlightRules, "js-", [{
token: "comment",
regex: "\\/\\/.*(?=<\\/script>)",
next: "tag"
}, {
token: "meta.tag",
regex: "<\\/(?=script)",
next: "tag"
}]);
this.embedRules(CssHighlightRules, "css-", [{
token: "meta.tag",
regex: "<\\/(?=style)",
next: "tag"
}]);
for (var i in this.$rules) { for (var i in this.$rules) {
this.$rules[i].unshift({ this.$rules[i].unshift({
token: "variable", token: "variable",
regex: "\\${", regex: "\\${",
next: "vm_start" push: "vm_start"
}); });
} }
this.normalizeRules();
}; };
oop.inherits(VelocityHighlightRules, TextHighlightRules); oop.inherits(VelocityHighlightRules, TextHighlightRules);

View file

@ -35,36 +35,181 @@ var oop = require("../lib/oop");
var xmlUtil = require("./xml_util"); var xmlUtil = require("./xml_util");
var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
var XmlHighlightRules = function() { var XmlHighlightRules = function(normalize) {
this.$rules = { this.$rules = {
start : [ start : [
{token : "text", regex : "<\\!\\[CDATA\\[", next : "cdata"}, {token : "punctuation.string.begin", regex : "<\\!\\[CDATA\\[", next : "cdata"},
{token : "xml-pe", regex : "<\\?.*?\\?>"},
{token : "comment", regex : "<\\!--", next : "comment"},
{token : "xml-pe", regex : "<\\!.*?>"},
{token : "meta.tag", regex : "<\\/?", next : "tag"},
{token : "text", regex : "\\s+"},
{ {
token : "constant.character.entity", token : ["punctuation.instruction.begin", "keyword.instruction"],
regex : "(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)" regex : "(<\\?)(xml)(?=[\\s])", next : "xml_declaration"
} },
{
token : ["punctuation.instruction.begin", "keyword.instruction"],
regex : "(<\\?)([-_a-zA-Z0-9]+)", next : "instruction"
},
{token : "comment", regex : "<\\!--", next : "comment"},
{
token : ["punctuation.doctype.begin", "keyword.doctype"],
regex : "(<\\!)(DOCTYPE)(?=[\\s])", next : "doctype"
},
{include : "tag"},
{include : "reference"}
], ],
xml_declaration : [
{include : "attributes"},
{include : "instruction"}
],
instruction : [
{token : "punctuation.instruction.end", regex : "\\?>", next : "start"}
],
doctype : [
{include : "space"},
{include : "string"},
{token : "punctuation.doctype.end", regex : ">", next : "start"},
{token : "text", regex : "[-_a-zA-Z0-9:]+"},
{token : "punctuation.begin", regex : "\\[", push : "declarations"}
],
declarations : [{
token : "text",
regex : "\\s+"
}, {
token: "punctuation.end",
regex: "]",
next: "pop"
}, {
token : ["punctuation.begin", "keyword"],
regex : "(<\\!)([-_a-zA-Z0-9]+)",
push : [{
token : "text",
regex : "\\s+"
},
{
token : "punctuation.end",
regex : ">",
next : "pop"
},
{include : "string"}]
}],
cdata : [ cdata : [
{token : "text", regex : "\\]\\]>", next : "start"}, {token : "string.end", regex : "\\]\\]>", next : "start"},
{token : "text", regex : "\\s+"}, {token : "text", regex : "\\s+"},
{token : "text", regex : "(?:[^\\]]|\\](?!\\]>))+"} {token : "text", regex : "(?:[^\\]]|\\](?!\\]>))+"}
], ],
comment : [ comment : [
{token : "comment", regex : ".*?-->", next : "start"}, {token : "comment", regex : "-->", next : "start"},
{token : "comment", regex : ".+"} {defaultToken : "comment"}
],
tag : [{
token : ["punctuation.meta.tag.begin", "meta.tag.name"],
regex : "(<)((?:[-_a-zA-Z0-9]+:)?[-_a-zA-Z0-9]+)",
next: [
{include : "attributes"},
{token : "punctuation.meta.tag.end", regex : "/?>", next : "start"}
] ]
}, {
token : ["punctuation.meta.tag.begin", "meta.tag.name"],
regex : "(</)((?:[-_a-zA-Z0-9]+:)?[-_a-zA-Z0-9]+)",
next: [
{include : "space"},
{token : "punctuation.meta.tag.end", regex : ">", next : "start"}
]
}],
space : [
{token : "text", regex : "\\s+"}
],
reference : [{
token : "constant.language.escape",
regex : "(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"
}, {
token : "invalid.illegal", regex : "&"
}],
string: [{
token : "string",
regex : "'",
push : "qstring_inner"
}, {
token : "string",
regex : '"',
push : "qqstring_inner"
}],
qstring_inner: [
{token : "string", regex: "'", next: "pop"},
{include : "reference"},
{defaultToken : "string"}
],
qqstring_inner: [
{token : "string", regex: '"', next: "pop"},
{include : "reference"},
{defaultToken : "string"}
],
attributes: [{
token : "entity.other.attribute-name",
regex : "(?:[-_a-zA-Z0-9]+:)?[-_a-zA-Z0-9]+"
}, {
token : "keyword.operator.separator",
regex : "="
}, {
include : "space"
}, {
include : "string"
}]
}; };
xmlUtil.tag(this.$rules, "tag", "start"); if (this.constructor === XmlHighlightRules)
this.normalizeRules();
}; };
(function() {
this.embedTagRules = function(HighlightRules, prefix, tag){
this.$rules.tag.unshift({
token : ["punctuation.meta.tag.begin." + tag, "meta.tag.name." + tag],
regex : "(<)(" + tag + ")",
next: [
{include : "space"},
{include : "attributes"},
{token : "punctuation.meta.tag.end." + tag, regex : "/?>", next : prefix + "start"}
]
});
this.$rules[tag + "-end"] = [
{include : "space"},
{token : "punctuation.meta.tag.end." + tag, regex : ">", next: "start",
onMatch : function(value, currentState, stack) {
stack.splice(0);
return this.token;
}}
]
this.embedRules(HighlightRules, prefix, [{
token: ["punctuation.meta.tag.begin." + tag, "meta.tag.name." + tag],
regex : "(</)(" + tag + ")",
next: tag + "-end"
}, {
token: "string.begin",
regex : "<\\!\\[CDATA\\["
}, {
token: "string.end",
regex : "\\]\\]>"
}]);
};
}).call(TextHighlightRules.prototype);
oop.inherits(XmlHighlightRules, TextHighlightRules); oop.inherits(XmlHighlightRules, TextHighlightRules);
exports.XmlHighlightRules = XmlHighlightRules; exports.XmlHighlightRules = XmlHighlightRules;

View file

@ -63,6 +63,11 @@
color: #F92672 color: #F92672
} }
.ace-monokai .ace_punctuation,
.ace-monokai .ace_punctuation.ace_tag {
color: #fff
}
.ace-monokai .ace_constant.ace_character, .ace-monokai .ace_constant.ace_character,
.ace-monokai .ace_constant.ace_language, .ace-monokai .ace_constant.ace_language,
.ace-monokai .ace_constant.ace_numeric, .ace-monokai .ace_constant.ace_numeric,