make worker events more consistent
This commit is contained in:
parent
e1a5492a7f
commit
264923e4df
12 changed files with 37 additions and 46 deletions
|
|
@ -116,11 +116,11 @@ oop.inherits(Mode, TextMode);
|
||||||
var worker = new WorkerClient(["ace"], "ace/mode/coffee_worker", "Worker");
|
var worker = new WorkerClient(["ace"], "ace/mode/coffee_worker", "Worker");
|
||||||
worker.attachToDocument(session.getDocument());
|
worker.attachToDocument(session.getDocument());
|
||||||
|
|
||||||
worker.on("error", function(e) {
|
worker.on("annotate", function(e) {
|
||||||
session.setAnnotations([e.data]);
|
session.setAnnotations(e.data);
|
||||||
});
|
});
|
||||||
|
|
||||||
worker.on("ok", function(e) {
|
worker.on("terminate", function() {
|
||||||
session.clearAnnotations();
|
session.clearAnnotations();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -49,13 +49,13 @@ oop.inherits(Worker, Mirror);
|
||||||
|
|
||||||
this.onUpdate = function() {
|
this.onUpdate = function() {
|
||||||
var value = this.doc.getValue();
|
var value = this.doc.getValue();
|
||||||
|
var errors = [];
|
||||||
try {
|
try {
|
||||||
coffee.parse(value).compile();
|
coffee.parse(value).compile();
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
var loc = e.location;
|
var loc = e.location;
|
||||||
if (loc) {
|
if (loc) {
|
||||||
this.sender.emit("error", {
|
errors.push({
|
||||||
row: loc.first_line,
|
row: loc.first_line,
|
||||||
column: loc.first_column,
|
column: loc.first_column,
|
||||||
endRow: loc.last_line,
|
endRow: loc.last_line,
|
||||||
|
|
@ -64,9 +64,8 @@ oop.inherits(Worker, Mirror);
|
||||||
type: "error"
|
type: "error"
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
this.sender.emit("ok");
|
this.sender.emit("annotate", errors);
|
||||||
};
|
};
|
||||||
|
|
||||||
}).call(Worker.prototype);
|
}).call(Worker.prototype);
|
||||||
|
|
|
||||||
|
|
@ -81,7 +81,7 @@ oop.inherits(Mode, TextMode);
|
||||||
var worker = new WorkerClient(["ace"], "ace/mode/css_worker", "Worker");
|
var worker = new WorkerClient(["ace"], "ace/mode/css_worker", "Worker");
|
||||||
worker.attachToDocument(session.getDocument());
|
worker.attachToDocument(session.getDocument());
|
||||||
|
|
||||||
worker.on("csslint", function(e) {
|
worker.on("annotate", function(e) {
|
||||||
session.setAnnotations(e.data);
|
session.setAnnotations(e.data);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -80,11 +80,11 @@ oop.inherits(Worker, Mirror);
|
||||||
this.onUpdate = function() {
|
this.onUpdate = function() {
|
||||||
var value = this.doc.getValue();
|
var value = this.doc.getValue();
|
||||||
if (!value)
|
if (!value)
|
||||||
return this.sender.emit("csslint", []);
|
return this.sender.emit("annotate", []);
|
||||||
var infoRules = this.infoRules;
|
var infoRules = this.infoRules;
|
||||||
|
|
||||||
var result = CSSLint.verify(value, this.ruleset);
|
var result = CSSLint.verify(value, this.ruleset);
|
||||||
this.sender.emit("csslint", result.messages.map(function(msg) {
|
this.sender.emit("annotate", result.messages.map(function(msg) {
|
||||||
return {
|
return {
|
||||||
row: msg.line - 1,
|
row: msg.line - 1,
|
||||||
column: msg.col - 1,
|
column: msg.col - 1,
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,7 @@ oop.inherits(Mode, TextMode);
|
||||||
var worker = new WorkerClient(["ace"], "ace/mode/javascript_worker", "JavaScriptWorker");
|
var worker = new WorkerClient(["ace"], "ace/mode/javascript_worker", "JavaScriptWorker");
|
||||||
worker.attachToDocument(session.getDocument());
|
worker.attachToDocument(session.getDocument());
|
||||||
|
|
||||||
worker.on("jslint", function(results) {
|
worker.on("annotate", function(results) {
|
||||||
session.setAnnotations(results.data);
|
session.setAnnotations(results.data);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -116,12 +116,10 @@ oop.inherits(JavaScriptWorker, Mirror);
|
||||||
this.onUpdate = function() {
|
this.onUpdate = function() {
|
||||||
var value = this.doc.getValue();
|
var value = this.doc.getValue();
|
||||||
value = value.replace(/^#!.*\n/, "\n");
|
value = value.replace(/^#!.*\n/, "\n");
|
||||||
if (!value) {
|
if (!value)
|
||||||
this.sender.emit("jslint", []);
|
return this.sender.emit("annotate", []);
|
||||||
return;
|
|
||||||
}
|
|
||||||
var errors = [];
|
|
||||||
|
|
||||||
|
var errors = [];
|
||||||
// jshint reports many false errors
|
// jshint reports many false errors
|
||||||
// report them as error only if code is actually invalid
|
// report them as error only if code is actually invalid
|
||||||
var maxErrorLevel = this.isValidJS(value) ? "warning" : "error";
|
var maxErrorLevel = this.isValidJS(value) ? "warning" : "error";
|
||||||
|
|
@ -179,7 +177,7 @@ oop.inherits(JavaScriptWorker, Mirror);
|
||||||
}
|
}
|
||||||
// console.log("lint time: " + (new Date() - start));
|
// console.log("lint time: " + (new Date() - start));
|
||||||
|
|
||||||
this.sender.emit("jslint", errors);
|
this.sender.emit("annotate", errors);
|
||||||
};
|
};
|
||||||
|
|
||||||
}).call(JavaScriptWorker.prototype);
|
}).call(JavaScriptWorker.prototype);
|
||||||
|
|
|
||||||
|
|
@ -74,11 +74,11 @@ oop.inherits(Mode, TextMode);
|
||||||
var worker = new WorkerClient(["ace"], "ace/mode/json_worker", "JsonWorker");
|
var worker = new WorkerClient(["ace"], "ace/mode/json_worker", "JsonWorker");
|
||||||
worker.attachToDocument(session.getDocument());
|
worker.attachToDocument(session.getDocument());
|
||||||
|
|
||||||
worker.on("error", function(e) {
|
worker.on("annotate", function(e) {
|
||||||
session.setAnnotations([e.data]);
|
session.setAnnotations(e.data);
|
||||||
});
|
});
|
||||||
|
|
||||||
worker.on("ok", function() {
|
worker.on("terminate", function() {
|
||||||
session.clearAnnotations();
|
session.clearAnnotations();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,21 +46,20 @@ oop.inherits(JsonWorker, Mirror);
|
||||||
|
|
||||||
this.onUpdate = function() {
|
this.onUpdate = function() {
|
||||||
var value = this.doc.getValue();
|
var value = this.doc.getValue();
|
||||||
|
var errors = [];
|
||||||
try {
|
try {
|
||||||
if (value)
|
if (value)
|
||||||
parse(value);
|
parse(value);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
var pos = this.doc.indexToPosition(e.at-1);
|
var pos = this.doc.indexToPosition(e.at-1);
|
||||||
this.sender.emit("error", {
|
errors.push({
|
||||||
row: pos.row,
|
row: pos.row,
|
||||||
column: pos.column,
|
column: pos.column,
|
||||||
text: e.message,
|
text: e.message,
|
||||||
type: "error"
|
type: "error"
|
||||||
});
|
});
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
this.sender.emit("ok");
|
this.sender.emit("annotate", errors);
|
||||||
};
|
};
|
||||||
|
|
||||||
}).call(JsonWorker.prototype);
|
}).call(JsonWorker.prototype);
|
||||||
|
|
|
||||||
|
|
@ -148,11 +148,11 @@ oop.inherits(Mode, TextMode);
|
||||||
var worker = new WorkerClient(["ace"], "ace/mode/lua_worker", "Worker");
|
var worker = new WorkerClient(["ace"], "ace/mode/lua_worker", "Worker");
|
||||||
worker.attachToDocument(session.getDocument());
|
worker.attachToDocument(session.getDocument());
|
||||||
|
|
||||||
worker.on("error", function(e) {
|
worker.on("annotate", function(e) {
|
||||||
session.setAnnotations([e.data]);
|
session.setAnnotations(e.data);
|
||||||
});
|
});
|
||||||
|
|
||||||
worker.on("ok", function(e) {
|
worker.on("terminate", function() {
|
||||||
session.clearAnnotations();
|
session.clearAnnotations();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,24 +46,23 @@ oop.inherits(Worker, Mirror);
|
||||||
|
|
||||||
this.onUpdate = function() {
|
this.onUpdate = function() {
|
||||||
var value = this.doc.getValue();
|
var value = this.doc.getValue();
|
||||||
|
var errors = [];
|
||||||
|
|
||||||
// var t=Date.now()
|
// var t=Date.now()
|
||||||
try {
|
try {
|
||||||
luaparse.parse(value);
|
luaparse.parse(value);
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
if (e instanceof SyntaxError) {
|
if (e instanceof SyntaxError) {
|
||||||
this.sender.emit("error", {
|
errors.push({
|
||||||
row: e.line - 1,
|
row: e.line - 1,
|
||||||
column: e.column,
|
column: e.column,
|
||||||
text: e.message,
|
text: e.message,
|
||||||
type: "error"
|
type: "error"
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// console.log( t-Date.now())
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
// console.log( t-Date.now())
|
// console.log( t-Date.now())
|
||||||
this.sender.emit("ok");
|
this.sender.emit("annotate", errors);
|
||||||
};
|
};
|
||||||
|
|
||||||
}).call(Worker.prototype);
|
}).call(Worker.prototype);
|
||||||
|
|
|
||||||
|
|
@ -143,11 +143,11 @@ oop.inherits(Mode, HtmlMode);
|
||||||
if (this.inlinePhp)
|
if (this.inlinePhp)
|
||||||
worker.call("setOptions", [{inline: true}]);
|
worker.call("setOptions", [{inline: true}]);
|
||||||
|
|
||||||
worker.on("error", function(e) {
|
worker.on("annotate", function(e) {
|
||||||
session.setAnnotations(e.data);
|
session.setAnnotations(e.data);
|
||||||
});
|
});
|
||||||
|
|
||||||
worker.on("ok", function() {
|
worker.on("terminate", function() {
|
||||||
session.clearAnnotations();
|
session.clearAnnotations();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -69,11 +69,7 @@ oop.inherits(PhpWorker, Mirror);
|
||||||
|
|
||||||
// console.log("lint time: " + (new Date() - start));
|
// console.log("lint time: " + (new Date() - start));
|
||||||
|
|
||||||
if (errors.length) {
|
this.sender.emit("annotate", errors);
|
||||||
this.sender.emit("error", errors);
|
|
||||||
} else {
|
|
||||||
this.sender.emit("ok");
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}).call(PhpWorker.prototype);
|
}).call(PhpWorker.prototype);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue