diff --git a/lib/ace/mode/text.js b/lib/ace/mode/text.js index 34a2a511..f04f1722 100644 --- a/lib/ace/mode/text.js +++ b/lib/ace/mode/text.js @@ -62,7 +62,7 @@ var Mode = function() { this.getTokenizer = function() { if (!this.$tokenizer) { - this.$highlightRules = new this.HighlightRules(); + this.$highlightRules = this.$highlightRules || new this.HighlightRules(); this.$tokenizer = new Tokenizer(this.$highlightRules.getRules()); } return this.$tokenizer; diff --git a/lib/ace/tokenizer.js b/lib/ace/tokenizer.js index 72989766..64bf59e8 100644 --- a/lib/ace/tokenizer.js +++ b/lib/ace/tokenizer.js @@ -116,6 +116,11 @@ var Tokenizer = function(rules) { rule.onMatch = null; } + if (!ruleRegExps.length) { + mapping[0] = 0; + ruleRegExps.push("$"); + } + splitterRurles.forEach(function(rule) { rule.splitRegex = this.createSplitterRegexp(rule.regex, flag); }, this);