Added LuaPage mode/highlighter to Ace.
Added LuaPage mode and example doc to kitchen sink demo.
This commit is contained in:
parent
5f6cbc8bd7
commit
561a426516
4 changed files with 132 additions and 0 deletions
22
lib/ace/mode/luapage.js
Normal file
22
lib/ace/mode/luapage.js
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
define(function(require, exports, module) {
|
||||
"use strict";
|
||||
|
||||
var oop = require("../lib/oop");
|
||||
var HtmlMode = require("./html").Mode;
|
||||
var LuaMode = require("./lua").Mode;
|
||||
var Tokenizer = require("../tokenizer").Tokenizer;
|
||||
var LuaPageHighlightRules = require("./luapage_highlight_rules").LuaPageHighlightRules;
|
||||
|
||||
var Mode = function() {
|
||||
var highlighter = new LuaPageHighlightRules();
|
||||
|
||||
this.$tokenizer = new Tokenizer(new LuaPageHighlightRules().getRules());
|
||||
this.$embeds = highlighter.getEmbeds();
|
||||
this.createModeDelegates({
|
||||
"lua-": LuaMode
|
||||
});
|
||||
};
|
||||
oop.inherits(Mode, HtmlMode);
|
||||
|
||||
exports.Mode = Mode;
|
||||
});
|
||||
40
lib/ace/mode/luapage_highlight_rules.js
Normal file
40
lib/ace/mode/luapage_highlight_rules.js
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
define(function(require, exports, module) {
|
||||
"use strict";
|
||||
|
||||
var oop = require("../lib/oop");
|
||||
var HtmlHighlightRules = require("./html_highlight_rules").HtmlHighlightRules;
|
||||
var LuaHighlightRules = require("./lua_highlight_rules").LuaHighlightRules;
|
||||
|
||||
var LuaPageHighlightRules = function() {
|
||||
this.$rules = new HtmlHighlightRules().getRules();
|
||||
|
||||
for (var i in this.$rules){ // Thanks to Harutyun Amirjanyan for this fix.
|
||||
this.$rules[i].unshift({
|
||||
token: "keyword",
|
||||
regex: "<\\%\\=?",
|
||||
next: "lua-start"
|
||||
}, {
|
||||
token: "keyword",
|
||||
regex: "<\\?lua\\=?",
|
||||
next: "lua-start"
|
||||
});
|
||||
}
|
||||
this.embedRules(LuaHighlightRules, "lua-", [
|
||||
{
|
||||
token: "keyword",
|
||||
regex: "\\%>",
|
||||
next: "start"
|
||||
},
|
||||
{
|
||||
token: "keyword",
|
||||
regex: "\\?>",
|
||||
next: "start"
|
||||
}
|
||||
]);
|
||||
};
|
||||
|
||||
oop.inherits(LuaPageHighlightRules, HtmlHighlightRules);
|
||||
|
||||
exports.LuaPageHighlightRules = LuaPageHighlightRules;
|
||||
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue