This commit is contained in:
Vanessa 2023-10-23 17:52:00 +08:00
parent efa5ef6ca5
commit 7883377ffd
2 changed files with 16 additions and 10 deletions

View file

@ -110,7 +110,8 @@ const mergePluginHotkey = (plugin: Plugin) => {
if (!window.siyuan.config.keymap.plugin) {
window.siyuan.config.keymap.plugin = {};
}
plugin.commands.forEach(command => {
for (let i = 0; i < plugin.commands.length; i++) {
const command = plugin.commands[i];
if (!window.siyuan.config.keymap.plugin[plugin.name]) {
command.customHotkey = command.hotkey;
window.siyuan.config.keymap.plugin[plugin.name] = {
@ -119,21 +120,26 @@ const mergePluginHotkey = (plugin: Plugin) => {
custom: command.hotkey,
}
};
return;
}
if (!window.siyuan.config.keymap.plugin[plugin.name][command.langKey]) {
} else if (!window.siyuan.config.keymap.plugin[plugin.name][command.langKey]) {
command.customHotkey = command.hotkey;
window.siyuan.config.keymap.plugin[plugin.name][command.langKey] = {
default: command.hotkey,
custom: command.hotkey,
};
return;
}
if (window.siyuan.config.keymap.plugin[plugin.name][command.langKey]) {
command.customHotkey = window.siyuan.config.keymap.plugin[plugin.name][command.langKey].custom || command.hotkey;
} else if (window.siyuan.config.keymap.plugin[plugin.name][command.langKey]) {
if (typeof window.siyuan.config.keymap.plugin[plugin.name][command.langKey].custom === "string") {
command.customHotkey = window.siyuan.config.keymap.plugin[plugin.name][command.langKey].custom;
} else {
command.customHotkey = command.hotkey;
}
window.siyuan.config.keymap.plugin[plugin.name][command.langKey]["default"] = command.hotkey;
}
});
if (typeof command.customHotkey !== "string") {
console.error(`${plugin.name} - commands data is error and has been removed.`);
plugin.commands.splice(i, 1);
i--;
}
}
};
export const afterLoadPlugin = (plugin: Plugin) => {