当动作快捷键和动作内的模拟按键相同时如何规避死循环

使用问题 · 33 次浏览
Shian 创建于 9小时10分钟前

1. 要实现的目标或功能

复用软件已有快捷键启用Quicker 动作而不影响改快捷键原有功能。

  • 逻辑如下:按下快捷键 -> 检查当前状态(如窗口是否存在、是否有选中文本) -> 如果满足条件,执行自定义动作;如果不满足条件,则让系统正常触发该快捷键原有的功能。

2. 如何配置的

  • 设置动作的快捷键 例如: Ctrl+Tab

  • 在动作内部使用“获取窗口信息”或“获取选中文本”。

  • 如果 分支中,启用动作A
  • 否则 分支中,使用“模拟按键”步骤发送原来的快捷键。

3. 期望的结果

执行动作期间静默忽略此动作的快捷键,或者在快捷前能够添加一个临时禁止动作触发的状态,模拟按键能触发原有的快捷键功能

4. 实际的结果

由于模拟的按键与触发快捷键相同,动作进入了死循环:模拟按键再次激活了动作,跳出弹窗‘’动作 Obsidian已在执行‘’。导致原来的快捷键功能失效。

 

 

回复内容
CL 8小时51分钟前
#1

无法实现的。 全局快捷键是windows机制,只有一个程序可以占用。

你可以试试扩展热键功能。

回复主贴