=================================================================== RCS file: /cvs/docbook2mdoc/parse.c,v retrieving revision 1.45 retrieving revision 1.48 diff -u -p -r1.45 -r1.48 --- docbook2mdoc/parse.c 2019/04/16 14:58:19 1.45 +++ docbook2mdoc/parse.c 2019/04/21 14:48:11 1.48 @@ -1,4 +1,4 @@ -/* $Id: parse.c,v 1.45 2019/04/16 14:58:19 schwarze Exp $ */ +/* $Id: parse.c,v 1.48 2019/04/21 14:48:11 schwarze Exp $ */ /* * Copyright (c) 2014 Kristaps Dzonsons * Copyright (c) 2019 Ingo Schwarze @@ -112,12 +112,15 @@ static const struct alias aliases[] = { { "secondary", NODE_DELETE }, { "sect1", NODE_SECTION }, { "sect2", NODE_SECTION }, + { "sect3", NODE_SECTION }, + { "sect4", NODE_SECTION }, { "sgmltag", NODE_MARKUP }, { "simpara", NODE_PARA }, { "structfield", NODE_PARAMETER }, { "structname", NODE_TYPE }, { "surname", NODE_PERSONNAME }, { "symbol", NODE_CONSTANT }, + { "tag", NODE_MARKUP }, { "trademark", NODE_IGNORE }, { "ulink", NODE_LINK }, { "userinput", NODE_LITERAL }, @@ -517,6 +520,7 @@ xml_elem_start(struct parse *p, const char *name) case NODE_DOCTYPE: case NODE_ENTITY: case NODE_SBR: + case NODE_VOID: p->flags |= PFLAG_EEND; break; default: @@ -551,7 +555,7 @@ xml_attrkey(struct parse *p, const char *name) const char *value; enum attrkey key; - if (p->del > 0 || p->ncur == NODE_IGNORE || *name == '\0') + if (p->del > 0 || p->ncur >= NODE_UNKNOWN || *name == '\0') return; if ((p->ncur == NODE_DOCTYPE || p->ncur == NODE_ENTITY) && @@ -588,7 +592,7 @@ xml_attrval(struct parse *p, const char *name) { struct pattr *a; - if (p->del > 0 || p->ncur == NODE_IGNORE || + if (p->del > 0 || p->ncur >= NODE_UNKNOWN || (p->flags & PFLAG_ATTR) == 0) return; if ((a = TAILQ_LAST(&p->cur->attrq, pattrq)) == NULL) @@ -647,6 +651,7 @@ xml_elem_end(struct parse *p, const char *name) break; case NODE_DOCTYPE: case NODE_SBR: + case NODE_VOID: p->flags &= ~PFLAG_EEND; /* FALLTHROUGH */ default: