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

Diff for /docbook2mdoc/docbook2mdoc.c between version 1.109 and 1.111

version 1.109, 2019/04/12 10:34:48 version 1.111, 2019/04/12 11:37:09
Line 150  pnode_printpara(struct format *f, struct pnode *n)
Line 150  pnode_printpara(struct format *f, struct pnode *n)
         macro_line(f, "Pp");          macro_line(f, "Pp");
 }  }
   
   static void
   pnode_printrefnamediv(struct format *f, struct pnode *n)
   {
           struct pnode    *nc, *nn;
           int              comma;
   
           macro_line(f, "Sh NAME");
           comma = 0;
           TAILQ_FOREACH_SAFE(nc, &n->childq, child, nn) {
                   if (nc->node != NODE_REFNAME)
                           continue;
                   if (comma)
                           macro_addarg(f, ",", ARG_SPACE);
                   macro_open(f, "Nm");
                   macro_addnode(f, nc, ARG_SPACE);
                   pnode_unlink(nc);
                   comma = 1;
           }
           macro_close(f);
   }
   
 /*  /*
  * If the SYNOPSIS macro has a superfluous title, kill it.   * If the SYNOPSIS macro has a superfluous title, kill it.
  */   */
Line 636  pnode_printprologue(struct format *f, struct ptree *tr
Line 657  pnode_printprologue(struct format *f, struct ptree *tr
         } else          } else
                 pnode_printrefmeta(f, refmeta);                  pnode_printrefmeta(f, refmeta);
         macro_line(f, "Os");          macro_line(f, "Os");
   
         if (tree->flags & TREE_EQN) {  
                 macro_line(f, "EQ");  
                 print_text(f, "delim $$", 0);  
                 macro_line(f, "EN");  
         }  
 }  }
   
 /*  /*
Line 889  pnode_print(struct format *f, struct pnode *n)
Line 904  pnode_print(struct format *f, struct pnode *n)
                 macro_open(f, "Fd");                  macro_open(f, "Fd");
                 break;                  break;
         case NODE_INFORMALEQUATION:          case NODE_INFORMALEQUATION:
                   macro_line(f, "Bd -ragged -offset indent");
                   /* FALLTHROUGH */
           case NODE_INLINEEQUATION:
                 macro_line(f, "EQ");                  macro_line(f, "EQ");
                 break;                  break;
         case NODE_INLINEEQUATION:  
                 if (f->linestate == LINE_NEW)  
                         f->linestate = LINE_TEXT;  
                 putchar('$');  
                 break;  
         case NODE_ITEMIZEDLIST:          case NODE_ITEMIZEDLIST:
                 pnode_printlist(f, n);                  pnode_printlist(f, n);
                 break;                  break;
Line 964  pnode_print(struct format *f, struct pnode *n)
Line 977  pnode_print(struct format *f, struct pnode *n)
                 pnode_unlinksub(n);                  pnode_unlinksub(n);
                 break;                  break;
         case NODE_REFNAME:          case NODE_REFNAME:
                 /* Suppress non-text children... */                  /* More often, these appear inside NODE_REFNAMEDIV. */
                 macro_open(f, "Nm");                  macro_open(f, "Nm");
                 macro_addnode(f, n, ARG_SPACE | ARG_SINGLE);  
                 pnode_unlinksub(n);  
                 break;                  break;
         case NODE_REFNAMEDIV:          case NODE_REFNAMEDIV:
                 macro_line(f, "Sh NAME");                  pnode_printrefnamediv(f, n);
                 break;                  break;
         case NODE_REFPURPOSE:          case NODE_REFPURPOSE:
                 macro_open(f, "Nd");                  macro_open(f, "Nd");
Line 1035  pnode_print(struct format *f, struct pnode *n)
Line 1046  pnode_print(struct format *f, struct pnode *n)
                 return;                  return;
         case NODE_INFORMALEQUATION:          case NODE_INFORMALEQUATION:
                 macro_line(f, "EN");                  macro_line(f, "EN");
                   macro_line(f, "Ed");
                 break;                  break;
         case NODE_INLINEEQUATION:          case NODE_INLINEEQUATION:
                 fputs("$ ", stdout);                  macro_line(f, "EN");
                 f->linestate = sv;  
                 break;                  break;
         case NODE_MEMBER:          case NODE_MEMBER:
                 if ((nn = TAILQ_NEXT(n, child)) != NULL &&                  if ((nn = TAILQ_NEXT(n, child)) != NULL &&
Line 1071  pnode_print(struct format *f, struct pnode *n)
Line 1082  pnode_print(struct format *f, struct pnode *n)
                         macro_close(f);                          macro_close(f);
                 sv = f->linestate;                  sv = f->linestate;
                 macro_open(f, "Qc");                  macro_open(f, "Qc");
                 if (sv == LINE_NEW)  
                         macro_close(f);  
                 break;  
         case NODE_REFNAME:  
                 /*  
                  * If we're in the NAME macro and we have multiple  
                  * <refname> macros in sequence, then print out a  
                  * trailing comma before the newline.  
                  */  
                 if (n->parent != NULL &&  
                     n->parent->node == NODE_REFNAMEDIV &&  
                     TAILQ_NEXT(n, child) != NULL &&  
                     TAILQ_NEXT(n, child)->node == NODE_REFNAME)  
                         macro_addarg(f, ",", ARG_SPACE);  
                 if (sv == LINE_NEW)                  if (sv == LINE_NEW)
                         macro_close(f);                          macro_close(f);
                 break;                  break;

Legend:
Removed from v.1.109  
changed lines
  Added in v.1.111

CVSweb