version 1.40, 2010/03/27 10:14:32 |
version 1.43, 2010/05/15 20:51:40 |
Line 86 const struct man_macro __man_macros[MAN_MAX] = { |
|
Line 86 const struct man_macro __man_macros[MAN_MAX] = { |
|
{ blk_exp, MAN_EXPLICIT | MAN_NOCLOSE}, /* dei */ |
{ blk_exp, MAN_EXPLICIT | MAN_NOCLOSE}, /* dei */ |
{ blk_exp, MAN_EXPLICIT | MAN_NOCLOSE}, /* am */ |
{ blk_exp, MAN_EXPLICIT | MAN_NOCLOSE}, /* am */ |
{ blk_exp, MAN_EXPLICIT | MAN_NOCLOSE}, /* ami */ |
{ blk_exp, MAN_EXPLICIT | MAN_NOCLOSE}, /* ami */ |
{ blk_exp, MAN_EXPLICIT | MAN_NOCLOSE}, /* ig */ |
|
{ blk_dotted, 0 }, /* . */ |
{ blk_dotted, 0 }, /* . */ |
}; |
}; |
|
|
Line 297 blk_dotted(MACRO_PROT_ARGS) |
|
Line 296 blk_dotted(MACRO_PROT_ARGS) |
|
for (nn = m->last->parent; nn; nn = nn->parent) |
for (nn = m->last->parent; nn; nn = nn->parent) |
if (nn->tok == MAN_de || nn->tok == MAN_dei || |
if (nn->tok == MAN_de || nn->tok == MAN_dei || |
nn->tok == MAN_am || |
nn->tok == MAN_am || |
nn->tok == MAN_ami || |
nn->tok == MAN_ami) { |
nn->tok == MAN_ig) { |
|
ntok = nn->tok; |
ntok = nn->tok; |
break; |
break; |
} |
} |
Line 314 blk_dotted(MACRO_PROT_ARGS) |
|
Line 312 blk_dotted(MACRO_PROT_ARGS) |
|
if ( ! rew_scope(MAN_BLOCK, m, ntok)) |
if ( ! rew_scope(MAN_BLOCK, m, ntok)) |
return(0); |
return(0); |
|
|
/* |
/* |
* XXX: manually adjust our next-line status. roff macros are, |
* Restore flags set when we got here and also stipulate that we |
* for the moment, ignored, so we don't want to close out bodies |
* don't post-process the line when exiting the macro op |
* and so on. |
* function in man_pmacro(). See blk_exp(). |
*/ |
*/ |
|
|
switch (m->last->type) { |
m->flags = m->svflags | MAN_ILINE; |
case (MAN_BODY): |
m->next = m->svnext; |
m->next = MAN_NEXT_CHILD; |
|
break; |
|
default: |
|
break; |
|
} |
|
|
|
return(1); |
return(1); |
} |
} |
|
|
Line 385 blk_exp(MACRO_PROT_ARGS) |
|
Line 377 blk_exp(MACRO_PROT_ARGS) |
|
return(0); |
return(0); |
if ( ! rew_scope(MAN_BLOCK, m, tok)) |
if ( ! rew_scope(MAN_BLOCK, m, tok)) |
return(0); |
return(0); |
|
} else { |
|
/* |
|
* Save our state and next-scope indicator; we restore |
|
* it when exiting from the roff instruction block. See |
|
* blk_dotted(). |
|
*/ |
|
m->svflags = m->flags; |
|
m->svnext = m->next; |
|
|
|
/* Make sure we drop any line modes. */ |
|
m->flags = 0; |
} |
} |
|
|
if ( ! man_block_alloc(m, line, ppos, tok)) |
if ( ! man_block_alloc(m, line, ppos, tok)) |