version 1.32, 2014/04/30 09:04:40 |
version 1.36, 2014/04/30 10:11:24 |
Line 111 static const struct node nodes[NODE__MAX] = { |
|
Line 111 static const struct node nodes[NODE__MAX] = { |
|
{ "group", NODE_IGNTEXT }, |
{ "group", NODE_IGNTEXT }, |
{ "holder", NODE_IGNTEXT }, |
{ "holder", NODE_IGNTEXT }, |
{ "info", NODE_IGNTEXT }, |
{ "info", NODE_IGNTEXT }, |
|
{ "informaltable", NODE_IGNTEXT }, |
{ "itemizedlist", NODE_IGNTEXT }, |
{ "itemizedlist", NODE_IGNTEXT }, |
{ "link", 0 }, |
{ "link", 0 }, |
{ "listitem", NODE_IGNTEXT }, |
{ "listitem", NODE_IGNTEXT }, |
Line 156 static const struct node nodes[NODE__MAX] = { |
|
Line 157 static const struct node nodes[NODE__MAX] = { |
|
{ "thead", NODE_IGNTEXT }, |
{ "thead", NODE_IGNTEXT }, |
{ "tip", NODE_IGNTEXT }, |
{ "tip", NODE_IGNTEXT }, |
{ "title", 0 }, |
{ "title", 0 }, |
|
{ "trademark", 0 }, |
{ "ulink", 0 }, |
{ "ulink", 0 }, |
{ "userinput", 0 }, |
{ "userinput", 0 }, |
{ "variablelist", NODE_IGNTEXT }, |
{ "variablelist", NODE_IGNTEXT }, |
Line 268 xml_elem_start(void *arg, const XML_Char *name, const |
|
Line 270 xml_elem_start(void *arg, const XML_Char *name, const |
|
struct pattr *pattr; |
struct pattr *pattr; |
const XML_Char **att; |
const XML_Char **att; |
|
|
if (ps->stop) |
/* FIXME: find a better way to ditch other namespaces. */ |
|
if (ps->stop || 0 == strcmp(name, "xi:include")) |
return; |
return; |
|
|
/* Close out text node, if applicable... */ |
/* Close out text node, if applicable... */ |
Line 280 xml_elem_start(void *arg, const XML_Char *name, const |
|
Line 283 xml_elem_start(void *arg, const XML_Char *name, const |
|
ps->node = ps->cur->node; |
ps->node = ps->cur->node; |
} |
} |
|
|
|
|
for (node = 0; node < NODE__MAX; node++) |
for (node = 0; node < NODE__MAX; node++) |
if (NULL == nodes[node].name) |
if (NULL == nodes[node].name) |
continue; |
continue; |
Line 388 xml_elem_end(void *arg, const XML_Char *name) |
|
Line 392 xml_elem_end(void *arg, const XML_Char *name) |
|
{ |
{ |
struct parse *ps = arg; |
struct parse *ps = arg; |
|
|
|
/* FIXME: find a better way to ditch other namespaces. */ |
if (ps->stop || NODE_ROOT == ps->node) |
if (ps->stop || NODE_ROOT == ps->node) |
return; |
return; |
|
else if (0 == strcmp(name, "xi:include")) |
|
return; |
|
|
/* Close out text node, if applicable... */ |
/* Close out text node, if applicable... */ |
if (NODE_TEXT == ps->node) { |
if (NODE_TEXT == ps->node) { |
Line 692 pnode_printciterefentry(struct parse *p, struct pnode |
|
Line 699 pnode_printciterefentry(struct parse *p, struct pnode |
|
struct pnode *pp, *title, *manvol; |
struct pnode *pp, *title, *manvol; |
|
|
title = manvol = NULL; |
title = manvol = NULL; |
assert(p->newln); |
|
TAILQ_FOREACH(pp, &pn->childq, child) |
TAILQ_FOREACH(pp, &pn->childq, child) |
if (NODE_MANVOLNUM == pp->node) |
if (NODE_MANVOLNUM == pp->node) |
manvol = pp; |
manvol = pp; |
else if (NODE_REFENTRYTITLE == pp->node) |
else if (NODE_REFENTRYTITLE == pp->node) |
title = pp; |
title = pp; |
|
|
fputs(".Xr", stdout); |
|
p->newln = 0; |
|
|
|
if (NULL != title) { |
if (NULL != title) { |
pnode_printmacrolinepart(p, title); |
pnode_printmacrolinepart(p, title); |
} else |
} else |
Line 711 pnode_printciterefentry(struct parse *p, struct pnode |
|
Line 714 pnode_printciterefentry(struct parse *p, struct pnode |
|
puts(" 1"); |
puts(" 1"); |
p->newln = 1; |
p->newln = 1; |
} else |
} else |
pnode_printmacroline(p, manvol); |
pnode_printmacrolinepart(p, manvol); |
} |
} |
|
|
static void |
static void |
Line 944 pnode_printvarlistentry(struct parse *p, struct pnode |
|
Line 947 pnode_printvarlistentry(struct parse *p, struct pnode |
|
assert(p->newln); |
assert(p->newln); |
TAILQ_FOREACH(pp, &pn->childq, child) |
TAILQ_FOREACH(pp, &pn->childq, child) |
if (NODE_TERM == pp->node) { |
if (NODE_TERM == pp->node) { |
|
assert(p->newln); |
fputs(".It", stdout); |
fputs(".It", stdout); |
p->newln = 0; |
p->newln = 0; |
pnode_print(p, pp); |
pnode_print(p, pp); |
Line 1085 pnode_print(struct parse *p, struct pnode *pn) |
|
Line 1089 pnode_print(struct parse *p, struct pnode *pn) |
|
pnode_unlinksub(pn); |
pnode_unlinksub(pn); |
break; |
break; |
case (NODE_CITEREFENTRY): |
case (NODE_CITEREFENTRY): |
assert(p->newln); |
pnode_printmopen(p); |
|
fputs("Xr", stdout); |
pnode_printciterefentry(p, pn); |
pnode_printciterefentry(p, pn); |
pnode_unlinksub(pn); |
pnode_unlinksub(pn); |
break; |
break; |
Line 1097 pnode_print(struct parse *p, struct pnode *pn) |
|
Line 1102 pnode_print(struct parse *p, struct pnode *pn) |
|
pnode_printmopen(p); |
pnode_printmopen(p); |
fputs("Nm", stdout); |
fputs("Nm", stdout); |
break; |
break; |
|
case (NODE_CONSTANT): |
|
pnode_printmopen(p); |
|
fputs("Dv", stdout); |
|
break; |
case (NODE_EMPHASIS): |
case (NODE_EMPHASIS): |
pnode_printmopen(p); |
pnode_printmopen(p); |
fputs("Em", stdout); |
fputs("Em", stdout); |
Line 1233 pnode_print(struct parse *p, struct pnode *pn) |
|
Line 1242 pnode_print(struct parse *p, struct pnode *pn) |
|
fputs("Vt", stdout); |
fputs("Vt", stdout); |
break; |
break; |
case (NODE_TABLE): |
case (NODE_TABLE): |
|
/* FALLTHROUGH */ |
|
case (NODE_INFORMALTABLE): |
assert(p->newln); |
assert(p->newln); |
pnode_printtable(p, pn); |
pnode_printtable(p, pn); |
pnode_unlinksub(pn); |
pnode_unlinksub(pn); |
Line 1303 pnode_print(struct parse *p, struct pnode *pn) |
|
Line 1314 pnode_print(struct parse *p, struct pnode *pn) |
|
switch (pn->node) { |
switch (pn->node) { |
case (NODE_APPLICATION): |
case (NODE_APPLICATION): |
case (NODE_ARG): |
case (NODE_ARG): |
|
case (NODE_CITEREFENTRY): |
case (NODE_CODE): |
case (NODE_CODE): |
case (NODE_COMMAND): |
case (NODE_COMMAND): |
|
case (NODE_CONSTANT): |
case (NODE_EMPHASIS): |
case (NODE_EMPHASIS): |
case (NODE_ENVAR): |
case (NODE_ENVAR): |
case (NODE_FILENAME): |
case (NODE_FILENAME): |