version 1.77, 2011/07/07 13:26:25 |
version 1.78, 2011/07/07 13:54:36 |
Line 219 print_man_node(MAN_ARGS) |
|
Line 219 print_man_node(MAN_ARGS) |
|
if ('\0' == *n->string) { |
if ('\0' == *n->string) { |
print_otag(h, TAG_P, 0, NULL); |
print_otag(h, TAG_P, 0, NULL); |
return; |
return; |
} else if (' ' == *n->string && MAN_LINE & n->flags) |
} |
|
|
|
if (' ' == *n->string && MAN_LINE & n->flags) |
print_otag(h, TAG_BR, 0, NULL); |
print_otag(h, TAG_BR, 0, NULL); |
|
else if (MANH_LITERAL & mh->fl && n->prev) |
|
print_otag(h, TAG_BR, 0, NULL); |
|
|
print_text(h, n->string); |
print_text(h, n->string); |
|
|
/* |
|
* If we're in a literal context, make sure that words |
|
* togehter on the same line stay together. This is a |
|
* POST-printing call, so we check the NEXT word. Since |
|
* -man doesn't have nested macros, we don't need to be |
|
* more specific than this. |
|
*/ |
|
if (MANH_LITERAL & mh->fl && |
|
(NULL == n->next || |
|
n->next->line > n->line)) |
|
print_otag(h, TAG_BR, 0, NULL); |
|
return; |
return; |
case (MAN_EQN): |
case (MAN_EQN): |
PAIR_CLASS_INIT(&tag, "eqn"); |
PAIR_CLASS_INIT(&tag, "eqn"); |
|
|
man_alt_pre(MAN_ARGS) |
man_alt_pre(MAN_ARGS) |
{ |
{ |
const struct man_node *nn; |
const struct man_node *nn; |
int i; |
int i, savelit; |
enum htmltag fp; |
enum htmltag fp; |
struct tag *t; |
struct tag *t; |
|
|
|
if ((savelit = mh->fl & MANH_LITERAL)) |
|
print_otag(h, TAG_BR, 0, NULL); |
|
|
|
mh->fl &= ~MANH_LITERAL; |
|
|
for (i = 0, nn = n->child; nn; nn = nn->next, i++) { |
for (i = 0, nn = n->child; nn; nn = nn->next, i++) { |
t = NULL; |
t = NULL; |
switch (n->tok) { |
switch (n->tok) { |
Line 495 man_alt_pre(MAN_ARGS) |
|
Line 492 man_alt_pre(MAN_ARGS) |
|
print_tagq(h, t); |
print_tagq(h, t); |
} |
} |
|
|
|
if (savelit) |
|
mh->fl |= MANH_LITERAL; |
|
|
return(0); |
return(0); |
} |
} |
|
|
Line 554 man_IP_pre(MAN_ARGS) |
|
Line 554 man_IP_pre(MAN_ARGS) |
|
return(1); |
return(1); |
} |
} |
|
|
|
/* FIXME: width specification. */ |
|
|
print_otag(h, TAG_DT, 0, NULL); |
print_otag(h, TAG_DT, 0, NULL); |
|
|
/* For IP, only print the first header element. */ |
/* For IP, only print the first header element. */ |
|
|
man_literal_pre(MAN_ARGS) |
man_literal_pre(MAN_ARGS) |
{ |
{ |
|
|
if (MAN_nf == n->tok) { |
if (MAN_nf != n->tok) { |
print_otag(h, TAG_BR, 0, NULL); |
print_otag(h, TAG_BR, 0, NULL); |
mh->fl |= MANH_LITERAL; |
|
} else |
|
mh->fl &= ~MANH_LITERAL; |
mh->fl &= ~MANH_LITERAL; |
|
} else |
|
mh->fl |= MANH_LITERAL; |
|
|
return(0); |
return(0); |
} |
} |