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

Diff for /mandoc/man_html.c between version 1.73 and 1.74

version 1.73, 2011/06/18 17:58:48 version 1.74, 2011/06/18 20:34:08
Line 53  struct htmlman {
Line 53  struct htmlman {
         int             (*post)(MAN_ARGS);          int             (*post)(MAN_ARGS);
 };  };
   
   static  void              print_bvspace(struct html *,
                                   const struct man_node *);
 static  void              print_man(MAN_ARGS);  static  void              print_man(MAN_ARGS);
 static  void              print_man_head(MAN_ARGS);  static  void              print_man_head(MAN_ARGS);
 static  void              print_man_nodelist(MAN_ARGS);  static  void              print_man_nodelist(MAN_ARGS);
Line 114  static const struct htmlman mans[MAN_MAX] = {
Line 116  static const struct htmlman mans[MAN_MAX] = {
         { man_ign_pre, NULL }, /* ft */          { man_ign_pre, NULL }, /* ft */
 };  };
   
   /*
    * Printing leading vertical space before a block.
    * This is used for the paragraph macros.
    * The rules are pretty simple, since there's very little nesting going
    * on here.  Basically, if we're the first within another block (SS/SH),
    * then don't emit vertical space.  If we are (RS), then do.  If not the
    * first, print it.
    */
   static void
   print_bvspace(struct html *h, const struct man_node *n)
   {
   
           if (n->body && n->body->child)
                   if (MAN_TBL == n->body->child->type)
                           return;
   
           if (MAN_ROOT == n->parent->type || MAN_RS != n->parent->tok)
                   if (NULL == n->prev)
                           return;
   
           print_otag(h, TAG_P, 0, NULL);
   }
   
 void  void
 html_man(void *arg, const struct man *m)  html_man(void *arg, const struct man *m)
 {  {
Line 513  man_PP_pre(MAN_ARGS)
Line 537  man_PP_pre(MAN_ARGS)
   
         if (MAN_HEAD == n->type)          if (MAN_HEAD == n->type)
                 return(0);                  return(0);
         else if (MAN_BODY == n->type && n->prev)          else if (MAN_BLOCK == n->type)
                 print_otag(h, TAG_P, 0, NULL);                  print_bvspace(h, n);
   
         return(1);          return(1);
 }  }
Line 562  man_IP_pre(MAN_ARGS)
Line 586  man_IP_pre(MAN_ARGS)
         }          }
   
         if (MAN_BLOCK == n->type) {          if (MAN_BLOCK == n->type) {
                 print_otag(h, TAG_P, 0, NULL);                  print_bvspace(h, n);
                 print_otag(h, TAG_TABLE, 0, NULL);                  print_otag(h, TAG_TABLE, 0, NULL);
                 bufinit(h);                  bufinit(h);
                 bufcat_su(h, "width", &su);                  bufcat_su(h, "width", &su);
Line 613  man_HP_pre(MAN_ARGS)
Line 637  man_HP_pre(MAN_ARGS)
                 print_otag(h, TAG_TD, 0, NULL);                  print_otag(h, TAG_TD, 0, NULL);
                 return(0);                  return(0);
         } else if (MAN_BLOCK == n->type) {          } else if (MAN_BLOCK == n->type) {
                 print_otag(h, TAG_P, 0, NULL);                  print_bvspace(h, n);
                 print_otag(h, TAG_TABLE, 0, NULL);                  print_otag(h, TAG_TABLE, 0, NULL);
                 bufcat_su(h, "width", &su);                  bufcat_su(h, "width", &su);
                 PAIR_STYLE_INIT(&tag, h);                  PAIR_STYLE_INIT(&tag, h);

Legend:
Removed from v.1.73  
changed lines
  Added in v.1.74

CVSweb