Ответ на щелчок на уведомлении рычания в рубине

Я пытаюсь выяснить, как ответить на рычание уведомления в ruby ​​на моем Mac под управлением 10.6.8.

Вот основной код, который я написал, используя охрану.

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 ​​(например, добавление метки времени к имени файла).

Все учебники, которые я нашел на сайте рычания, предназначены для прямого программирования Какао. Если я не могу понять, как это сделать в Ruby, думаю, я закрою свои рукава и сделаю это, но, похоже, это легко сделать в Ruby.

В конце концов я захочу, чтобы это работало и в Linux, и в Windows, поэтому я избегал просто писать это в Objective-C или AppleScript.

Я хочу сделать что-то вроде этого http://lostechies.com/derickbailey/2011/01/23/responding-to-growl-notification-clicks-and-timeouts-with-macruby/ за исключением простого рубина вместо макруби.

1 ответ

Решение

Я не думаю, что growl драгоценный камень способен на это. Веб- сайт Growl ссылается на другой драгоценный камень, называемый groem, который вы можете попробовать. Кажется, есть полная поддержка обратных вызовов.

Другие вопросы по тегам