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

ユーザーがうなり声の通知をクリックすると、ルビーコールバックがトリガーされるようにしたいと思います(ファイル名にタイムスタンプを追加するなど)。

Growl サイトで見つけたすべてのチュートリアルは、直接 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

growlgem にこれができるとは思えません。Growl の Web サイトには、 groemと呼ばれる別の gem へのリンクがあり、ぜひチェックしてみてください。コールバックを完全にサポートしているようです。

于 2012-05-09T19:12:00.543 に答える