【问题标题】:How to make quicksilver remember custom trigger如何让 quicksilver 记住自定义触发器
【发布时间】:2010-06-16 07:58:18
【问题描述】:

我正在尝试为我的 shell/apple 脚本文件创建一个自定义触发器来运行,这样我只需按一下按钮就可以启动我的开发环境。所以基本上:

  1. 我有一个名为 start_server.sh 的 shell 脚本(包括一些苹果脚本),它做了 3 件事:

    • 启动 solr 服务器
    • 启动 memcached
    • 启动脚本/服务器
  2. 我有一个保存的 quicksilver 命令 (.qs),它打开 start_server.sh(所以 start_server.sh,然后操作是“在终端中运行”)

  3. 我创建了一个自定义触发器来调用这个保存的 qs 命令。

我这样做了,然后对其进行了测试,并且可以正常工作。然后我尝试仔细检查它,所以我退出了 quicksilver,当我检查触发器时,它只是说:“打开(空)”作为操作。我再次设置触发器,当我重新启动 QS 时,同样的事情再次发生。我不知道为什么,但我打开终端的旧自定义触发器一直有效,为什么这个不工作?

这是我重新启动 QS 后的触发器截图:http://grab.by/4XWW

如果您对如何为我的服务器启动“按钮”有任何其他建议,请这样做:) 谢谢!

作为补充说明,我已经尝试了此线程上的步骤但无济于事:http://groups.google.com/group/blacktree-quicksilver/browse_thread/thread/7b65ecf6625f8989

这是 Triggers.plist 文件中假定的自定义触发器的 sn-p:

<dict>
  <key>ID</key>
  <string>2903BB6B-94CB-4DE8-B00D-23973FA54F3D</string>
  <key>command</key>
    <dict>
  <key>actionID</key>
  <string>FileOpenAction</string>
  <key>directID</key>
  <string>/Users/eumir/Documents/QScripts/start-dx-command.qscommand</string>
</dict>
  <key>enabled</key>
  <true/>
  <key>keyCode</key>
  <integer>39</integer>
  <key>modifiers</key>
  <integer>1573160</integer>
  <key>onPress</key>
  <true/>
  <key>type</key>
  <string>QSHotKeyTrigger</string>
</dict>

取出文件夹和文件名中的空格,重启后仍然返回null。

【问题讨论】:

  • 因为这个问题更多是关于 Quicksilver 而不是编程,所以你在超级用户上回答这个问题可能会更好......
  • 好的,我会把它贴在那里 :) 谢谢!
  • 对空间的有趣思考......如果你还没有,你能尝试两件事吗? 1:重命名目录,看看是否有帮助,2:使用终端方式转义标签中的空格,看看是否有效(例如.../Quicksilver\ Scripts/...)
  • 我从文件夹和文件名中取出了所有空格,但它仍然不起作用。我将 Quicksilver Scripts 重命名为 QScripts 并且 qscommand 现在被破折号:start-server-command.qscommand 但我仍然在重新启动时得到空值

标签: macos quicksilver


【解决方案1】:

首先,你有最新的测试版吗?最近版本号发生了变化。 其次,我创建了一个自定义触发器,它通过重新启动 Quicksilver 没有问题。我试图找出应用程序存储触发器信息的位置,并找到了这个属性文件:~/Library/Appllication Support/Quicksilver/Triggers.plist。 自定义条目的 ID 类似于“FE2976DF-DF14-4191-B56C-8A5E68F48A84”。 因此,您可以尝试创建触发器,从 plist 文件中复制相应的行,关闭 Quicksilver,如果这些行消失(我实际上对此表示怀疑)再次复制它们。 如果这不起作用,至少你现在知道去哪里找了。

编辑:plist 文件中的条目是键值对。 (null) 可能表示缺少目标值(至少据我所知,无法重现问题)。

【讨论】:

  • 是的,因为我使用的是雪豹,我有 B57 版本。我刚刚检查了他们的网站,似乎它仍然是他们为 10.6 构建的版本?我刚刚检查了触发器 plist,我用代码更新了我的问题
【解决方案2】:

我遇到了同样的问题,并且发现 一些 如果触发器指向的所有内容都在目录中,那么他们很幸运能够坚持下去。换句话说,如果我想将 Cmd-Shift-Ctrl-k 绑定到“Open KeePass X”,那么我需要确保 KeePassX.app 在目录中。

希望对你有帮助,

-克里斯

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多