#!/usr/local/bin/perl

# 
# mailsplit: メールフォルダから指定文字を含むメールを検索
# 
#     [1998/06/17] OSHIRO Naoki. mailsplit を元に作成
# 
#     $Log:$
#

require "getopts.pl";
&Getopts("i"); # i: ignore case
$opt_i="i" if ($opt_i);
$opt_i="";

$word=shift(@ARGV);
print STDERR "Word: $word\n";

$first=1;
$detect=0;
@mbody=();
$pre_ARGV="";
while (<>) {
    if ($ARGV ne $pre_ARGV) {
	print STDERR "File: $ARGV\n";
	$pre_ARGV=$ARGV;
    }
    if ($first || /^$/) {     # 改行だけの行が見つかって
	$pre=$_;
	next if (eof);
	$_=<>;
	push(@mbody, $pre);
	if (/^From (.+)/) {   # 続く行が From ならメールヘッダ 
	    if ($detect) {
		print join('', @mbody);
                $detect=0;
	    }
	    @mbody=();
	} elsif (/^$/) {
	    redo;
	}
    }
    push(@mbody, $_);
    $detect=1 if (eval "/$word/$opt_i");
    $first=0;
}
print join('', @mbody) if ($detect);
