[BACK]Return to parse.c CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / docbook2mdoc

Diff for /docbook2mdoc/parse.c between version 1.16 and 1.21

version 1.16, 2019/04/06 22:37:57 version 1.21, 2019/04/07 18:51:53
Line 101  static const struct element elements[] = {
Line 101  static const struct element elements[] = {
         { "funcsynopsis",       NODE_FUNCSYNOPSIS },          { "funcsynopsis",       NODE_FUNCSYNOPSIS },
         { "funcsynopsisinfo",   NODE_FUNCSYNOPSISINFO },          { "funcsynopsisinfo",   NODE_FUNCSYNOPSISINFO },
         { "function",           NODE_FUNCTION },          { "function",           NODE_FUNCTION },
           { "glossary",           NODE_VARIABLELIST },
           { "glossdef",           NODE_IGNORE },
           { "glossdiv",           NODE_IGNORE },
           { "glossentry",         NODE_VARLISTENTRY },
           { "glosslist",          NODE_VARIABLELIST },
         { "glossterm",          NODE_GLOSSTERM },          { "glossterm",          NODE_GLOSSTERM },
         { "group",              NODE_GROUP },          { "group",              NODE_GROUP },
         { "holder",             NODE_HOLDER },          { "holder",             NODE_HOLDER },
Line 190  static const struct element elements[] = {
Line 195  static const struct element elements[] = {
         { "title",              NODE_TITLE },          { "title",              NODE_TITLE },
         { "trademark",          NODE_IGNORE },          { "trademark",          NODE_IGNORE },
         { "type",               NODE_TYPE },          { "type",               NODE_TYPE },
         { "ulink",              NODE_ULINK },          { "ulink",              NODE_LINK },
         { "userinput",          NODE_LITERAL },          { "userinput",          NODE_LITERAL },
         { "variablelist",       NODE_VARIABLELIST },          { "variablelist",       NODE_VARIABLELIST },
         { "varlistentry",       NODE_VARLISTENTRY },          { "varlistentry",       NODE_VARLISTENTRY },
Line 456  xml_elem_start(struct parse *ps, const char *name)
Line 461  xml_elem_start(struct parse *ps, const char *name)
                 perror(NULL);                  perror(NULL);
                 exit(1);                  exit(1);
         }          }
         dat->node = elem->node;  
         dat->spc = ps->spc;          /*
            * Nodes that begin a new macro or request line or start by
            * printing text always want whitespace before themselves.
            */
   
           switch (dat->node = elem->node) {
           case NODE_AUTHORGROUP:
           case NODE_BLOCKQUOTE:
           case NODE_BOOKINFO:
           case NODE_CAUTION:
           case NODE_EDITOR:
           case NODE_ENTRY:
           case NODE_FUNCDEF:
           case NODE_FUNCPROTOTYPE:
           case NODE_INFORMALEQUATION:
           case NODE_INLINEEQUATION:
           case NODE_ITEMIZEDLIST:
           case NODE_LEGALNOTICE:
           case NODE_LITERALLAYOUT:
           case NODE_NOTE:
           case NODE_ORDEREDLIST:
           case NODE_PARA:
           case NODE_PREFACE:
           case NODE_PROGRAMLISTING:
           case NODE_REFMETA:
           case NODE_REFNAMEDIV:
           case NODE_REFSYNOPSISDIV:
           case NODE_ROW:
           case NODE_SBR:
           case NODE_SCREEN:
           case NODE_SECTION:
           case NODE_SYNOPSIS:
           case NODE_TGROUP:
           case NODE_TIP:
           case NODE_TITLE:
           case NODE_VARIABLELIST:
           case NODE_VARLISTENTRY:
           case NODE_WARNING:
                   dat->spc = 1;
                   break;
           default:
                   dat->spc = ps->spc;
                   break;
           }
         dat->parent = ps->cur;          dat->parent = ps->cur;
         TAILQ_INIT(&dat->childq);          TAILQ_INIT(&dat->childq);
         TAILQ_INIT(&dat->attrq);          TAILQ_INIT(&dat->attrq);
Line 476  xml_attrkey(struct parse *ps, const char *name)
Line 524  xml_attrkey(struct parse *ps, const char *name)
         struct pattr    *attr;          struct pattr    *attr;
         enum attrkey     key;          enum attrkey     key;
   
         if (ps->del > 0 || *name == '\0')          if (ps->del > 0 || ps->ncur == NODE_IGNORE || *name == '\0')
                 return;                  return;
         if ((key = attrkey_parse(name)) == ATTRKEY__MAX) {          if ((key = attrkey_parse(name)) == ATTRKEY__MAX) {
                 ps->attr = 0;                  ps->attr = 0;
Line 498  xml_attrval(struct parse *ps, const char *name)
Line 546  xml_attrval(struct parse *ps, const char *name)
 {  {
         struct pattr    *attr;          struct pattr    *attr;
   
         if (ps->del > 0 || ps->attr == 0)          if (ps->del > 0 || ps->ncur == NODE_IGNORE || ps->attr == 0)
                 return;                  return;
         if ((attr = TAILQ_LAST(&ps->cur->attrq, pattrq)) == NULL)          if ((attr = TAILQ_LAST(&ps->cur->attrq, pattrq)) == NULL)
                 return;                  return;

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.21

CVSweb