fix loading modes from plugins

pull/85/head^2
nightwing 2015-05-06 19:14:31 +04:00
rodzic 5913d69152
commit 23096581b2
2 zmienionych plików z 15 dodań i 6 usunięć

Wyświetl plik

@ -370,9 +370,18 @@ define(function(require, exports, module) {
}
if (files.indexOf("modes") != -1) {
forEachFile(cwd + "/modes", function(filename, data) {
if (/(?:_highlight_rules|_test|_worker|_fold|_behaviou?r).js$/.test(filename))
if (/(?:_highlight_rules|_test|_worker|_fold|_behaviou?r)\.js$/.test(filename))
return;
var firstLine = data.split("\n", 1)[0];
if (!/\.js$/.test(filename))
return;
var firstLine = data.split("\n", 1)[0].replace(/\/\*|\*\//g, "").trim();
if (!/caption\s*:[^;]+/i.test(firstLine)) {
packedFiles.push(cwd + "/modes/" + filename);
console.error("Ignoring mode with invalid header: ", firstLine);
console.error(" at " + cwd + "/modes/" + filename);
return;
}
extraCode.push({
type: "modes",
filename: filename,
@ -542,7 +551,7 @@ define(function(require, exports, module) {
},
function(next) {
if (options.local)
fs.writeFile(cwd + "__installed__.js", result.code, "utf8", callback);
fs.writeFile(cwd + "/__installed__.js", result.code, "utf8", callback);
next();
},
function(next) {

Wyświetl plik

@ -43,8 +43,8 @@ define(function(require, exports, module) {
var ENABLED = c9.location.indexOf("debug=2") > -1;
var HASSDK = c9.location.indexOf("sdk=0") === -1;
var reParts = /^(builders|keymaps|modes|outline|runners|snippets|themes)\/(.*)/
var reModule = /(?:_highlight_rules|_test|_worker|_fold|_behaviou?r).js$/
var reParts = /^(builders|keymaps|modes|outline|runners|snippets|themes)\/(.*)/;
var reModule = /(?:_highlight_rules|_test|_worker|_fold|_behaviou?r).js$/;
var loaded = false;
function load() {
@ -272,7 +272,7 @@ define(function(require, exports, module) {
var filename = RegExp.$2;
if (filename.indexOf("/") > -1) return;
if (type == "modes" && filename.match(reModule))
if (type == "modes" && (reModule.test(filename) || !/\.js$/.test(filename)))
return;
parallel.push(function(next){