update keyboard shortcuts extension

This commit is contained in:
nightwing 2014-08-01 20:47:49 +04:00
commit a00ce9cd72

View file

@ -69,29 +69,20 @@ module.exports.getEditorKeybordShortcuts = function(editor) {
editor.keyBinding.$handlers.forEach(function(handler) { editor.keyBinding.$handlers.forEach(function(handler) {
var ckb = handler.commandKeyBinding; var ckb = handler.commandKeyBinding;
for (var i in ckb) { for (var i in ckb) {
var modifier = parseInt(i); var key = i.replace(/(^|-)\w/g, function(x) { return x.toUpperCase(); });
if (modifier == -1) { var commands = ckb[i];
modifier = ""; if (!Array.isArray(commands))
} else if(isNaN(modifier)) { commands = [commands];
modifier = i; commands.forEach(function(command) {
} else {
modifier = "" +
(modifier & KEY_MODS.command ? "Cmd-" : "") +
(modifier & KEY_MODS.ctrl ? "Ctrl-" : "") +
(modifier & KEY_MODS.alt ? "Alt-" : "") +
(modifier & KEY_MODS.shift ? "Shift-" : "");
}
for (var key in ckb[i]) {
var command = ckb[i][key]
if (typeof command != "string") if (typeof command != "string")
command = command.name command = command.name
if (commandMap[command]) { if (commandMap[command]) {
commandMap[command].key += "|" + modifier + key; commandMap[command].key += "|" + key;
} else { } else {
commandMap[command] = {key: modifier+key, command: command}; commandMap[command] = {key: key, command: command};
keybindings.push(commandMap[command]); keybindings.push(commandMap[command]);
} }
} });
} }
}); });
return keybindings; return keybindings;