lib/gollum/public/gollum/livepreview/js/ace/lib/ace/mode/xml.js in gollum-3.1.2 vs lib/gollum/public/gollum/livepreview/js/ace/lib/ace/mode/xml.js in gollum-3.1.3
- old
+ new
@@ -30,29 +30,46 @@
define(function(require, exports, module) {
"use strict";
var oop = require("../lib/oop");
+var lang = require("../lib/lang");
var TextMode = require("./text").Mode;
-var Tokenizer = require("../tokenizer").Tokenizer;
var XmlHighlightRules = require("./xml_highlight_rules").XmlHighlightRules;
var XmlBehaviour = require("./behaviour/xml").XmlBehaviour;
var XmlFoldMode = require("./folding/xml").FoldMode;
+var WorkerClient = require("../worker/worker_client").WorkerClient;
var Mode = function() {
- this.$tokenizer = new Tokenizer(new XmlHighlightRules().getRules());
- this.$behaviour = new XmlBehaviour();
- this.foldingRules = new XmlFoldMode();
+ this.HighlightRules = XmlHighlightRules;
+ this.$behaviour = new XmlBehaviour();
+ this.foldingRules = new XmlFoldMode();
};
oop.inherits(Mode, TextMode);
(function() {
-
- this.getNextLineIndent = function(state, line, tab) {
- return this.$getIndent(line);
- };
+ this.voidElements = lang.arrayToMap([]);
+
+ this.blockComment = {start: "<!--", end: "-->"};
+
+ this.createWorker = function(session) {
+ var worker = new WorkerClient(["ace"], "ace/mode/xml_worker", "Worker");
+ worker.attachToDocument(session.getDocument());
+
+ worker.on("error", function(e) {
+ session.setAnnotations(e.data);
+ });
+
+ worker.on("terminate", function() {
+ session.clearAnnotations();
+ });
+
+ return worker;
+ };
+
+ this.$id = "ace/mode/xml";
}).call(Mode.prototype);
exports.Mode = Mode;
});