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

Diff for /mandoc/mdoc_term.c between version 1.72 and 1.83

version 1.72, 2009/09/20 11:05:22 version 1.83, 2009/09/24 15:01:06
Line 113  static int   termp_bd_pre(DECL_ARGS);
Line 113  static int   termp_bd_pre(DECL_ARGS);
 static  int       termp_bf_pre(DECL_ARGS);  static  int       termp_bf_pre(DECL_ARGS);
 static  int       termp_bold_pre(DECL_ARGS);  static  int       termp_bold_pre(DECL_ARGS);
 static  int       termp_bq_pre(DECL_ARGS);  static  int       termp_bq_pre(DECL_ARGS);
 static  int       termp_br_pre(DECL_ARGS);  
 static  int       termp_brq_pre(DECL_ARGS);  static  int       termp_brq_pre(DECL_ARGS);
 static  int       termp_bt_pre(DECL_ARGS);  static  int       termp_bt_pre(DECL_ARGS);
 static  int       termp_cd_pre(DECL_ARGS);  static  int       termp_cd_pre(DECL_ARGS);
Line 133  static int   termp_nm_pre(DECL_ARGS);
Line 132  static int   termp_nm_pre(DECL_ARGS);
 static  int       termp_ns_pre(DECL_ARGS);  static  int       termp_ns_pre(DECL_ARGS);
 static  int       termp_op_pre(DECL_ARGS);  static  int       termp_op_pre(DECL_ARGS);
 static  int       termp_pf_pre(DECL_ARGS);  static  int       termp_pf_pre(DECL_ARGS);
 static  int       termp_pp_pre(DECL_ARGS);  
 static  int       termp_pq_pre(DECL_ARGS);  static  int       termp_pq_pre(DECL_ARGS);
 static  int       termp_qq_pre(DECL_ARGS);  static  int       termp_qq_pre(DECL_ARGS);
 static  int       termp_rs_pre(DECL_ARGS);  static  int       termp_rs_pre(DECL_ARGS);
Line 155  static const struct termact termacts[MDOC_MAX] = {
Line 153  static const struct termact termacts[MDOC_MAX] = {
         { NULL, NULL }, /* Os */          { NULL, NULL }, /* Os */
         { termp_sh_pre, termp_sh_post }, /* Sh */          { termp_sh_pre, termp_sh_post }, /* Sh */
         { termp_ss_pre, termp_ss_post }, /* Ss */          { termp_ss_pre, termp_ss_post }, /* Ss */
         { termp_pp_pre, NULL }, /* Pp */          { termp_sp_pre, NULL }, /* Pp */
         { termp_d1_pre, termp_d1_post }, /* D1 */          { termp_d1_pre, termp_d1_post }, /* D1 */
         { termp_d1_pre, termp_d1_post }, /* Dl */          { termp_d1_pre, termp_d1_post }, /* Dl */
         { termp_bd_pre, termp_bd_post }, /* Bd */          { termp_bd_pre, termp_bd_post }, /* Bd */
Line 220  static const struct termact termacts[MDOC_MAX] = {
Line 218  static const struct termact termacts[MDOC_MAX] = {
         { termp_under_pre, NULL }, /* Em */          { termp_under_pre, NULL }, /* Em */
         { NULL, NULL }, /* Eo */          { NULL, NULL }, /* Eo */
         { termp_xx_pre, NULL }, /* Fx */          { termp_xx_pre, NULL }, /* Fx */
         { termp_bold_pre, NULL }, /* Ms */          { termp_bold_pre, NULL }, /* Ms */ /* FIXME: convert to symbol? */
         { NULL, NULL }, /* No */          { NULL, NULL }, /* No */
         { termp_ns_pre, NULL }, /* Ns */          { termp_ns_pre, NULL }, /* Ns */
         { termp_xx_pre, NULL }, /* Nx */          { termp_xx_pre, NULL }, /* Nx */
Line 256  static const struct termact termacts[MDOC_MAX] = {
Line 254  static const struct termact termacts[MDOC_MAX] = {
         { NULL, NULL }, /* Fr */          { NULL, NULL }, /* Fr */
         { termp_ud_pre, NULL }, /* Ud */          { termp_ud_pre, NULL }, /* Ud */
         { NULL, termp_lb_post }, /* Lb */          { NULL, termp_lb_post }, /* Lb */
         { termp_pp_pre, NULL }, /* Lp */          { termp_sp_pre, NULL }, /* Lp */
         { termp_lk_pre, NULL }, /* Lk */          { termp_lk_pre, NULL }, /* Lk */
         { termp_under_pre, NULL }, /* Mt */          { termp_under_pre, NULL }, /* Mt */
         { termp_brq_pre, termp_brq_post }, /* Brq */          { termp_brq_pre, termp_brq_post }, /* Brq */
         { termp_brq_pre, termp_brq_post }, /* Bro */          { termp_brq_pre, termp_brq_post }, /* Bro */
         { NULL, NULL }, /* Brc */          { NULL, NULL }, /* Brc */
         { NULL, NULL }, /* %C */          { NULL, termp____post }, /* %C */
         { NULL, NULL }, /* Es */          { NULL, NULL }, /* Es */ /* TODO */
         { NULL, NULL }, /* En */          { NULL, NULL }, /* En */ /* TODO */
         { termp_xx_pre, NULL }, /* Dx */          { termp_xx_pre, NULL }, /* Dx */
         { NULL, NULL }, /* %Q */          { NULL, termp____post }, /* %Q */
         { termp_br_pre, NULL }, /* br */          { termp_sp_pre, NULL }, /* br */
         { termp_sp_pre, NULL }, /* sp */          { termp_sp_pre, NULL }, /* sp */
 };  };
   
Line 424  print_foot(DECL_ARGS)
Line 422  print_foot(DECL_ARGS)
 }  }
   
   
   /* FIXME: put in utility library. */
 /* ARGSUSED */  /* ARGSUSED */
 static void  static void
 print_head(DECL_ARGS)  print_head(DECL_ARGS)
Line 520  arg_width(const struct mdoc_argv *arg, int pos)
Line 519  arg_width(const struct mdoc_argv *arg, int pos)
 }  }
   
   
   /* FIXME: put in utility file for front-ends. */
 static int  static int
 arg_listtype(const struct mdoc_node *n)  arg_listtype(const struct mdoc_node *n)
 {  {
Line 761  termp_it_pre(DECL_ARGS)
Line 761  termp_it_pre(DECL_ARGS)
                  * the 0 will be adjusted to default 10 or, if in the                   * the 0 will be adjusted to default 10 or, if in the
                  * last column case, set to stretch to the margin).                   * last column case, set to stretch to the margin).
                  */                   */
                 for (i = 0, n = node->prev; n && n &&                  for (i = 0, n = node->prev; n &&
                                 i < (int)bl->args[vals[2]].argv->sz;                                  i < (int)bl->args->argv[vals[2]].sz;
                                 n = n->prev, i++)                                  n = n->prev, i++)
                         offset += arg_width                          offset += arg_width
                                 (&bl->args->argv[vals[2]], i);                                  (&bl->args->argv[vals[2]], i);
   
                 /* Whether exceeds maximum column. */                  /* Whether exceeds maximum column. */
                 if (i < (int)bl->args[vals[2]].argv->sz)                  if (i < (int)bl->args->argv[vals[2]].sz)
                         width = arg_width(&bl->args->argv[vals[2]], i);                          width = arg_width(&bl->args->argv[vals[2]], i);
                 else                  else
                         width = 0;                          width = 0;
Line 1161  termp_ns_pre(DECL_ARGS)
Line 1161  termp_ns_pre(DECL_ARGS)
   
 /* ARGSUSED */  /* ARGSUSED */
 static int  static int
 termp_pp_pre(DECL_ARGS)  
 {  
   
         term_vspace(p);  
         return(1);  
 }  
   
   
 /* ARGSUSED */  
 static int  
 termp_rs_pre(DECL_ARGS)  termp_rs_pre(DECL_ARGS)
 {  {
   
           if (SEC_SEE_ALSO != node->sec)
                   return(1);
         if (MDOC_BLOCK == node->type && node->prev)          if (MDOC_BLOCK == node->type && node->prev)
                 term_vspace(p);                  term_vspace(p);
         return(1);          return(1);
Line 1425  termp_bt_pre(DECL_ARGS)
Line 1417  termp_bt_pre(DECL_ARGS)
 {  {
   
         term_word(p, "is currently in beta test.");          term_word(p, "is currently in beta test.");
         return(1);          return(0);
 }  }
   
   
Line 1434  static void
Line 1426  static void
 termp_lb_post(DECL_ARGS)  termp_lb_post(DECL_ARGS)
 {  {
   
         term_newln(p);          if (SEC_LIBRARY == node->sec)
                   term_newln(p);
 }  }
   
   
Line 1526  termp_fn_pre(DECL_ARGS)
Line 1519  termp_fn_pre(DECL_ARGS)
 {  {
         const struct mdoc_node *n;          const struct mdoc_node *n;
   
         assert(node->child && MDOC_TEXT == node->child->type);  
   
         /* FIXME: can be "type funcname" "type varname"... */  
   
         p->bold++;          p->bold++;
         term_word(p, node->child->string);          term_word(p, node->child->string);
         p->bold--;          p->bold--;
Line 1852  termp_in_post(DECL_ARGS)
Line 1841  termp_in_post(DECL_ARGS)
 {  {
   
         p->bold++;          p->bold++;
           p->flags |= TERMP_NOSPACE;
         term_word(p, ">");          term_word(p, ">");
         p->bold--;          p->bold--;
   
Line 1876  termp_sp_pre(DECL_ARGS)
Line 1866  termp_sp_pre(DECL_ARGS)
 {  {
         int              i, len;          int              i, len;
   
         if (NULL == node->child) {          switch (node->tok) {
                 term_vspace(p);          case (MDOC_sp):
                 return(0);                  len = node->child ? atoi(node->child->string) : 1;
                   break;
           case (MDOC_br):
                   len = 0;
                   break;
           default:
                   len = 1;
                   break;
         }          }
   
         len = atoi(node->child->string);  
         if (0 == len)          if (0 == len)
                 term_newln(p);                  term_newln(p);
         for (i = 0; i < len; i++)          for (i = 0; i < len; i++)
Line 1893  termp_sp_pre(DECL_ARGS)
Line 1889  termp_sp_pre(DECL_ARGS)
   
 /* ARGSUSED */  /* ARGSUSED */
 static int  static int
 termp_br_pre(DECL_ARGS)  
 {  
   
         term_newln(p);  
         return(1);  
 }  
   
   
 /* ARGSUSED */  
 static int  
 termp_brq_pre(DECL_ARGS)  termp_brq_pre(DECL_ARGS)
 {  {
   
Line 2120  termp_under_pre(DECL_ARGS)
Line 2106  termp_under_pre(DECL_ARGS)
         p->under++;          p->under++;
         return(1);          return(1);
 }  }
   

Legend:
Removed from v.1.72  
changed lines
  Added in v.1.83

CVSweb