version 1.122, 2011/11/13 13:15:14 |
version 1.123, 2011/11/13 15:33:41 |
Line 958 print_man_nodelist(DECL_ARGS) |
|
Line 958 print_man_nodelist(DECL_ARGS) |
|
static void |
static void |
print_man_foot(struct termp *p, const void *arg) |
print_man_foot(struct termp *p, const void *arg) |
{ |
{ |
|
char title[BUFSIZ]; |
|
size_t datelen; |
const struct man_meta *meta; |
const struct man_meta *meta; |
|
|
meta = (const struct man_meta *)arg; |
meta = (const struct man_meta *)arg; |
Line 967 print_man_foot(struct termp *p, const void *arg) |
|
Line 969 print_man_foot(struct termp *p, const void *arg) |
|
term_vspace(p); |
term_vspace(p); |
term_vspace(p); |
term_vspace(p); |
term_vspace(p); |
term_vspace(p); |
|
snprintf(title, BUFSIZ, "%s(%s)", meta->title, meta->msec); |
|
datelen = term_strlen(p, meta->date); |
|
|
p->flags |= TERMP_NOSPACE | TERMP_NOBREAK; |
p->flags |= TERMP_NOSPACE | TERMP_NOBREAK; |
p->rmargin = p->maxrmargin - term_strlen(p, meta->date); |
|
p->offset = 0; |
p->offset = 0; |
|
p->rmargin = (p->maxrmargin - datelen + term_len(p, 1)) / 2; |
|
|
/* term_strlen() can return zero. */ |
|
if (p->rmargin == p->maxrmargin) |
|
p->rmargin--; |
|
|
|
if (meta->source) |
if (meta->source) |
term_word(p, meta->source); |
term_word(p, meta->source); |
if (meta->source) |
|
term_word(p, ""); |
|
term_flushln(p); |
term_flushln(p); |
|
|
p->flags |= TERMP_NOSPACE; |
p->flags |= TERMP_NOSPACE; |
p->offset = p->rmargin; |
p->offset = p->rmargin; |
p->rmargin = p->maxrmargin; |
p->rmargin = p->maxrmargin - term_strlen(p, title); |
p->flags &= ~TERMP_NOBREAK; |
if (p->offset + datelen >= p->rmargin) |
|
p->rmargin = p->offset + datelen; |
|
|
term_word(p, meta->date); |
term_word(p, meta->date); |
|
term_flushln(p); |
|
|
|
p->flags &= ~TERMP_NOBREAK; |
|
p->flags |= TERMP_NOSPACE; |
|
p->offset = p->rmargin; |
|
p->rmargin = p->maxrmargin; |
|
|
|
term_word(p, title); |
term_flushln(p); |
term_flushln(p); |
} |
} |
|
|