[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.320 and 1.323

version 1.320, 2015/07/17 22:38:29 version 1.323, 2015/07/25 14:23:08
Line 95  static int   termp_bx_pre(DECL_ARGS);
Line 95  static int   termp_bx_pre(DECL_ARGS);
 static  int       termp_cd_pre(DECL_ARGS);  static  int       termp_cd_pre(DECL_ARGS);
 static  int       termp_d1_pre(DECL_ARGS);  static  int       termp_d1_pre(DECL_ARGS);
 static  int       termp_eo_pre(DECL_ARGS);  static  int       termp_eo_pre(DECL_ARGS);
   static  int       termp_er_pre(DECL_ARGS);
 static  int       termp_ex_pre(DECL_ARGS);  static  int       termp_ex_pre(DECL_ARGS);
 static  int       termp_fa_pre(DECL_ARGS);  static  int       termp_fa_pre(DECL_ARGS);
 static  int       termp_fd_pre(DECL_ARGS);  static  int       termp_fd_pre(DECL_ARGS);
Line 146  static const struct termact termacts[MDOC_MAX] = {
Line 147  static const struct termact termacts[MDOC_MAX] = {
         { termp_cd_pre, NULL }, /* Cd */          { termp_cd_pre, NULL }, /* Cd */
         { termp_bold_pre, NULL }, /* Cm */          { termp_bold_pre, NULL }, /* Cm */
         { NULL, NULL }, /* Dv */          { NULL, NULL }, /* Dv */
         { NULL, NULL }, /* Er */          { termp_er_pre, NULL }, /* Er */
         { termp_tag_pre, NULL }, /* Ev */          { termp_tag_pre, NULL }, /* Ev */
         { termp_ex_pre, NULL }, /* Ex */          { termp_ex_pre, NULL }, /* Ex */
         { termp_fa_pre, NULL }, /* Fa */          { termp_fa_pre, NULL }, /* Fa */
Line 251  static const struct termact termacts[MDOC_MAX] = {
Line 252  static const struct termact termacts[MDOC_MAX] = {
         { termp_ll_pre, NULL }, /* ll */          { termp_ll_pre, NULL }, /* ll */
 };  };
   
   static  int      fn_prio;
   
 void  void
 terminal_mdoc(void *arg, const struct roff_man *mdoc)  terminal_mdoc(void *arg, const struct roff_man *mdoc)
Line 1364  termp_sh_pre(DECL_ARGS)
Line 1366  termp_sh_pre(DECL_ARGS)
                  * when the previous section was empty.                   * when the previous section was empty.
                  */                   */
                 if (n->prev == NULL ||                  if (n->prev == NULL ||
                     MDOC_Sh != n->prev->tok ||                      n->prev->tok != MDOC_Sh ||
                     (n->prev->body != NULL &&                      (n->prev->body != NULL &&
                      n->prev->body->child != NULL))                       n->prev->body->child != NULL))
                         term_vspace(p);                          term_vspace(p);
Line 1374  termp_sh_pre(DECL_ARGS)
Line 1376  termp_sh_pre(DECL_ARGS)
                 break;                  break;
         case ROFFT_BODY:          case ROFFT_BODY:
                 p->offset = term_len(p, p->defindent);                  p->offset = term_len(p, p->defindent);
                 if (SEC_AUTHORS == n->sec)                  switch (n->sec) {
                   case SEC_DESCRIPTION:
                           fn_prio = 0;
                           break;
                   case SEC_AUTHORS:
                         p->flags &= ~(TERMP_SPLIT|TERMP_NOSPLIT);                          p->flags &= ~(TERMP_SPLIT|TERMP_NOSPLIT);
                           break;
                   default:
                           break;
                   }
                 break;                  break;
         default:          default:
                 break;                  break;
Line 1471  termp_fn_pre(DECL_ARGS)
Line 1481  termp_fn_pre(DECL_ARGS)
         term_word(p, n->string);          term_word(p, n->string);
         term_fontpop(p);          term_fontpop(p);
   
           if (n->sec == SEC_DESCRIPTION) {
                   if ( ! tag_get(n->string, 0, ++fn_prio))
                           tag_put(n->string, 0, fn_prio, p->line);
           }
   
         if (pretty) {          if (pretty) {
                 term_flushln(p);                  term_flushln(p);
                 p->flags &= ~(TERMP_NOBREAK | TERMP_BRIND | TERMP_HANG);                  p->flags &= ~(TERMP_NOBREAK | TERMP_BRIND | TERMP_HANG);
Line 1823  termp_sp_pre(DECL_ARGS)
Line 1838  termp_sp_pre(DECL_ARGS)
                 break;                  break;
         default:          default:
                 len = 1;                  len = 1;
                   fn_prio = 0;
                 break;                  break;
         }          }
   
Line 2258  termp_under_pre(DECL_ARGS)
Line 2274  termp_under_pre(DECL_ARGS)
 }  }
   
 static int  static int
   termp_er_pre(DECL_ARGS)
   {
   
           if (n->sec == SEC_ERRORS &&
               (n->parent->tok == MDOC_It ||
                (n->parent->tok == MDOC_Bq &&
                 n->parent->parent->parent->tok == MDOC_It)) &&
               ! tag_get(n->child->string, 0, 1))
                   tag_put(n->child->string, 0, 1, p->line);
           return(1);
   }
   
   static int
 termp_tag_pre(DECL_ARGS)  termp_tag_pre(DECL_ARGS)
 {  {
   
Line 2268  termp_tag_pre(DECL_ARGS)
Line 2297  termp_tag_pre(DECL_ARGS)
              (n->parent->tok == MDOC_Xo &&               (n->parent->tok == MDOC_Xo &&
               n->parent->parent->prev == NULL &&                n->parent->parent->prev == NULL &&
               n->parent->parent->parent->tok == MDOC_It)) &&                n->parent->parent->parent->tok == MDOC_It)) &&
             ! tag_get(n->child->string, 0))              ! tag_get(n->child->string, 0, 1))
                 tag_put(n->child->string, 0, p->line);                  tag_put(n->child->string, 0, 1, p->line);
         return(1);          return(1);
 }  }

Legend:
Removed from v.1.320  
changed lines
  Added in v.1.323

CVSweb