[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.7 and 1.8

version 1.7, 2009/10/07 12:35:23 version 1.8, 2009/10/08 23:00:15
Line 50  static void    print_man_node(MAN_ARGS);
Line 50  static void    print_man_node(MAN_ARGS);
 static  int               a2width(const struct man_node *,  static  int               a2width(const struct man_node *,
                                 struct roffsu *);                                  struct roffsu *);
   
   static  int               man_alt_pre(MAN_ARGS);
 static  int               man_br_pre(MAN_ARGS);  static  int               man_br_pre(MAN_ARGS);
   static  int               man_ign_pre(MAN_ARGS);
   static  void              man_root_post(MAN_ARGS);
   static  int               man_root_pre(MAN_ARGS);
   static  int               man_B_pre(MAN_ARGS);
 static  int               man_HP_pre(MAN_ARGS);  static  int               man_HP_pre(MAN_ARGS);
   static  int               man_I_pre(MAN_ARGS);
 static  int               man_IP_pre(MAN_ARGS);  static  int               man_IP_pre(MAN_ARGS);
 static  int               man_PP_pre(MAN_ARGS);  static  int               man_PP_pre(MAN_ARGS);
 static  void              man_root_post(MAN_ARGS);  static  int               man_SB_pre(MAN_ARGS);
 static  int               man_root_pre(MAN_ARGS);  
 static  int               man_SH_pre(MAN_ARGS);  static  int               man_SH_pre(MAN_ARGS);
   static  int               man_SM_pre(MAN_ARGS);
 static  int               man_SS_pre(MAN_ARGS);  static  int               man_SS_pre(MAN_ARGS);
   
 #ifdef __linux__  #ifdef __linux__
Line 75  static const struct htmlman mans[MAN_MAX] = {
Line 81  static const struct htmlman mans[MAN_MAX] = {
         { man_PP_pre, NULL }, /* P */          { man_PP_pre, NULL }, /* P */
         { man_IP_pre, NULL }, /* IP */          { man_IP_pre, NULL }, /* IP */
         { man_HP_pre, NULL }, /* HP */          { man_HP_pre, NULL }, /* HP */
         { NULL, NULL }, /* SM */          { man_SM_pre, NULL }, /* SM */
         { NULL, NULL }, /* SB */          { man_SB_pre, NULL }, /* SB */
         { NULL, NULL }, /* BI */          { man_alt_pre, NULL }, /* BI */
         { NULL, NULL }, /* IB */          { man_alt_pre, NULL }, /* IB */
         { NULL, NULL }, /* BR */          { man_alt_pre, NULL }, /* BR */
         { NULL, NULL }, /* RB */          { man_alt_pre, NULL }, /* RB */
         { NULL, NULL }, /* R */          { NULL, NULL }, /* R */
         { NULL, NULL }, /* B */          { man_B_pre, NULL }, /* B */
         { NULL, NULL }, /* I */          { man_I_pre, NULL }, /* I */
         { NULL, NULL }, /* IR */          { man_alt_pre, NULL }, /* IR */
         { NULL, NULL }, /* RI */          { man_alt_pre, NULL }, /* RI */
         { NULL, NULL }, /* na */          { NULL, NULL }, /* na */
         { NULL, NULL }, /* i */          { NULL, NULL }, /* i */
         { man_br_pre, NULL }, /* sp */          { man_br_pre, NULL }, /* sp */
Line 94  static const struct htmlman mans[MAN_MAX] = {
Line 100  static const struct htmlman mans[MAN_MAX] = {
         { NULL, NULL }, /* r */          { NULL, NULL }, /* r */
         { NULL, NULL }, /* RE */          { NULL, NULL }, /* RE */
         { NULL, NULL }, /* RS */          { NULL, NULL }, /* RS */
         { NULL, NULL }, /* DT */          { man_ign_pre, NULL }, /* DT */
         { NULL, NULL }, /* UC */          { man_ign_pre, NULL }, /* UC */
 };  };
   
   
Line 370  man_SH_pre(MAN_ARGS)
Line 376  man_SH_pre(MAN_ARGS)
   
 /* ARGSUSED */  /* ARGSUSED */
 static int  static int
   man_alt_pre(MAN_ARGS)
   {
           const struct man_node   *nn;
           struct tag              *t;
           int                      i;
           struct htmlpair          tagi, tagb, *tagp;
   
           PAIR_CLASS_INIT(&tagi, "italic");
           PAIR_CLASS_INIT(&tagb, "bold");
   
           for (i = 0, nn = n->child; nn; nn = nn->next, i++) {
                   switch (n->tok) {
                   case (MAN_BI):
                           tagp = i % 2 ? &tagi : &tagb;
                           break;
                   case (MAN_IB):
                           tagp = i % 2 ? &tagb : &tagi;
                           break;
                   case (MAN_RI):
                           tagp = i % 2 ? &tagi : NULL;
                           break;
                   case (MAN_IR):
                           tagp = i % 2 ? NULL : &tagi;
                           break;
                   case (MAN_BR):
                           tagp = i % 2 ? NULL : &tagb;
                           break;
                   case (MAN_RB):
                           tagp = i % 2 ? &tagb : NULL;
                           break;
                   default:
                           abort();
                           /* NOTREACHED */
                   }
   
                   if (i)
                           h->flags |= HTML_NOSPACE;
   
                   if (tagp) {
                           t = print_otag(h, TAG_SPAN, 1, tagp);
                           print_man_node(m, nn, h);
                           print_tagq(h, t);
                   } else
                           print_man_node(m, nn, h);
           }
   
           return(0);
   }
   
   
   /* ARGSUSED */
   static int
   man_SB_pre(MAN_ARGS)
   {
           struct htmlpair  tag;
   
           PAIR_CLASS_INIT(&tag, "small bold");
           print_otag(h, TAG_SPAN, 1, &tag);
           return(1);
   }
   
   
   /* ARGSUSED */
   static int
   man_SM_pre(MAN_ARGS)
   {
           struct htmlpair  tag;
   
           PAIR_CLASS_INIT(&tag, "small");
           print_otag(h, TAG_SPAN, 1, &tag);
           return(1);
   }
   
   
   /* ARGSUSED */
   static int
 man_SS_pre(MAN_ARGS)  man_SS_pre(MAN_ARGS)
 {  {
         struct htmlpair  tag[3];          struct htmlpair  tag[3];
Line 554  man_HP_pre(MAN_ARGS)
Line 636  man_HP_pre(MAN_ARGS)
         return(1);          return(1);
 }  }
   
   
   /* ARGSUSED */
   static int
   man_B_pre(MAN_ARGS)
   {
           struct htmlpair  tag;
   
           PAIR_CLASS_INIT(&tag, "bold");
           print_otag(h, TAG_SPAN, 1, &tag);
           return(1);
   }
   
   
   /* ARGSUSED */
   static int
   man_I_pre(MAN_ARGS)
   {
           struct htmlpair  tag;
   
           PAIR_CLASS_INIT(&tag, "italic");
           print_otag(h, TAG_SPAN, 1, &tag);
           return(1);
   }
   
   
   /* ARGSUSED */
   static int
   man_ign_pre(MAN_ARGS)
   {
   
           return(0);
   }

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

CVSweb