让 OSX 监听特定的按键序列,并执行

让 OSX 监听特定的按键序列,并执行

这是用例。

我使用文本扩展器 aText。它有一个热键来显示已保存的文本扩展列表。我想省去手动按下此热键的麻烦。因此我需要我的操作系统查看我的键盘并在找到特定序列时自动触发此热键。

前任。

  1. 显示文本扩展器扩展列表的热键是CMD+ SHIFT+S

  2. 我的所有扩展快捷方式都以;;

  3. 当我写入或按下时,我希望我的操作系统将++;;发送到系统,从而触发扩展器列表。CMDSHIFTS

这可能吗?

答案1

好的,经过一些修改后,我得到了一些小技巧让它可以为我工作,它的工作原理有点像这样。

1)我下载了一个开源键盘记录器,并对其进行了修改,使其不记录任何内容,只监听。

...  
char * currentKey = convertKeyCode(keyCode);  
char * target = ";";  
if( currentKey == previousKey && currentKey == target ){
...

2)当它看到我按下了我选择的两个键时,它会调用如下的苹果脚本

...
system("echo \"tell application \\\"System Events\\\" to keystroke \\\"S\\\" using {command down, shift down}\" | osascript");
...

这是我在 aText 中拥有的钥匙。

这很有效,但我会等待更简洁的解决方案,然后再将问题设置为答案。

相关内容