mscan: fmt_date: refactor, add 5-char %d

pull/2/head
Christian Neukirchen 8 years ago
parent 77d0498b6c
commit 53852d7517

@ -106,28 +106,37 @@ fmt_date(struct message *msg, int w, int iso)
if (!msg)
return "";
if ((v = blaze822_hdr(msg, "date"))) {
time_t t = blaze822_date(v);
if (t != -1) {
struct tm *tm;
tm = localtime(&t);
if (iso && w >= 19)
strftime(date, sizeof date, "%Y-%m-%d %H:%M:%S", tm);
else if (iso && w >= 16)
strftime(date, sizeof date, "%Y-%m-%d %H:%M", tm);
else if (iso || tm->tm_year != curyear)
strftime(date, sizeof date, "%Y-%m-%d", tm);
else if (tm->tm_yday != curyday)
strftime(date, sizeof date, "%a %b %e", tm);
else
strftime(date, sizeof date, "%a %H:%M", tm);
} else {
strcpy(date, "(invalid)");
}
v = blaze822_hdr(msg, "date");
if (!v)
return "(unknown)";
time_t t = blaze822_date(v);
if (t == -1)
return "(invalid)";
struct tm *tm;
tm = localtime(&t);
if (iso) {
if (w >= 19)
strftime(date, sizeof date, "%Y-%m-%d %H:%M:%S", tm);
else if (w >= 16)
strftime(date, sizeof date, "%Y-%m-%d %H:%M", tm);
else
strftime(date, sizeof date, "%Y-%m-%d", tm);
} else if (w < 10) {
if (tm->tm_year != curyear)
strftime(date, sizeof date, "%b%y", tm);
else if (tm->tm_yday != curyday)
strftime(date, sizeof date, "%d%b", tm);
else
strftime(date, sizeof date, "%H:%M", tm);
} else {
strcpy(date, "(unknown)");
// mtime perhaps?
if (tm->tm_year != curyear)
strftime(date, sizeof date, "%Y-%m-%d", tm);
else if (tm->tm_yday != curyday)
strftime(date, sizeof date, "%a %b %e", tm);
else
strftime(date, sizeof date, "%a %H:%M", tm);
}
return date;
@ -327,10 +336,9 @@ oneline(char *file)
long lineno = msg ? blaze822_seq_find(file) : 0;
if (lineno)
printf("%*ld", w, lineno);
wleft -= printf("%*ld", w, lineno);
else
printf("%*s", w, "");
wleft -= w > 0 ? w : -w;
wleft -= printf("%*s", w, "");
}
break;
case 'd':

Loading…
Cancel
Save