From c9f3abb1993b29060f6eb9134ae772a15dbc1183 Mon Sep 17 00:00:00 2001 From: Fabian Jakobs Date: Thu, 3 Feb 2011 14:45:45 +0100 Subject: [PATCH] ignore #! in the js worker --- lib/ace/mode/javascript_worker.js | 1 + lib/ace/worker/worker.js | 17 ++++++++++------- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/lib/ace/mode/javascript_worker.js b/lib/ace/mode/javascript_worker.js index df2251b4..1dc3d1c0 100644 --- a/lib/ace/mode/javascript_worker.js +++ b/lib/ace/mode/javascript_worker.js @@ -16,6 +16,7 @@ oop.inherits(JavaScriptWorker, Mirror); this.onUpdate = function() { var value = this.doc.getValue(); + value = value.replace(/^#!.*\n/, ""); // var start = new Date(); var parser = require("ace/narcissus/jsparse"); diff --git a/lib/ace/worker/worker.js b/lib/ace/worker/worker.js index a7a555d9..c9831654 100644 --- a/lib/ace/worker/worker.js +++ b/lib/ace/worker/worker.js @@ -19,7 +19,7 @@ var require = function(id) { var chunks = id.split("/"); chunks[0] = require.tlns[chunks[0]] || chunks[0]; - path = /*require.baseUrl + "/" +*/ chunks.join("/") + ".js" + path = /*require.baseUrl + "/" +*/ chunks.join("/") + ".js"; require.id = id; // console.log("require " + path + " " + id) @@ -29,14 +29,14 @@ var require = function(id) { require.modules = {}; require.tlns = {}; -require.baseUrl; +require.baseUrl = ""; var define = function(id, factory) { if (!factory) { factory = id; id = require.id; } - if (id.indexOf("text!") == 0) + if (id.indexOf("text!") === 0) return; require.modules[id] = { @@ -74,7 +74,7 @@ function initSender() { id: callbackId, data: data }); - }, + }; this.emit = function(name, data) { postMessage({ @@ -82,7 +82,8 @@ function initSender() { name: name, data: data }); - } + }; + }).call(Sender.prototype); return new Sender(); @@ -93,15 +94,17 @@ var sender; onmessage = function(e) { var msg = e.data; - if (msg.command) + if (msg.command) { main[msg.command].apply(main, msg.args); + } else if (msg.init) { initBaseUrls(msg.base, msg.tlns); require("pilot/fixoldbrowsers"); sender = initSender(); var clazz = require(msg.module)[msg.classname]; main = new clazz(sender); - } else if (msg.event) { + } + else if (msg.event) { sender._dispatchEvent(msg.event, msg.data); } }; \ No newline at end of file