IRC の MODE をパースするのがめんどい
寝たり起きたりするうちになんとなく実装したのがソレっぽく動いた。睡眠回数が多いほうがアイデアが浮かぶに違いない。
positive_mode = [] negative_mode = [] mode = positive_mode arg_pos = 0 message[1].each_byte do |c| case c when ?+ mode = positive_mode when ?- mode = negative_mode when ?o, ?v, ?k, ?l, ?b, ?e mode << [c.chr, message[2+arg_pos]] arg_pos += 1 else mode << [c.chr, nil] end end mode = nil # when message is ["#chokan", "-o+v", "chokan", "chokan"] p negative_mode #=> [["o", "chokan"]] p positive_mode #=> [["v", "chokan"]]
うっさい
関連エントリー
- chokan の設定 YAML を使うことにした。当初 XML を使うつもりだったけどマップするのがめんどいので保留。obj.to_yaml だけなのは簡単でいい...
- chokan 再実装 IRC BOT を作り直し。RICE 使うことにする。 プラグインのロード方法を変えた。新しい無名のモジュールを作ってその中で実行してクラス...
- chokan & FOAF 実験的に Rena を使ってみたかったので、よろしそうなプログラムを考える。 IRC BOT に何か FOAF アレこれできるような機能をつ...
- ✖ 悔しいって気持ちあんまり感じないんだよなあ…… ないし、感じるけど、人に対してはあんまり感じなくて普通にすごいなぁとしか思わない。あるいは悔...
- Charlotte と Nina の入れ替え Nina はファンが五月蝿すぎ、熱くなりすぎ、不安定すぎ、なので古いほうの Charlotte にサーバー系の機能を移転する。Synergy...