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

Diff for /mandoc/man_term.c between version 1.190 and 1.195

version 1.190, 2017/02/11 21:49:50 version 1.195, 2017/05/05 02:06:19
Line 80  static int    pre_SS(DECL_ARGS);
Line 80  static int    pre_SS(DECL_ARGS);
 static  int               pre_TP(DECL_ARGS);  static  int               pre_TP(DECL_ARGS);
 static  int               pre_UR(DECL_ARGS);  static  int               pre_UR(DECL_ARGS);
 static  int               pre_alternate(DECL_ARGS);  static  int               pre_alternate(DECL_ARGS);
 static  int               pre_ft(DECL_ARGS);  
 static  int               pre_ign(DECL_ARGS);  static  int               pre_ign(DECL_ARGS);
 static  int               pre_in(DECL_ARGS);  static  int               pre_in(DECL_ARGS);
 static  int               pre_literal(DECL_ARGS);  static  int               pre_literal(DECL_ARGS);
Line 95  static void    post_SS(DECL_ARGS);
Line 94  static void    post_SS(DECL_ARGS);
 static  void              post_TP(DECL_ARGS);  static  void              post_TP(DECL_ARGS);
 static  void              post_UR(DECL_ARGS);  static  void              post_UR(DECL_ARGS);
   
 static  const struct termact termacts[MAN_MAX] = {  static  const struct termact __termacts[MAN_MAX - MAN_TH] = {
         { pre_sp, NULL, MAN_NOTEXT }, /* br */  
         { NULL, NULL, 0 }, /* TH */          { NULL, NULL, 0 }, /* TH */
         { pre_SH, post_SH, 0 }, /* SH */          { pre_SH, post_SH, 0 }, /* SH */
         { pre_SS, post_SS, 0 }, /* SS */          { pre_SS, post_SS, 0 }, /* SS */
Line 127  static const struct termact termacts[MAN_MAX] = {
Line 125  static const struct termact termacts[MAN_MAX] = {
         { pre_PD, NULL, MAN_NOTEXT }, /* PD */          { pre_PD, NULL, MAN_NOTEXT }, /* PD */
         { pre_ign, NULL, 0 }, /* AT */          { pre_ign, NULL, 0 }, /* AT */
         { pre_in, NULL, MAN_NOTEXT }, /* in */          { pre_in, NULL, MAN_NOTEXT }, /* in */
         { pre_ft, NULL, MAN_NOTEXT }, /* ft */  
         { pre_OP, NULL, 0 }, /* OP */          { pre_OP, NULL, 0 }, /* OP */
         { pre_literal, NULL, 0 }, /* EX */          { pre_literal, NULL, 0 }, /* EX */
         { pre_literal, NULL, 0 }, /* EE */          { pre_literal, NULL, 0 }, /* EE */
Line 135  static const struct termact termacts[MAN_MAX] = {
Line 132  static const struct termact termacts[MAN_MAX] = {
         { NULL, NULL, 0 }, /* UE */          { NULL, NULL, 0 }, /* UE */
         { pre_ll, NULL, MAN_NOTEXT }, /* ll */          { pre_ll, NULL, MAN_NOTEXT }, /* ll */
 };  };
   static  const struct termact *termacts = __termacts - MAN_TH;
   
   
 void  void
Line 362  pre_OP(DECL_ARGS)
Line 360  pre_OP(DECL_ARGS)
 }  }
   
 static int  static int
 pre_ft(DECL_ARGS)  
 {  
         const char      *cp;  
   
         if (NULL == n->child) {  
                 term_fontlast(p);  
                 return 0;  
         }  
   
         cp = n->child->string;  
         switch (*cp) {  
         case '4':  
         case '3':  
         case 'B':  
                 term_fontrepl(p, TERMFONT_BOLD);  
                 break;  
         case '2':  
         case 'I':  
                 term_fontrepl(p, TERMFONT_UNDER);  
                 break;  
         case 'P':  
                 term_fontlast(p);  
                 break;  
         case '1':  
         case 'C':  
         case 'R':  
                 term_fontrepl(p, TERMFONT_NONE);  
                 break;  
         default:  
                 break;  
         }  
         return 0;  
 }  
   
 static int  
 pre_in(DECL_ARGS)  pre_in(DECL_ARGS)
 {  {
         struct roffsu    su;          struct roffsu    su;
Line 457  pre_sp(DECL_ARGS)
Line 420  pre_sp(DECL_ARGS)
                 }                  }
         }          }
   
         if (n->tok == MAN_br)          if (n->child == NULL)
                 len = 0;  
         else if (n->child == NULL)  
                 len = 1;                  len = 1;
         else {          else {
                 if ( ! a2roffsu(n->child->string, &su, SCALE_VS))                  if ( ! a2roffsu(n->child->string, &su, SCALE_VS))
Line 822  pre_SH(DECL_ARGS)
Line 783  pre_SH(DECL_ARGS)
   
                 do {                  do {
                         n = n->prev;                          n = n->prev;
                 } while (n != NULL && n->tok < MAN_MAX &&                  } while (n != NULL && n->tok != TOKEN_NONE &&
                     termacts[n->tok].flags & MAN_NOTEXT);                      termacts[n->tok].flags & MAN_NOTEXT);
                 if (n == NULL || (n->tok == MAN_SH && n->body->child == NULL))                  if (n == NULL || (n->tok == MAN_SH && n->body->child == NULL))
                         break;                          break;
Line 986  print_man_node(DECL_ARGS)
Line 947  print_man_node(DECL_ARGS)
                 break;                  break;
         }          }
   
           if (n->tok < ROFF_MAX) {
                   roff_term_pre(p, n);
                   return;
           }
   
           assert(n->tok >= MAN_TH && n->tok <= MAN_MAX);
         if ( ! (MAN_NOTEXT & termacts[n->tok].flags))          if ( ! (MAN_NOTEXT & termacts[n->tok].flags))
                 term_fontrepl(p, TERMFONT_NONE);                  term_fontrepl(p, TERMFONT_NONE);
   

Legend:
Removed from v.1.190  
changed lines
  Added in v.1.195

CVSweb