帮崔大补充一下,楼上 HDG 的是一种方案,另一个插件(Advance URI)也可以让 QK 给 Obsidian 传递消息。
Obsidian 本身支持用运行 Obsidian://xxx 的方式来执行一些操作(详见 Using Obsidian URI - Obsidian Help),这个插件可以用类似的方式来让 Obsidian 直接执行特定命令(Command)。
插件地址:Vinzent03/obsidian-advanced-uri: Advanced modes for Obsidian URI (github.com)
比如你想要去模拟“激活某个按钮”,但大部分时候按钮也就是执行特定的命令,所以干脆就让 ob 执行这个命令就可以。
比如说我想执行这个「用默认程序打开」(Open in default app)的操作:
那么先用 Advanced URI 插件提供的查找 Command ID 的指令 (Copy URI for command):
第一步会让你选择操作的文件,因为我们只是执行操作,不针对特定文件,可以直接选第一项:
然后搜索并选择我们要执行的指令(Open in default app):
插件就会在剪贴板内粘贴执行这个操作需要的 URI:
obsidian://advanced-uri?vault=Obsinote&commandid=open-with-default-app%253Aopen
然后你直接用 QK 来「打开或运行」这串地址就可以啦。
相当于是 Advanced URI 这个插件帮你做了一个传递消息的传令兵。
事实上也不光 QK 能这么调用,你直接用「运行」去打开这传地址也是通用的。