mirror of
https://github.com/leahneukirchen/mblaze
synced 2024-11-03 15:40:32 +00:00
mlist: print a total line with -i when useful
This commit is contained in:
parent
2b74b23cea
commit
7a2204049e
@ -74,6 +74,8 @@ Don't list messages in
|
||||
Don't print filenames, instead print a single line summary for each
|
||||
folder with the number of unseen, flagged and total messages, as well
|
||||
as the folder name.
|
||||
.Pp
|
||||
When more two or more summaries are printed, also print a total.
|
||||
.El
|
||||
.Pp
|
||||
Multiple options are regarded as a conjunction.
|
||||
|
19
mlist.c
19
mlist.c
@ -45,6 +45,11 @@ static long iunseen;
|
||||
static long iflagged;
|
||||
static long imatched;
|
||||
|
||||
static long tdirs;
|
||||
static long tunseen;
|
||||
static long tflagged;
|
||||
static long tcount;
|
||||
|
||||
void
|
||||
list(char *prefix, char *file)
|
||||
{
|
||||
@ -72,11 +77,11 @@ list(char *prefix, char *file)
|
||||
return;
|
||||
imatched++;
|
||||
if (!flagset)
|
||||
icount++;
|
||||
icount++, tcount++;
|
||||
if (!strchr(f, 'S'))
|
||||
iunseen++;
|
||||
iunseen++, tunseen++;
|
||||
if (strchr(f, 'F'))
|
||||
iflagged++;
|
||||
iflagged++, tflagged++;
|
||||
return;
|
||||
}
|
||||
|
||||
@ -197,9 +202,11 @@ listarg(char *arg)
|
||||
if (!maildir)
|
||||
listdir(arg);
|
||||
|
||||
if (iflag && imatched)
|
||||
if (iflag && imatched) {
|
||||
tdirs++;
|
||||
printf("%6ld unseen %3ld flagged %6ld msg %s\n",
|
||||
iunseen, iflagged, icount, arg);
|
||||
}
|
||||
|
||||
icount = gcount;
|
||||
iunseen = gunseen;
|
||||
@ -264,9 +271,9 @@ main(int argc, char *argv[])
|
||||
listarg(argv[i]);
|
||||
}
|
||||
|
||||
if (iflag && imatched)
|
||||
if (iflag && tdirs > 1)
|
||||
printf("%6ld unseen %3ld flagged %6ld msg\n",
|
||||
iunseen, iflagged, icount);
|
||||
tunseen, tflagged, tcount);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user