【QuickAdd脚本】Project项目选项栏

背景

当使用 Project 插件时,只能设置一个默认的项目视图,其他项目视图需要手动切换或者在插件里面添加快捷指令,之后设置 Button 或者 Advanced URI 来的便捷打开指定的 Project 项目。

为了不用单独建一个页面来存放这些按钮,就采用 JS 获取 Project 的快捷指令,出现一个下拉选项,这样不用单独设置按钮了,通过下拉菜单选择指定项目来跳转。

🔴注意:只会获取 Project 已勾选的的项目

脚本:

module.exports = async (params) => {
    const projeckIds = Object.keys(app.commands.commands)
        .filter(key => key.includes("obsidian-projects:show:"));
    const projeckNames = projeckIds.map(i => app.commands.commands[i].name);

    const quickAddApi = app.plugins.plugins.quickadd.api;
    const id = await quickAddApi.suggester(projeckNames, projeckIds);
    app.commands.executeCommandById(id);
};

可用 QuickAdd 的 Marco 来调用

Quickadd 配置 Macro

将下述脚本放在 Quickadd 的配置文件夹下,保存为 ShowProjects.js 文件,在 Quickadd 插件设置添加 Macro 动作,注意设置名称,我设置的是 Macro:ShowProjects

在 Scripts 中选择对应的 ShowProjects.js 脚本,点击添加即可:

2024-03-08_QuickAdd脚本-Project项目选项栏_IMG-4

:bulb:Tip:最后推荐用Commander插件将该命令(需要启动QuickAdd的:zap:)保留在侧边栏,将原来Project按钮隐藏掉。

1 个赞

可以直接导入的。

2 个赞

哦哦,我是习惯调用了或者说我建立的代码片段里面是这样的,因为我还会写一写Excalidraw的脚本,就不能通过params来了。