These pages are written by only Japanese.
|
Namazu for hns による簡易全文検索です。 詳細は 詳細指定/ヘルプをご参照下さい。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||
yoya_awm-ffxxxxxxxxxxxx1d.20081205.log yoya_bot-yoya_awm-27xxxxxxxxxxxx05.20090506.log yoya_awm-yoya_bot-e1xxxxxxxxxxxx9d.20090506.log ※ 念の為、x は隠してます。ぱっと見、発言したユーザと一致していたので、 ユーザ毎に切り出しているのかと勘違いしたのですが、
- グループチャットで一人で作成した場合は => <user_id>-<id_something>..log - 特定の人にチャットしたり、そこに人を呼んで増やしたりした場合は、 => <user_id_1>-<user_id_2>-<id_something>..logこれを <chat_group_label>.<date>.log にすれば、 ピンと来るかなと以下のように改造してみました。
$files = array( 'yoya_awm-yoya_bot-c7xxxxxxxxxxxxd2' => 'yoya_bot', ); $bot->loadPlugin( "log", array( 'dir' => '/home/yoya/log/skype', 'files' => $files, 'chat_topic_filter' => null, 'chat_id_filter' => null, ));でもって、Skype/Bot/Plugin/Log.php は以下のように処理。 __construct でパラメータチェックしつつ受け取る。
$this->files = $parameter['files']; } else { $this->files = array(); } _append で $chat_id からファイル名を作る所に細工。 if (isset($this->files[$chat_id])) { $chat_id = $this->files[$chat_id]; }
% cat yoya_bot.20090805.log 2009/08/05 00:00:26 [SAID] よや(yoya_awm) うーうー</blockquote>\(^O^)/ どうでしょうね。> 誰と無く。 ↑一応、改変した Log.php を晒してみたり…
self[nth] nth 番目のバイトを整数(文字コード)で返します p 'bar'[2] # => 114なんだけど、実際に試すと。
#! /usr/bin/ruby $s = "foobaa" $c = $s[0] p $s p $c
"foobaa" "f"何故か、数値じゃなくて(1文字の)文字列が出てきます。
$s = String::new("foobaa");したけど変わらず。
"foobaa" 102となります。 自分使ってるの 1.9.1p129 なもので…
def each @data.each_byte { |byte| (0..7).each { |bit_offset| bit = (byte >> (7 - bit_offset)) & 1 yield(bit) } } endclass に↑こう書いておくだけで、
$io.each { |b| printf("%d", b) }こんな風に 1 bit ずつ each で回せる。うーむw
if RUBY_VERSION >= '1.9.0' # >_<; byte = @data[byte_offset].ord else byte = @data[byte_offset] end
def get_bits_signed!(bit_width) bits = get_bits!(bit_width) sig_b = 1 << (bit_width - 1) if (bits & sig_b) # negaive bit_mask = (sig_b << 1) - 1 bits = bits ^ bit_mask; # bit reverse bits = - (bits + 1) end bits end例えば、11bitなんだけど符号ありみたいな、 変態的なバイナリフォーマットを処理する時に必要。