1. plum
$ mkdir ~/.plum
$ cd ~/.plum
$ cp /usr/share/doc/plum/examples/plum-default.conf plum.conf
$ emacs plum.conf (viでもいいけど)
だいたい次のよーな感じ(抜粋)
plum.kanji: jis,euc
plum.nick: nick
plum.user: user name
plum.server: irc.fujisawa.wide.ad.jp:6667
plum.server: irc.kyoto.wide.ad.jp:6660,6661,6662,6663,6664,6665,6666,6668,6669
plum.server: irc.tokyo.wide.ad.jp:6660,6661,6662,6663,6664,6665,6666,6668,6669
plum.client: *:port password
# サーバに接続したときに指定したチャンネルに入る
+ channel/join/connect.plm
channel.join.connect.channel: #チャンネル1
channel.join.connect.channel: #チャンネル2
# 招待されたチャンネルに入る
+ channel/join/invite.plm
channel.join.invite.mask: *!*@* #チャンネル1
channel.join.invite.mask: *!*@* #チャンネル2
# チャンネルオペレータを復帰する
+ channel/mode/oper/get.plm
# 特定の人をチャンネルオペレータにする
+ channel/mode/oper/set.plm
channel.mode.oper.set.delay: 0
channel.mode.oper.set.mask: +nick1*!*username1@*.hoge.ne.jp #チャンネル1
channel.mode.oper.set.mask: +nick2*!*username2@*.hoge.ne.jp #チャンネル1
channel.mode.oper.set.mask: +nickA*!*usernameA@*.hoge.ne.jp #チャンネル2
channel.mode.oper.set.mask: +nickB*!*usernameB@*.hoge.ne.jp #チャンネル2
# チャンネルを作成したときにチャンネルモードを設定する
+ channel/mode/set.plm
channel.mode.set.mode: #チャンネル1 +sn
channel.mode.set.mode: #チャンネル2 +sn
# クライアントとの入出力で漢字コードを変換する
+ client/kanji.plm
client.kanji.input: jis
# メッセージをチャンネルごとのログとして保存する
+ log/channel.plm
log.channel.directory: ~/.plum/log
log.channel.file: channel1/%Y%m%d.txt;euc #チャンネル1
log.channel.file: cnannel2/%Y%m%d.txt;euc #チャンネル2
log.channel.header: %H:%M:%S
log.channel.mode: 0644
log.channel.command: privmsg,join,part,kick,invite,mode,nick,quit,topic,notice
(前はsjisにしてたけど、ktermでgrepが使えるeucの方がいいかも)
# クライアントを接続したときに最近のメッセージを送る
+ log/recent.plm
log.recent.header: %H:%M
log.recent.line: 50
log.recent.command: privmsg,join,part,kick,invite,mode,nick,quit,topic,notice
# plumをバックグラウンドで実行する
+ sys/background.plm
# plum.confが変更されると自動的に読み込み直す
+ sys/conf/update.plm
# 複数のサーバを単一のサーバのようにエミュレートする
+ sys/multicast.plm
# クライアントとの接続状態によってAWAYを設定する
+ user/away/client.plm
user.away.client.set: No connection IRC-Clients
# ニックネームを変更するとそれに対応するAWAYを設定する
+ user/away/nick.plm
user.away.nick.set: nick_slp,nick_zzz 寝た
user.away.nick.set: nick_bz,nick_buzy 忙しい
上記のような設定ファイルを、接続するサーバ毎(チャンネル毎じゃないぞ)に用意する。ここで、ポート番号は同じにしておき、"sys/multicast.plm"を有効にしておく。んで、IRCクライアントから、このホストの指定ポート番号へ接続すれば、各サーバのチャンネルが、同一サーバ(のように見えて)として接続できる。なお、FWでポートを空けていれば、外からも接続可能(そりゃそーだ)。
メインの設定ファイル(私の場合はWide系)を plum.conf、某孤立サーバを plum-hoge.conf とした場合は、.plum に移動し、以下のように実行する。たぶん。
$ cd .plum
$ plum hoge
2. liece
$ mkdir ~/.liece
$ cd ~/.liece
$ cp /usr/share/doc/liece/examples/init.el .
$ emacs init.el
変更点↓
(setq liece-server '(:host "localhost" :service Port))
(setq liece-beep-words-list '("keyword"))
ほとんどデフォルトだな。。
7/10追記
誰かの特定の発言に対して、自動応答する設定。特に意味はない。つか、ドキュメント参照
+ auto/response.plm
auto.response.file: response.txt
で、plum.conf と同じディレクトリに"response.txt"を用意する。
$ cat response.txt
pattern: (腹|はら)(へった|減った)
rate: 50
response: たしとけ ┐(´.`)┌
response: たしなさい ┐(´.`)┌
pattern: ^しまった
rate: 50
response: あけとけ ┐(´.`)┌
response: あけなさい ┐(´.`)┌
こんな感じ。全角文字を使う場合は、jisコードにする。
pattern: … どの発言に反応するか。正規表現可。例はハラが減ってそーな発言に反応
rate: … その発言に対して、どの割合で反応するか。例は全て50%
response: … こちらからの発言。例は減ったハラを足すように指示(くだらん) 複数行で選択肢を増やせる。
くれぐれも、「あきらかに自動応答である」ことがわかるよーにしておくこと(^^;