version 1.28, 2014/04/02 10:27:29 |
version 1.30, 2014/04/02 12:12:41 |
Line 88 static const char *attrvals[ATTRVAL__MAX] = { |
|
Line 88 static const char *attrvals[ATTRVAL__MAX] = { |
|
static const struct node nodes[NODE__MAX] = { |
static const struct node nodes[NODE__MAX] = { |
{ NULL, 0 }, |
{ NULL, 0 }, |
{ "acronym", 0 }, |
{ "acronym", 0 }, |
|
{ "anchor", NODE_IGNTEXT }, |
{ "application", 0 }, |
{ "application", 0 }, |
{ "arg", 0 }, |
{ "arg", 0 }, |
|
{ "caution", NODE_IGNTEXT }, |
{ "citerefentry", NODE_IGNTEXT }, |
{ "citerefentry", NODE_IGNTEXT }, |
{ "cmdsynopsis", NODE_IGNTEXT }, |
{ "cmdsynopsis", NODE_IGNTEXT }, |
{ "code", 0 }, |
{ "code", 0 }, |
Line 110 static const struct node nodes[NODE__MAX] = { |
|
Line 112 static const struct node nodes[NODE__MAX] = { |
|
{ "listitem", NODE_IGNTEXT }, |
{ "listitem", NODE_IGNTEXT }, |
{ "literal", 0 }, |
{ "literal", 0 }, |
{ "manvolnum", 0 }, |
{ "manvolnum", 0 }, |
|
{ "note", NODE_IGNTEXT }, |
{ "option", 0 }, |
{ "option", 0 }, |
{ "orderedlist", NODE_IGNTEXT }, |
{ "orderedlist", NODE_IGNTEXT }, |
{ "para", 0 }, |
{ "para", 0 }, |
Line 130 static const struct node nodes[NODE__MAX] = { |
|
Line 133 static const struct node nodes[NODE__MAX] = { |
|
{ "refpurpose", 0 }, |
{ "refpurpose", 0 }, |
{ "refsect1", NODE_IGNTEXT }, |
{ "refsect1", NODE_IGNTEXT }, |
{ "refsect2", NODE_IGNTEXT }, |
{ "refsect2", NODE_IGNTEXT }, |
|
{ "refsect3", NODE_IGNTEXT }, |
|
{ "refsection", NODE_IGNTEXT }, |
{ "refsynopsisdiv", NODE_IGNTEXT }, |
{ "refsynopsisdiv", NODE_IGNTEXT }, |
{ "replaceable", 0 }, |
{ "replaceable", 0 }, |
{ "row", NODE_IGNTEXT }, |
{ "row", NODE_IGNTEXT }, |
{ "sbr", NODE_IGNTEXT }, |
{ "sbr", NODE_IGNTEXT }, |
{ "screen", NODE_IGNTEXT }, |
{ "screen", NODE_IGNTEXT }, |
|
{ "sgmltag", 0 }, |
{ "structname", 0 }, |
{ "structname", 0 }, |
{ "synopsis", 0 }, |
{ "synopsis", 0 }, |
{ "table", NODE_IGNTEXT }, |
{ "table", NODE_IGNTEXT }, |
Line 144 static const struct node nodes[NODE__MAX] = { |
|
Line 150 static const struct node nodes[NODE__MAX] = { |
|
{ "tfoot", NODE_IGNTEXT }, |
{ "tfoot", NODE_IGNTEXT }, |
{ "tgroup", NODE_IGNTEXT }, |
{ "tgroup", NODE_IGNTEXT }, |
{ "thead", NODE_IGNTEXT }, |
{ "thead", NODE_IGNTEXT }, |
|
{ "tip", NODE_IGNTEXT }, |
{ "title", 0 }, |
{ "title", 0 }, |
{ "ulink", 0 }, |
{ "ulink", 0 }, |
{ "userinput", 0 }, |
{ "userinput", 0 }, |
{ "variablelist", NODE_IGNTEXT }, |
{ "variablelist", NODE_IGNTEXT }, |
{ "varlistentry", NODE_IGNTEXT }, |
{ "varlistentry", NODE_IGNTEXT }, |
{ "varname", 0 }, |
{ "varname", 0 }, |
|
{ "warning", NODE_IGNTEXT }, |
|
{ "wordasword", 0 }, |
}; |
}; |
|
|
static void |
static void |
Line 621 pnode_printrefsect(struct parse *p, struct pnode *pn) |
|
Line 630 pnode_printrefsect(struct parse *p, struct pnode *pn) |
|
if (NODE_TITLE == pp->node) |
if (NODE_TITLE == pp->node) |
break; |
break; |
|
|
if (NODE_REFSECT1 == pn->node) |
switch (pn->node) { |
|
case (NODE_REFSECT1): |
fputs(".Sh", stdout); |
fputs(".Sh", stdout); |
else |
break; |
|
case (NODE_REFSECT2): |
fputs(".Ss", stdout); |
fputs(".Ss", stdout); |
|
break; |
|
case (NODE_REFSECT3): |
|
puts(".Pp"); |
|
fputs(".Sy", stdout); |
|
break; |
|
case (NODE_NOTE): |
|
/* FALLTHROUGH */ |
|
case (NODE_REFSECTION): |
|
/* FALLTHROUGH */ |
|
case (NODE_TIP): |
|
/* FALLTHROUGH */ |
|
case (NODE_CAUTION): |
|
/* FALLTHROUGH */ |
|
case (NODE_WARNING): |
|
puts(".Pp"); |
|
if (NULL == pp) |
|
return; |
|
fputs(".Em", stdout); |
|
break; |
|
default: |
|
break; |
|
} |
|
|
p->newln = 0; |
p->newln = 0; |
|
|
Line 635 pnode_printrefsect(struct parse *p, struct pnode *pn) |
|
Line 668 pnode_printrefsect(struct parse *p, struct pnode *pn) |
|
pnode_printmclose(p, 1); |
pnode_printmclose(p, 1); |
pnode_unlink(pp); |
pnode_unlink(pp); |
} else { |
} else { |
puts("UNKNOWN"); |
puts(NODE_REFSECT1 == pn->node ? |
|
"UNKNOWN" : "unknown"); |
p->newln = 1; |
p->newln = 1; |
} |
} |
} |
} |
Line 1034 pnode_print(struct parse *p, struct pnode *pn) |
|
Line 1068 pnode_print(struct parse *p, struct pnode *pn) |
|
pnode_printmopen(p); |
pnode_printmopen(p); |
fputs("Nm", stdout); |
fputs("Nm", stdout); |
break; |
break; |
|
case (NODE_ANCHOR): |
|
/* Don't print anything! */ |
|
return; |
case (NODE_ARG): |
case (NODE_ARG): |
pnode_printarg(p, pn); |
pnode_printarg(p, pn); |
pnode_unlinksub(pn); |
pnode_unlinksub(pn); |
Line 1155 pnode_print(struct parse *p, struct pnode *pn) |
|
Line 1192 pnode_print(struct parse *p, struct pnode *pn) |
|
case (NODE_REFSECT1): |
case (NODE_REFSECT1): |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case (NODE_REFSECT2): |
case (NODE_REFSECT2): |
|
/* FALLTHROUGH */ |
|
case (NODE_REFSECT3): |
|
/* FALLTHROUGH */ |
|
case (NODE_REFSECTION): |
|
/* FALLTHROUGH */ |
|
case (NODE_NOTE): |
|
/* FALLTHROUGH */ |
|
case (NODE_TIP): |
|
/* FALLTHROUGH */ |
|
case (NODE_CAUTION): |
|
/* FALLTHROUGH */ |
|
case (NODE_WARNING): |
assert(p->newln); |
assert(p->newln); |
pnode_printrefsect(p, pn); |
pnode_printrefsect(p, pn); |
break; |
break; |
Line 1166 pnode_print(struct parse *p, struct pnode *pn) |
|
Line 1215 pnode_print(struct parse *p, struct pnode *pn) |
|
assert(p->newln); |
assert(p->newln); |
puts(".br"); |
puts(".br"); |
break; |
break; |
|
case (NODE_SGMLTAG): |
|
pnode_printmopen(p); |
|
fputs("Li", stdout); |
|
break; |
case (NODE_STRUCTNAME): |
case (NODE_STRUCTNAME): |
pnode_printmopen(p); |
pnode_printmopen(p); |
fputs("Vt", stdout); |
fputs("Vt", stdout); |
Line 1253 pnode_print(struct parse *p, struct pnode *pn) |
|
Line 1306 pnode_print(struct parse *p, struct pnode *pn) |
|
case (NODE_PARAMETER): |
case (NODE_PARAMETER): |
case (NODE_REPLACEABLE): |
case (NODE_REPLACEABLE): |
case (NODE_REFPURPOSE): |
case (NODE_REFPURPOSE): |
|
case (NODE_SGMLTAG): |
case (NODE_STRUCTNAME): |
case (NODE_STRUCTNAME): |
case (NODE_TEXT): |
case (NODE_TEXT): |
case (NODE_USERINPUT): |
case (NODE_USERINPUT): |
Line 1315 readfile(XML_Parser xp, int fd, |
|
Line 1369 readfile(XML_Parser xp, int fd, |
|
|
|
while ((ssz = read(fd, b, bsz)) >= 0) { |
while ((ssz = read(fd, b, bsz)) >= 0) { |
if (0 == (rc = XML_Parse(xp, b, ssz, 0 == ssz))) |
if (0 == (rc = XML_Parse(xp, b, ssz, 0 == ssz))) |
fprintf(stderr, "%s: %s\n", fn, |
fprintf(stderr, "%s:%zu:%zu: %s\n", fn, |
|
XML_GetCurrentLineNumber(xp), |
|
XML_GetCurrentColumnNumber(xp), |
XML_ErrorString |
XML_ErrorString |
(XML_GetErrorCode(xp))); |
(XML_GetErrorCode(xp))); |
else if ( ! p.stop && ssz > 0) |
else if ( ! p.stop && ssz > 0) |