irssiで全然プラグインとか入れてなかったんだけど、使ってみようとおもってコマンド打ってみた。
Irssi: Unknown command: SCRIPT
って言われた。
なんでなんで?ヘルプにだって使えるって書いてあるのにー?と小一時間調べて、ようやく原因が分かった。
MacPortsでirssi本体しか入れていなかったからだった orz
sudo port install irssi-devel
これでようやく解決。あとは~/.irssi/scripts/にplファイルを置けばそれを読み取ってくれるらしい。
試しに~/.irssi/scripts/hoge.plを書いてみる。
use strict; use warnings; use Irssi 'command_bind'; use vars qw($VERSION %IRSSI); $VERSION = '1.00'; %IRSSI = ( authors => 'sugyan', contact => 'sugi1982@gmail.com', name => 'Hoge', description => 'hoge fuga piyo', license => 'Public Domain', ); command_bind hello => sub { print 'Hello, world!!'; };
書き方については以下にチュートリアルがある。日本語の資料は見つからなかった。
Scripting Irssi 0.8.6+ - Juerd's site
ともかく、このscriptはirssiの中から呼び出されるものなので、普通にコマンド実行はできない。
Irssiというモジュールを読むように書いておけば、irssiからそれを読み取って実行してくれるらしい。
基本的にコマンドに対する処理か、イベントに反応する処理か、の2択かな。
上記のスクリプトは、irssiから
/script load hoge
とやれば
Irssi: Loaded script hoge
と読み取ってくれる。loadが成功していれば
/hello
というコマンドで
Hello, world!!
と出力してくれる。
ようやくここまで辿り着いた...orz