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

Diff for /docbook2mdoc/docbook2mdoc.c between version 1.123 and 1.128

version 1.123, 2019/04/14 19:29:50 version 1.128, 2019/04/15 00:34:15
Line 126  pnode_printtext(struct format *f, struct pnode *n)
Line 126  pnode_printtext(struct format *f, struct pnode *n)
 }  }
   
 static void  static void
   pnode_printimagedata(struct format *f, struct pnode *n)
   {
           const char      *cp;
   
           if ((cp = pnode_getattr_raw(n, ATTRKEY_FILEREF, NULL)) == NULL)
                   cp = pnode_getattr_raw(n, ATTRKEY_ENTITYREF, NULL);
           if (cp != NULL) {
                   print_text(f, "[image:", ARG_SPACE);
                   print_text(f, cp, ARG_SPACE);
                   print_text(f, "]", 0);
           } else
                   print_text(f, "[image]", ARG_SPACE);
   }
   
   static void
 pnode_printpara(struct format *f, struct pnode *n)  pnode_printpara(struct format *f, struct pnode *n)
 {  {
         struct pnode    *np;          struct pnode    *np;
Line 140  pnode_printpara(struct format *f, struct pnode *n)
Line 155  pnode_printpara(struct format *f, struct pnode *n)
   
         switch (np->node) {          switch (np->node) {
         case NODE_ENTRY:          case NODE_ENTRY:
           case NODE_FOOTNOTE:
         case NODE_GLOSSTERM:          case NODE_GLOSSTERM:
         case NODE_LISTITEM:          case NODE_LISTITEM:
         case NODE_TERM:          case NODE_TERM:
Line 651  pnode_printlink(struct format *f, struct pnode *n)
Line 667  pnode_printlink(struct format *f, struct pnode *n)
                 if (TAILQ_FIRST(&n->childq) != NULL)                  if (TAILQ_FIRST(&n->childq) != NULL)
                         macro_addnode(f, n, ARG_SPACE | ARG_SINGLE);                          macro_addnode(f, n, ARG_SPACE | ARG_SINGLE);
                 pnode_unlinksub(n);                  pnode_unlinksub(n);
           }
   }
   
   static void
   pnode_printolink(struct format *f, struct pnode *n)
   {
           const char      *uri, *ptr, *local;
   
           uri = pnode_getattr_raw(n, ATTRKEY_TARGETDOC, NULL);
           ptr = pnode_getattr_raw(n, ATTRKEY_TARGETPTR, NULL);
           local = pnode_getattr_raw(n, ATTRKEY_LOCALINFO, NULL);
           if (uri == NULL) {
                   uri = ptr;
                   ptr = NULL;
           }
           if (uri == NULL) {
                   uri = local;
                   local = NULL;
           }
           if (uri == NULL)
                 return;                  return;
   
           macro_open(f, "Lk");
           macro_addarg(f, uri, ARG_SPACE | ARG_SINGLE);
           macro_addnode(f, n, ARG_SPACE | ARG_SINGLE);
           if (ptr != NULL || local != NULL) {
                   macro_close(f);
                   macro_open(f, "Pq");
                   if (ptr != NULL)
                           macro_addarg(f, ptr, ARG_SPACE);
                   if (local != NULL)
                           macro_addarg(f, local, ARG_SPACE);
         }          }
           pnode_unlinksub(n);
 }  }
   
 static void  static void
Line 1096  pnode_print(struct format *f, struct pnode *n)
Line 1144  pnode_print(struct format *f, struct pnode *n)
         case NODE_FILENAME:          case NODE_FILENAME:
                 macro_open(f, "Pa");                  macro_open(f, "Pa");
                 break;                  break;
           case NODE_FOOTNOTE:
                   macro_line(f, "Bo");
                   break;
         case NODE_FUNCTION:          case NODE_FUNCTION:
                 macro_open(f, "Fn");                  macro_open(f, "Fn");
                 break;                  break;
Line 1105  pnode_print(struct format *f, struct pnode *n)
Line 1156  pnode_print(struct format *f, struct pnode *n)
         case NODE_FUNCSYNOPSISINFO:          case NODE_FUNCSYNOPSISINFO:
                 macro_open(f, "Fd");                  macro_open(f, "Fd");
                 break;                  break;
           case NODE_IMAGEDATA:
                   pnode_printimagedata(f, n);
                   break;
         case NODE_INFORMALEQUATION:          case NODE_INFORMALEQUATION:
                 macro_line(f, "Bd -ragged -offset indent");                  macro_line(f, "Bd -ragged -offset indent");
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
Line 1157  pnode_print(struct format *f, struct pnode *n)
Line 1211  pnode_print(struct format *f, struct pnode *n)
         case NODE_MML_MSUP:          case NODE_MML_MSUP:
                 pnode_printmath(f, n);                  pnode_printmath(f, n);
                 break;                  break;
           case NODE_OLINK:
                   pnode_printolink(f, n);
                   break;
         case NODE_OPTION:          case NODE_OPTION:
                 if ((nc = TAILQ_FIRST(&n->childq)) != NULL &&                  if ((nc = TAILQ_FIRST(&n->childq)) != NULL &&
                     pnode_class(nc->node) < CLASS_LINE)                      pnode_class(nc->node) < CLASS_LINE)
Line 1176  pnode_print(struct format *f, struct pnode *n)
Line 1233  pnode_print(struct format *f, struct pnode *n)
                 pnode_unlinksub(n);                  pnode_unlinksub(n);
                 break;                  break;
         case NODE_QUOTE:          case NODE_QUOTE:
                 if (was_impl)                  if ((nc = TAILQ_FIRST(&n->childq)) != NULL &&
                       nc->node == NODE_FILENAME &&
                       TAILQ_NEXT(nc, child) == NULL) {
                           if (n->spc)
                                   nc->spc = 1;
                   } else if (was_impl)
                         macro_open(f, "Do");                          macro_open(f, "Do");
                 else {                  else {
                         macro_open(f, "Dq");                          macro_open(f, "Dq");
Line 1224  pnode_print(struct format *f, struct pnode *n)
Line 1286  pnode_print(struct format *f, struct pnode *n)
         case NODE_SBR:          case NODE_SBR:
                 macro_line(f, "br");                  macro_line(f, "br");
                 break;                  break;
           case NODE_SUBSCRIPT:
                   if (f->linestate == LINE_MACRO)
                           macro_addarg(f, "_", 0);
                   else
                           print_text(f, "_", 0);
                   if ((nc = TAILQ_FIRST(&n->childq)) != NULL)
                           nc->spc = 0;
                   break;
           case NODE_SUPERSCRIPT:
                   fputs("\\(ha", stdout);
                   if ((nc = TAILQ_FIRST(&n->childq)) != NULL)
                           nc->spc = 0;
                   break;
         case NODE_TEXT:          case NODE_TEXT:
         case NODE_ESCAPE:          case NODE_ESCAPE:
                 pnode_printtext(f, n);                  pnode_printtext(f, n);
Line 1266  pnode_print(struct format *f, struct pnode *n)
Line 1341  pnode_print(struct format *f, struct pnode *n)
         case NODE_TEXT:          case NODE_TEXT:
                 /* Accept more arguments to the previous macro. */                  /* Accept more arguments to the previous macro. */
                 return;                  return;
           case NODE_FOOTNOTE:
                   macro_line(f, "Bc");
                   break;
         case NODE_INFORMALEQUATION:          case NODE_INFORMALEQUATION:
                 macro_line(f, "EN");                  macro_line(f, "EN");
                 macro_line(f, "Ed");                  macro_line(f, "Ed");
Line 1309  pnode_print(struct format *f, struct pnode *n)
Line 1387  pnode_print(struct format *f, struct pnode *n)
                 fputs(" } ", stdout);                  fputs(" } ", stdout);
                 break;                  break;
         case NODE_QUOTE:          case NODE_QUOTE:
                 if (was_impl) {                  if ((nc = TAILQ_FIRST(&n->childq)) != NULL &&
                       nc->node == NODE_FILENAME &&
                       TAILQ_NEXT(nc, child) == NULL)
                           /* nothing */;
                   else if (was_impl) {
                         f->flags &= ~FMT_NOSPC;                          f->flags &= ~FMT_NOSPC;
                         macro_open(f, "Dc");                          macro_open(f, "Dc");
                 } else                  } else

Legend:
Removed from v.1.123  
changed lines
  Added in v.1.128

CVSweb