Merge pull request +7308 from c9/salesforce_ace

Add SFDC modes to CDN
pull/43/merge
Alex Brausewetter 2015-05-14 12:44:15 +02:00
commit bd0fee1c79
1 zmienionych plików z 31 dodań i 12 usunięć

Wyświetl plik

@ -160,19 +160,38 @@ define(function(require, exports, module) {
var aceModules = ["vim", "emacs", "sublime"].map(function(x) {
return "plugins/c9.ide.ace.keymaps/" + x + "/keymap";
});
var acePath = __dirname + "/../../node_modules/ace/lib/ace";
function addAceModules(type, excludePattern) {
var files = fs.readdirSync(acePath + "/" + type);
files.filter(function(p) {
return !excludePattern.test(p) && !/[\s#]/.test(p) && /.*\.js$/.test(p);
}).forEach(function(p) {
aceModules.push("ace/" + type + "/" + p.slice(0, -3));
});
var paths = {
ace: __dirname + "/../../node_modules/ace/lib/ace",
plugins: __dirname + "/../../plugins",
};
function addAceModules(path, excludePattern) {
var parts = path.split("/");
if (parts[0] == "ace") {
if (parts[1] == "modes" || parts[1] == "themes")
parts[1] = parts[1].slice(0, -1);
}
parts[0] = paths[parts[0]];
var fsPath = parts.join("/");
try {
var files = fs.readdirSync(fsPath);
files.filter(function(p) {
return !excludePattern.test(p) && !/[\s#]/.test(p) && /.*\.js$/.test(p);
}).forEach(function(p) {
aceModules.push(path + "/" + p.slice(0, -3));
});
} catch(e) {}
}
addAceModules("mode", /_highlight_rules|_test|_worker|xml_util|_outdent|behaviour|completions/);
addAceModules("theme", /_test/);
addAceModules("ext", /_test/);
addAceModules("snippets", /_test/);
var aceModulePaths = [
"ace",
"plugins/c9.ide.salesforce/salesforce.language"
];
aceModulePaths.forEach(function(p) {
addAceModules(p + "/modes", /_highlight_rules|_test|_worker|xml_util|_outdent|behaviour|completions/);
addAceModules(p + "/themes", /_test/);
addAceModules(p + "/ext", /_test/);
addAceModules(p + "/snippets", /_test/);
});
function take() {
var p = aceModules.pop();