「それLimechatでできるよ」なんだけど、Rieceでやってみた。
まず、~/.riece/initファイルを編集。
(setq riece-server "ircnet" riece-server-alist '(("ircnet" :host "irc.tokyo.wide.ad.jp") ("freenode" :host "chat.freenode.net" :coding utf-8) ("twitter" :host "localhost" :username "name" :nickname "name" :password "password" :service 16668 :coding utf-8) ("gmail" :host "localhost" :username "name" :nickname "name" :realname "name@gmail.com" :password "password" :service 16800 :coding utf-8) )) (setq riece-startup-server-list '("twitter" "gmail" "freenode")) (setq riece-startup-channel-list '("#gmail gmail" "#1986 freenode" "#twitter twitter"))
passが直書きなのはどうなのか…ってところですが、これでとりあえず、rieceでlogを見るところまでできた。
次にgrowlに通知するところだけど、Rubyで適当に書く。
#! /opt/local/bin/ruby require 'rubygems' require 'ruby-growl' g = Growl.new("localhost", "ruby-growl", ["ruby-growl Notification"],nil,"growl") g.notify("ruby-growl Notification",ARGV[0],ARGV[(1..ARGV.length)].join(" "))
実質2行とかやばす。
で、このスクリプトを実行させるためのやつを.emacsに書いておく。
(setq riece-keywords '("syou6162" "syou")) (add-hook 'riece-keyword-notify-functions (lambda (keyword message) (progn (start-process-shell-command "riece-keyword-notify" nil "~/ruby/growl.rb" (riece-format-identity (riece-message-speaker message) t) (riece-message-text message)) message)))
するとgrowlで適当にnotifyしてくれる。本当は特定userに対してやりたいんだけど、まあちょっと置いておく。