=cut
-use Env qw(HOME MAILDIR);
+use Env qw(COLUMNS HOME MAILDIR);
+
+$COLUMNS ||= 80;
if (not $HOME) {
die("HOME environment variable must be set.\n");
my $msgnum;
my %FOLDERS = ('SPAM'=>1);
+ # XXX lame names and hard-coded proportions.
+ my $nf = $COLUMNS * 0.1;
+ my $nm = $COLUMNS * 0.0625;
+ my $nF = $COLUMNS * 0.175;
+ my $ns = $COLUMNS - $nf - $nm - $nF - 3;
+
if (-f "$HOME/.minc") {
require "$HOME/.minc";
}
defined($mhfolder) or ($mhfolder = find_mh_folder($msg, %headers));
+ $msgnum = store_message($msg, $mhfolder);
+
if ($mhfolder eq 'SPAM') {
$spam++;
} else {
$saved++;
+ print("\r");
+ print(' ' x $COLUMNS);
+ printf("\r\%-${nf}s \%${nm}d \%-${nF}s \%s\n",
+ substr($mhfolder, 0, $nf), substr($msgnum, 0, $nm),
+ substr(pop(@{$headers{'from'}}), 0, $nF),
+ substr(pop(@{$headers{'subject'}}), 0, $ns))
}
- $msgnum = store_message($msg, $mhfolder);
-
for my $hook (@post_store_hooks) {
$hook->(\%batons, \%headers, $mhfolder, $msgnum);
}
- print("\r");
- if (not $FOLDERS{$mhfolder}) {
- print(' ' x $len);
- print(" \r$mhfolder\n");
- $FOLDERS{$mhfolder} = 1;
- }
-
printf(" \%${len}d SPAM \%${len}d saved \%${len}d/%1d",
$spam, $saved, $spam + $saved, $msgcount);