梗概:
其实只要看看obsidian api的注释就能明白大部分了 难理解的是checkCallback
checkCallback的使用:
1. 实例说明:
this.addCommand({
id: '一键重命名选中标签',
name: '一键重命名/rename选中标签tag',
/* 这个函数中的回调函数会在用户打开命令菜单的时候执行,这个时候checking为true
此时, 如果函数返回false, 该条命令将会被隐藏,反之则不会 */
/* 用户执行该命令的时候,也会执行同一个回调函数,但这时checking为false */
editorCheckCallback: (checking: boolean, editor: Editor, view: MarkdownView) => {
/* 用来检查环境 */
if (checking) {
/* 隐藏命令 */
if (!editor.somethingSelected) return false;
/* 显示命令 */
return true;
};
/* 业务内容 */
let name = ModifyEditor.getSelectedTag(this);
ModifyEditor.renameTag(name);
},
})