我可以在后台运行一个Node.js命令行应用程序,并通过击键来调用它?

是否有可能运行Node.js命令行应用程序,并通过击键控制它? 例如想到在后台运行不可见的“Alfred”(Mac OS),但如果按下⌘⌥则会打开。

我知道有可能检测击键,如果你设置“process.stdin.setRawMode(true);” 但是这似乎并没有注册⌘按键。 我需要额外的技术吗? (例如AppleScript?)

谢谢你,Pipo

这个问题有两个部分:

  1. 在后台运行命令行应用程序
  2. 应用程序从全局快捷方式接收命令

要回答数字1,请查看https://superuser.com/questions/334597/enable-disable-startup-programs-script-services-on-amac 。 如果你想让你的脚本很容易从命令行关机/重新启动,我会用build议4去使用launchd

要回答2号,请看第二个答案: https : //apple.stackexchange.com/questions/24063/create-global-shortcut-to-run-command-line-applications提及大量的第三方应用程序可以做到这一点,它提到了如何使用Automator服务从快捷方式运行脚本。

由于这是一个node.js的具体问题,我可能会挂钩一个小的服务器到我的脚本,侦听从其他脚本发送的命令(每个都分配一个键盘快捷键)。 如果您想从非常简单的“客户端脚本”在您的“服务器脚本”上执行“远程过程调用”,那么Dnode非常棒 。