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

Diff for /docbook2mdoc/docbook2mdoc.c between version 1.70 and 1.71

version 1.70, 2019/03/24 21:00:11 version 1.71, 2019/03/24 23:48:58
Line 757  pnode_printpara(struct parse *p, struct pnode *pn)
Line 757  pnode_printpara(struct parse *p, struct pnode *pn)
 static void  static void
 pnode_printrefsynopsisdiv(struct parse *p, struct pnode *pn)  pnode_printrefsynopsisdiv(struct parse *p, struct pnode *pn)
 {  {
         struct pnode    *pp;          struct pnode    *pp, *pq;
   
         TAILQ_FOREACH(pp, &pn->childq, child)          TAILQ_FOREACH_SAFE(pp, &pn->childq, child, pq)
                 if (pp->node == NODE_TITLE) {                  if (pp->node == NODE_TITLE)
                         pnode_unlink(pp);                          pnode_unlink(pp);
                         return;  
                 }          macro_line(p, "Sh SYNOPSIS");
 }  }
   
 /*  /*
Line 867  pnode_printciterefentry(struct parse *p, struct pnode 
Line 867  pnode_printciterefentry(struct parse *p, struct pnode 
         else          else
                 macro_addnode(p, manvol, 0);                  macro_addnode(p, manvol, 0);
         macro_close(p);          macro_close(p);
           pnode_unlinksub(pn);
 }  }
   
 static void  static void
Line 891  pnode_printrefmeta(struct parse *p, struct pnode *pn)
Line 892  pnode_printrefmeta(struct parse *p, struct pnode *pn)
         else          else
                 macro_addnode(p, manvol, 0);                  macro_addnode(p, manvol, 0);
         macro_close(p);          macro_close(p);
           pnode_unlink(pn);
 }  }
   
 static void  static void
Line 961  pnode_printmathfenced(struct parse *p, struct pnode *p
Line 963  pnode_printmathfenced(struct parse *p, struct pnode *p
                 putchar(',');                  putchar(',');
                 pnode_print(p, pp);                  pnode_print(p, pp);
         }          }
   
         printf("right %s ", pnode_getattr_raw(pn, ATTRKEY_CLOSE, ")"));          printf("right %s ", pnode_getattr_raw(pn, ATTRKEY_CLOSE, ")"));
           pnode_unlinksub(pn);
 }  }
   
 /*  /*
Line 995  pnode_printmath(struct parse *p, struct pnode *pn)
Line 997  pnode_printmath(struct parse *p, struct pnode *pn)
   
         pp = TAILQ_NEXT(pp, child);          pp = TAILQ_NEXT(pp, child);
         pnode_print(p, pp);          pnode_print(p, pp);
           pnode_unlinksub(pn);
 }  }
   
 static void  static void
Line 1016  pnode_printfuncprototype(struct parse *p, struct pnode
Line 1019  pnode_printfuncprototype(struct parse *p, struct pnode
                         pnode_printparamdef(p, pp);                          pnode_printparamdef(p, pp);
   
         macro_line(p, "Fc");          macro_line(p, "Fc");
           pnode_unlinksub(pn);
 }  }
   
 /*  /*
Line 1051  pnode_printarg(struct parse *p, struct pnode *pn)
Line 1055  pnode_printarg(struct parse *p, struct pnode *pn)
                 if (isrep && pp->node == NODE_TEXT)                  if (isrep && pp->node == NODE_TEXT)
                         macro_addarg(p, "...", 0);                          macro_addarg(p, "...", 0);
         }          }
           pnode_unlinksub(pn);
 }  }
   
 static void  static void
Line 1101  pnode_printgroup(struct parse *p, struct pnode *pn)
Line 1106  pnode_printgroup(struct parse *p, struct pnode *pn)
         }          }
         if (sv)          if (sv)
                 macro_close(p);                  macro_close(p);
           pnode_unlinksub(pn);
 }  }
   
 static void  static void
Line 1112  pnode_printprologue(struct parse *p, struct pnode *pn)
Line 1118  pnode_printprologue(struct parse *p, struct pnode *pn)
                 pnode_findfirst(p->root, NODE_REFMETA);                  pnode_findfirst(p->root, NODE_REFMETA);
   
         macro_line(p, "Dd $Mdocdate" "$");          macro_line(p, "Dd $Mdocdate" "$");
         if (pp != NULL) {          if (pp != NULL)
                 pnode_printrefmeta(p, pp);                  pnode_printrefmeta(p, pp);
                 pnode_unlink(pp);          else {
         } else {  
                 macro_open(p, "Dt");                  macro_open(p, "Dt");
                 macro_addarg(p,                  macro_addarg(p,
                     pnode_getattr_raw(p->root, ATTRKEY_ID, "UNKNOWN"), 0);                      pnode_getattr_raw(p->root, ATTRKEY_ID, "UNKNOWN"), 0);
Line 1154  pnode_printvarlistentry(struct parse *p, struct pnode 
Line 1159  pnode_printvarlistentry(struct parse *p, struct pnode 
         TAILQ_FOREACH(pp, &pn->childq, child)          TAILQ_FOREACH(pp, &pn->childq, child)
                 if (pp->node != NODE_TERM)                  if (pp->node != NODE_TERM)
                         pnode_print(p, pp);                          pnode_print(p, pp);
           pnode_unlinksub(pn);
 }  }
   
 static void  static void
   pnode_printtitle(struct parse *p, struct pnode *pn)
   {
           struct pnode    *pp, *pq;
   
           TAILQ_FOREACH_SAFE(pp, &pn->childq, child, pq) {
                   if (pp->node == NODE_TITLE) {
                           pnode_printpara(p, pp);
                           pnode_print(p, pp);
                           pnode_unlink(pp);
                   }
           }
   }
   
   static void
 pnode_printrow(struct parse *p, struct pnode *pn)  pnode_printrow(struct parse *p, struct pnode *pn)
 {  {
         struct pnode    *pp;          struct pnode    *pp;
Line 1167  pnode_printrow(struct parse *p, struct pnode *pn)
Line 1187  pnode_printrow(struct parse *p, struct pnode *pn)
                 pnode_print(p, pp);                  pnode_print(p, pp);
         }          }
         macro_line(p, "El");          macro_line(p, "El");
           pnode_unlink(pn);
 }  }
   
 static void  static void
Line 1174  pnode_printtable(struct parse *p, struct pnode *pn)
Line 1195  pnode_printtable(struct parse *p, struct pnode *pn)
 {  {
         struct pnode    *pp;          struct pnode    *pp;
   
         TAILQ_FOREACH(pp, &pn->childq, child) {          pnode_printtitle(p, pn);
                 if (pp->node == NODE_TITLE) {  
                         pnode_printpara(p, pp);  
                         pnode_print(p, pp);  
                         pnode_unlink(pp);  
                 }  
         }  
         macro_line(p, "Bl -ohang");          macro_line(p, "Bl -ohang");
         while ((pp = pnode_findfirst(pn, NODE_ROW)) != NULL) {          while ((pp = pnode_findfirst(pn, NODE_ROW)) != NULL) {
                 macro_line(p, "It Table Row");                  macro_line(p, "It Table Row");
                 pnode_printrow(p, pp);                  pnode_printrow(p, pp);
                 pnode_unlink(pp);  
         }          }
         macro_line(p, "El");          macro_line(p, "El");
           pnode_unlinksub(pn);
 }  }
   
 static void  static void
Line 1195  pnode_printlist(struct parse *p, struct pnode *pn)
Line 1210  pnode_printlist(struct parse *p, struct pnode *pn)
 {  {
         struct pnode    *pp;          struct pnode    *pp;
   
         TAILQ_FOREACH(pp, &pn->childq, child) {          pnode_printtitle(p, pn);
                 if (pp->node == NODE_TITLE) {  
                         pnode_printpara(p, pp);  
                         pnode_print(p, pp);  
                         pnode_unlink(pp);  
                 }  
         }  
         macro_argline(p, "Bl",          macro_argline(p, "Bl",
             pn->node == NODE_ORDEREDLIST ? "-enum" : "-bullet");              pn->node == NODE_ORDEREDLIST ? "-enum" : "-bullet");
         TAILQ_FOREACH(pp, &pn->childq, child) {          TAILQ_FOREACH(pp, &pn->childq, child) {
Line 1209  pnode_printlist(struct parse *p, struct pnode *pn)
Line 1218  pnode_printlist(struct parse *p, struct pnode *pn)
                 pnode_print(p, pp);                  pnode_print(p, pp);
         }          }
         macro_line(p, "El");          macro_line(p, "El");
           pnode_unlinksub(pn);
 }  }
   
 static void  static void
Line 1216  pnode_printvariablelist(struct parse *p, struct pnode 
Line 1226  pnode_printvariablelist(struct parse *p, struct pnode 
 {  {
         struct pnode    *pp;          struct pnode    *pp;
   
         TAILQ_FOREACH(pp, &pn->childq, child) {          pnode_printtitle(p, pn);
                 if (pp->node == NODE_TITLE) {  
                         pnode_printpara(p, pp);  
                         pnode_print(p, pp);  
                         pnode_unlink(pp);  
                 }  
         }  
         macro_line(p, "Bl -tag -width Ds");          macro_line(p, "Bl -tag -width Ds");
         TAILQ_FOREACH(pp, &pn->childq, child) {          TAILQ_FOREACH(pp, &pn->childq, child) {
                 if (pp->node == NODE_VARLISTENTRY)                  if (pp->node == NODE_VARLISTENTRY)
Line 1231  pnode_printvariablelist(struct parse *p, struct pnode 
Line 1235  pnode_printvariablelist(struct parse *p, struct pnode 
                         macro_nodeline(p, "It", pp);                          macro_nodeline(p, "It", pp);
         }          }
         macro_line(p, "El");          macro_line(p, "El");
           pnode_unlinksub(pn);
 }  }
   
 /*  /*
Line 1262  pnode_print(struct parse *p, struct pnode *pn)
Line 1267  pnode_print(struct parse *p, struct pnode *pn)
                 return;                  return;
         case NODE_ARG:          case NODE_ARG:
                 pnode_printarg(p, pn);                  pnode_printarg(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_AUTHOR:          case NODE_AUTHOR:
                 macro_open(p, "An");                  macro_open(p, "An");
Line 1275  pnode_print(struct parse *p, struct pnode *pn)
Line 1279  pnode_print(struct parse *p, struct pnode *pn)
                 break;                  break;
         case NODE_CITEREFENTRY:          case NODE_CITEREFENTRY:
                 pnode_printciterefentry(p, pn);                  pnode_printciterefentry(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_CITETITLE:          case NODE_CITETITLE:
                 macro_open(p, "%T");                  macro_open(p, "%T");
Line 1311  pnode_print(struct parse *p, struct pnode *pn)
Line 1314  pnode_print(struct parse *p, struct pnode *pn)
                 break;                  break;
         case NODE_FUNCPROTOTYPE:          case NODE_FUNCPROTOTYPE:
                 pnode_printfuncprototype(p, pn);                  pnode_printfuncprototype(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_FUNCSYNOPSISINFO:          case NODE_FUNCSYNOPSISINFO:
                 macro_open(p, "Fd");                  macro_open(p, "Fd");
Line 1328  pnode_print(struct parse *p, struct pnode *pn)
Line 1330  pnode_print(struct parse *p, struct pnode *pn)
                 break;                  break;
         case NODE_ITEMIZEDLIST:          case NODE_ITEMIZEDLIST:
                 pnode_printlist(p, pn);                  pnode_printlist(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_GROUP:          case NODE_GROUP:
                 pnode_printgroup(p, pn);                  pnode_printgroup(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_KEYSYM:          case NODE_KEYSYM:
                 macro_open(p, "Sy");                  macro_open(p, "Sy");
Line 1355  pnode_print(struct parse *p, struct pnode *pn)
Line 1355  pnode_print(struct parse *p, struct pnode *pn)
                 break;                  break;
         case NODE_MML_MFENCED:          case NODE_MML_MFENCED:
                 pnode_printmathfenced(p, pn);                  pnode_printmathfenced(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_MML_MROW:          case NODE_MML_MROW:
         case NODE_MML_MI:          case NODE_MML_MI:
Line 1369  pnode_print(struct parse *p, struct pnode *pn)
Line 1368  pnode_print(struct parse *p, struct pnode *pn)
         case NODE_MML_MSUB:          case NODE_MML_MSUB:
         case NODE_MML_MSUP:          case NODE_MML_MSUP:
                 pnode_printmath(p, pn);                  pnode_printmath(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_OPTION:          case NODE_OPTION:
                 macro_open(p, "Fl");                  macro_open(p, "Fl");
                 break;                  break;
         case NODE_ORDEREDLIST:          case NODE_ORDEREDLIST:
                 pnode_printlist(p, pn);                  pnode_printlist(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_PARA:          case NODE_PARA:
                 pnode_printpara(p, pn);                  pnode_printpara(p, pn);
Line 1417  pnode_print(struct parse *p, struct pnode *pn)
Line 1414  pnode_print(struct parse *p, struct pnode *pn)
                 break;                  break;
         case NODE_REFSYNOPSISDIV:          case NODE_REFSYNOPSISDIV:
                 pnode_printrefsynopsisdiv(p, pn);                  pnode_printrefsynopsisdiv(p, pn);
                 macro_line(p, "Sh SYNOPSIS");  
                 break;                  break;
         case NODE_PREFACE:          case NODE_PREFACE:
         case NODE_SECTION:          case NODE_SECTION:
Line 1442  pnode_print(struct parse *p, struct pnode *pn)
Line 1438  pnode_print(struct parse *p, struct pnode *pn)
         case NODE_TABLE:          case NODE_TABLE:
         case NODE_INFORMALTABLE:          case NODE_INFORMALTABLE:
                 pnode_printtable(p, pn);                  pnode_printtable(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_TEXT:          case NODE_TEXT:
                 bufclear(p);                  bufclear(p);
Line 1501  pnode_print(struct parse *p, struct pnode *pn)
Line 1496  pnode_print(struct parse *p, struct pnode *pn)
                 break;                  break;
         case NODE_VARIABLELIST:          case NODE_VARIABLELIST:
                 pnode_printvariablelist(p, pn);                  pnode_printvariablelist(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_VARLISTENTRY:          case NODE_VARLISTENTRY:
                 pnode_printvarlistentry(p, pn);                  pnode_printvarlistentry(p, pn);
                 pnode_unlinksub(pn);  
                 break;                  break;
         case NODE_VARNAME:          case NODE_VARNAME:
                 macro_open(p, "Va");                  macro_open(p, "Va");

Legend:
Removed from v.1.70  
changed lines
  Added in v.1.71

CVSweb