kopia lustrzana https://github.com/c9/core
Add mock modes support
rodzic
15d2fb2dbc
commit
0f46e39a82
|
@ -86,7 +86,7 @@
|
||||||
"c9.ide.installer": "#38f5840924",
|
"c9.ide.installer": "#38f5840924",
|
||||||
"c9.ide.mount": "#cb45b621f1",
|
"c9.ide.mount": "#cb45b621f1",
|
||||||
"c9.ide.navigate": "#64156c7f4a",
|
"c9.ide.navigate": "#64156c7f4a",
|
||||||
"c9.ide.newresource": "#9a7464cc47",
|
"c9.ide.newresource": "#3b871089bc",
|
||||||
"c9.ide.openfiles": "#28a4f5af16",
|
"c9.ide.openfiles": "#28a4f5af16",
|
||||||
"c9.ide.preview": "#dba2f4214d",
|
"c9.ide.preview": "#dba2f4214d",
|
||||||
"c9.ide.preview.browser": "#ac18aaf31d",
|
"c9.ide.preview.browser": "#ac18aaf31d",
|
||||||
|
|
|
@ -1575,7 +1575,7 @@ define(function(require, exports, module) {
|
||||||
* @param {Object} syntax
|
* @param {Object} syntax
|
||||||
* @param {Object} syntax.caption Caption to display in the menu
|
* @param {Object} syntax.caption Caption to display in the menu
|
||||||
* @param {Number} syntax.order order in the menu
|
* @param {Number} syntax.order order in the menu
|
||||||
* @param {String} syntax.id The path to corresponding ace language mode. (if doesn't contain "/" assumed to be from "ace/mode/<id>")
|
* @param {String} syntax.name The path to corresponding ace language mode. (if doesn't contain "/" assumed to be from "ace/mode/<name>")
|
||||||
* @param {String} syntax.extensions file extensions in the form "ext1|ext2|^filename". this is case-insensitive
|
* @param {String} syntax.extensions file extensions in the form "ext1|ext2|^filename". this is case-insensitive
|
||||||
*/
|
*/
|
||||||
defineSyntax: defineSyntax,
|
defineSyntax: defineSyntax,
|
||||||
|
|
|
@ -236,103 +236,62 @@ define(function(require, exports, module) {
|
||||||
var filename = RegExp.$2;
|
var filename = RegExp.$2;
|
||||||
if (filename.indexOf("/") > -1) return;
|
if (filename.indexOf("/") > -1) return;
|
||||||
|
|
||||||
switch (type) {
|
parallel.push(function(next){
|
||||||
case "builders":
|
fs.readFile(join(path, filename), function(err, data){
|
||||||
parallel.push(function(next){
|
if (err) {
|
||||||
fs.readFile(join(path, filename), function(err, data){
|
console.error(err);
|
||||||
if (err) {
|
return next(err);
|
||||||
console.error(err);
|
}
|
||||||
return next(err);
|
|
||||||
}
|
switch (type) {
|
||||||
|
case "builders":
|
||||||
data = util.safeParseJson(data, next);
|
data = util.safeParseJson(data, next);
|
||||||
if (!data) return;
|
if (!data) return;
|
||||||
|
|
||||||
services.build.addBuilder(filename, data, placeholder);
|
services.build.addBuilder(filename, data, placeholder);
|
||||||
next();
|
break;
|
||||||
});
|
case "keymaps":
|
||||||
});
|
|
||||||
break;
|
|
||||||
case "keymaps":
|
|
||||||
parallel.push(function(next){
|
|
||||||
fs.readFile(join(path, filename), function(err, data){
|
|
||||||
if (err) {
|
|
||||||
console.error(err);
|
|
||||||
return next(err);
|
|
||||||
}
|
|
||||||
|
|
||||||
data = util.safeParseJson(data, next);
|
data = util.safeParseJson(data, next);
|
||||||
if (!data) return;
|
if (!data) return;
|
||||||
|
|
||||||
services["preferences.keybindings"].addCustomKeymap(filename, data, placeholder);
|
services["preferences.keybindings"].addCustomKeymap(filename, data, placeholder);
|
||||||
next();
|
break;
|
||||||
});
|
case "modes":
|
||||||
});
|
data = util.safeParseJson(data, next);
|
||||||
break;
|
if (!data) return;
|
||||||
case "modes":
|
|
||||||
parallel.push(function(next){
|
|
||||||
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
case "outline":
|
|
||||||
parallel.push(function(next){
|
|
||||||
fs.readFile(join(path, filename), function(err, data){
|
|
||||||
if (err) {
|
|
||||||
console.error(err);
|
|
||||||
return next(err);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
services.ace.defineSyntax({
|
||||||
|
name: join(path, "modes", data.name),
|
||||||
|
caption: data.caption,
|
||||||
|
extensions: (data.extensions || []).join("|")
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case "outline":
|
||||||
data = util.safeParseJson(data, next);
|
data = util.safeParseJson(data, next);
|
||||||
if (!data) return;
|
if (!data) return;
|
||||||
|
|
||||||
services.outline.addOutlinePlugin(filename, data, placeholder);
|
services.outline.addOutlinePlugin(filename, data, placeholder);
|
||||||
next();
|
break;
|
||||||
});
|
case "runners":
|
||||||
});
|
|
||||||
break;
|
|
||||||
case "runners":
|
|
||||||
parallel.push(function(next){
|
|
||||||
fs.readFile(join(path, filename), function(err, data){
|
|
||||||
if (err) {
|
|
||||||
console.error(err);
|
|
||||||
return next(err);
|
|
||||||
}
|
|
||||||
|
|
||||||
data = util.safeParseJson(data, next);
|
data = util.safeParseJson(data, next);
|
||||||
if (!data) return;
|
if (!data) return;
|
||||||
|
|
||||||
services.run.addRunner(filename, data, placeholder);
|
services.run.addRunner(filename, data, placeholder);
|
||||||
next();
|
break;
|
||||||
});
|
case "snippets":
|
||||||
});
|
services.complete.addSnippet(data, plugin);
|
||||||
break;
|
break;
|
||||||
case "snippets":
|
case "themes":
|
||||||
parallel.push(function(next){
|
services.ace.addTheme(data, placeholder);
|
||||||
fs.readFile(join(path, filename), function(err, snippet){
|
break;
|
||||||
if (err) {
|
case "template":
|
||||||
console.error(err);
|
services.newresource.addFileTemplate(data, placeholder);
|
||||||
return next(err);
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
services.complete.addSnippet(snippet, plugin);
|
next();
|
||||||
next();
|
});
|
||||||
});
|
});
|
||||||
});
|
|
||||||
break;
|
|
||||||
case "themes":
|
|
||||||
parallel.push(function(next){
|
|
||||||
fs.readFile(join(path, filename), function(err, theme){
|
|
||||||
if (err) {
|
|
||||||
console.error(err);
|
|
||||||
return next(err);
|
|
||||||
}
|
|
||||||
|
|
||||||
services.ace.addTheme(theme, placeholder);
|
|
||||||
next();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return parallel;
|
return parallel;
|
||||||
|
|
Ładowanie…
Reference in New Issue