0

我试图弄清楚如何在运行 10.6.8 的 Mac 上响应 ruby​​ 中的咆哮通知。

这是我使用guard编写的基本代码。

require 'growl'
require "pathname"

guard 'shell' do
  watch(/(.*)/) do |m|
    puts "----------"
    path = Pathname.new(m[0])
    puts "Pathname = #{path}"

    notification = Growl.new
    notification.appIcon = "Finder"

    if path.exist?
      notification.message = "File updated: #{path}"
    else
      notification.message = "File deleted: #{path}"
    end

    notification.run
  end
end

我想这样做,以便当用户单击咆哮通知时,它将触发 ruby​​ 回调(例如在文件名中附加时间戳)。

我在咆哮网站上找到的所有教程都是针对直接 Cocoa 编程的。如果我不知道如何在 Ruby 中做到这一点,我想我会卷起袖子去做,但在 Ruby 中似乎应该很容易做到。

我最终希望它也能在 Linux 和 Windows 上运行,这就是为什么我一直回避只用 Objective-C 或 AppleScript 编写它。

我想做这样的事情http://lostechies.com/derickbailey/2011/01/23/responding-to-growl-notification-clicks-and-timeouts-with-macruby/除了普通的红宝石而不是macruby。

4

1 回答 1

0

我不认为growl宝石有这个能力。Growl 网站链接到您可能想要查看的另一个名为groem的 gem。它似乎完全支持回调

于 2012-05-09T19:12:00.543 回答