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

Diff for /docbook2mdoc/docbook2mdoc.c between version 1.126 and 1.129

version 1.126, 2019/04/14 22:37:56 version 1.129, 2019/04/15 19:15:19
Line 625  pnode_printauthor(struct format *f, struct pnode *n)
Line 625  pnode_printauthor(struct format *f, struct pnode *n)
 }  }
   
 static void  static void
   pnode_printxref(struct format *f, struct pnode *n)
   {
           const char      *linkend;
   
           linkend = pnode_getattr_raw(n, ATTRKEY_LINKEND, NULL);
           if (linkend != NULL) {
                   macro_open(f, "Sx");
                   macro_addarg(f, linkend, ARG_SPACE);
           }
   }
   
   static void
 pnode_printlink(struct format *f, struct pnode *n)  pnode_printlink(struct format *f, struct pnode *n)
 {  {
         struct pnode    *nc;          struct pnode    *nc;
Line 667  pnode_printlink(struct format *f, struct pnode *n)
Line 679  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 1179  pnode_print(struct format *f, struct pnode *n)
Line 1223  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 1198  pnode_print(struct format *f, struct pnode *n)
Line 1245  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 1281  pnode_print(struct format *f, struct pnode *n)
Line 1333  pnode_print(struct format *f, struct pnode *n)
         case NODE_VARNAME:          case NODE_VARNAME:
                 macro_open(f, "Va");                  macro_open(f, "Va");
                 break;                  break;
           case NODE_XREF:
                   pnode_printxref(f, n);
                   break;
         default:          default:
                 break;                  break;
         }          }
Line 1347  pnode_print(struct format *f, struct pnode *n)
Line 1402  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.126  
changed lines
  Added in v.1.129

CVSweb