如何为每个应用程序分配 applescript 的快捷方式或如何显示每个应用程序脚本菜单

如何为每个应用程序分配 applescript 的快捷方式或如何显示每个应用程序脚本菜单

有些应用程序在菜单中有脚本图标,如 iTunes、NetNewsWire、TaskPaper,并且很容易为这些应用程序创建脚本并分配快捷方式(使用键盘首选项窗格),但大多数应用程序没有这样的图标、子菜单和分配快捷方式的可能性。这可以通过某种方式触发(例如 Info.plist)还是在应用程序内部进行编程?

我需要这个来让 ⌘W 隐藏窗口而不是关闭,而且我只对某些应用程序(TaskPaper 和 Sqlite Pro)需要这个。我尝试在隐藏操作上分配 ⌘W,但这样 ⌘H 就停止工作了(因为只能分配一个快捷方式)。因此,对于 TaskPaper,我创建了脚本,该脚本可通过其脚本菜单看到,并且可以分配快捷方式,但 Sqlite Pro 缺少这样的菜单,我正在寻找解决方案来分配 ⌘W 来隐藏 Sqlite Pro,而不会破坏 ⌘H 执行相同的操作。

答案1

以下是操作方法。已验证它可以在 Snow Leopard 中运行。

  1. 打开 Automator,创建新服务
  2. 在顶部弹出窗口中选择“服务在 TaskPaper 中未收到输入”(从第二个弹出窗口中查找并选择 TaskPaper)
  3. 粘贴以下 Applescript:tell application "System Events" to set visible of first application process whose frontmost is true to false
  4. 保存服务。“隐藏最前面”
  5. 打开系统偏好设置,转到键盘,双击该服务并将键盘快捷键设置为⌘W。

对 Sqlite Pro 重复此过程。我看不出有办法将服务应用于所选应用程序,似乎是全部或一个。您可以使用一些 applescript 检查应用程序进程的名称并将其与某个列表进行对比,如果在列表中则隐藏,如果不在则关闭……但我将把这留给读者作为练习。:)

答案2

我认为您所指的文件存储在 /Users/youruser/Library/Scripts 中。

否则,您可以使用自动程序启动脚本。看看http://osxgoodies.wordpress.com/2010/02/24/all-about-applescript/

答案3

快速脚本将脚本视为~/Library/Scripts/Applications/AppName/特定于 AppName 的脚本。默认情况下,特定于应用程序的脚本显示在菜单顶部。

快速脚本

相关内容