kopia lustrzana https://github.com/c9/core
fix loading modes from plugins
rodzic
5913d69152
commit
23096581b2
|
@ -370,9 +370,18 @@ define(function(require, exports, module) {
|
||||||
}
|
}
|
||||||
if (files.indexOf("modes") != -1) {
|
if (files.indexOf("modes") != -1) {
|
||||||
forEachFile(cwd + "/modes", function(filename, data) {
|
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;
|
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({
|
extraCode.push({
|
||||||
type: "modes",
|
type: "modes",
|
||||||
filename: filename,
|
filename: filename,
|
||||||
|
@ -542,7 +551,7 @@ define(function(require, exports, module) {
|
||||||
},
|
},
|
||||||
function(next) {
|
function(next) {
|
||||||
if (options.local)
|
if (options.local)
|
||||||
fs.writeFile(cwd + "__installed__.js", result.code, "utf8", callback);
|
fs.writeFile(cwd + "/__installed__.js", result.code, "utf8", callback);
|
||||||
next();
|
next();
|
||||||
},
|
},
|
||||||
function(next) {
|
function(next) {
|
||||||
|
|
|
@ -43,8 +43,8 @@ define(function(require, exports, module) {
|
||||||
var ENABLED = c9.location.indexOf("debug=2") > -1;
|
var ENABLED = c9.location.indexOf("debug=2") > -1;
|
||||||
var HASSDK = c9.location.indexOf("sdk=0") === -1;
|
var HASSDK = c9.location.indexOf("sdk=0") === -1;
|
||||||
|
|
||||||
var reParts = /^(builders|keymaps|modes|outline|runners|snippets|themes)\/(.*)/
|
var reParts = /^(builders|keymaps|modes|outline|runners|snippets|themes)\/(.*)/;
|
||||||
var reModule = /(?:_highlight_rules|_test|_worker|_fold|_behaviou?r).js$/
|
var reModule = /(?:_highlight_rules|_test|_worker|_fold|_behaviou?r).js$/;
|
||||||
|
|
||||||
var loaded = false;
|
var loaded = false;
|
||||||
function load() {
|
function load() {
|
||||||
|
@ -272,7 +272,7 @@ define(function(require, exports, module) {
|
||||||
var filename = RegExp.$2;
|
var filename = RegExp.$2;
|
||||||
if (filename.indexOf("/") > -1) return;
|
if (filename.indexOf("/") > -1) return;
|
||||||
|
|
||||||
if (type == "modes" && filename.match(reModule))
|
if (type == "modes" && (reModule.test(filename) || !/\.js$/.test(filename)))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
parallel.push(function(next){
|
parallel.push(function(next){
|
||||||
|
|
Ładowanie…
Reference in New Issue