[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.110 and 1.115

version 1.110, 2011/06/18 17:36:52 version 1.115, 2011/07/22 10:50:46
Line 181  a2height(const struct termp *p, const char *cp)
Line 181  a2height(const struct termp *p, const char *cp)
         struct roffsu    su;          struct roffsu    su;
   
         if ( ! a2roffsu(cp, &su, SCALE_VS))          if ( ! a2roffsu(cp, &su, SCALE_VS))
                 SCALE_VS_INIT(&su, term_strlen(p, cp));                  SCALE_VS_INIT(&su, atoi(cp));
   
         return(term_vspan(p, &su));          return(term_vspan(p, &su));
 }  }
Line 198  a2width(const struct termp *p, const char *cp)
Line 198  a2width(const struct termp *p, const char *cp)
         return((int)term_hspan(p, &su));          return((int)term_hspan(p, &su));
 }  }
   
   /*
    * 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  static void
 print_bvspace(struct termp *p, const struct man_node *n)  print_bvspace(struct termp *p, const struct man_node *n)
 {  {
   
         term_newln(p);          term_newln(p);
   
         if (n->body && n->body->child && MAN_TBL == n->body->child->type)          if (n->body && n->body->child)
                 return;                  if (MAN_TBL == n->body->child->type)
                           return;
   
         if (NULL == n->prev)          if (MAN_ROOT == n->parent->type || MAN_RS != n->parent->tok)
                 return;                  if (NULL == n->prev)
                           return;
   
         if (MAN_SS == n->prev->tok)  
                 return;  
         if (MAN_SH == n->prev->tok)  
                 return;  
   
         term_vspace(p);          term_vspace(p);
 }  }
   
   
 /* ARGSUSED */  /* ARGSUSED */
 static int  static int
 pre_ign(DECL_ARGS)  pre_ign(DECL_ARGS)
Line 407  pre_sp(DECL_ARGS)
Line 411  pre_sp(DECL_ARGS)
 {  {
         size_t           i, len;          size_t           i, len;
   
           if ((NULL == n->prev && n->parent)) {
                   if (MAN_SS == n->parent->tok)
                           return(0);
                   if (MAN_SH == n->parent->tok)
                           return(0);
           }
   
         switch (n->tok) {          switch (n->tok) {
         case (MAN_br):          case (MAN_br):
                 len = 0;                  len = 0;
Line 698  pre_SS(DECL_ARGS)
Line 709  pre_SS(DECL_ARGS)
   
         switch (n->type) {          switch (n->type) {
         case (MAN_BLOCK):          case (MAN_BLOCK):
                   mt->fl &= ~MANT_LITERAL;
                 mt->lmargin = term_len(p, INDENT);                  mt->lmargin = term_len(p, INDENT);
                 mt->offset = term_len(p, INDENT);                  mt->offset = term_len(p, INDENT);
                 /* If following a prior empty `SS', no vspace. */                  /* If following a prior empty `SS', no vspace. */
Line 748  pre_SH(DECL_ARGS)
Line 760  pre_SH(DECL_ARGS)
   
         switch (n->type) {          switch (n->type) {
         case (MAN_BLOCK):          case (MAN_BLOCK):
                   mt->fl &= ~MANT_LITERAL;
                 mt->lmargin = term_len(p, INDENT);                  mt->lmargin = term_len(p, INDENT);
                 mt->offset = term_len(p, INDENT);                  mt->offset = term_len(p, INDENT);
                 /* If following a prior empty `SH', no vspace. */                  /* If following a prior empty `SH', no vspace. */
Line 892  print_man_node(DECL_ARGS)
Line 905  print_man_node(DECL_ARGS)
                         p->flags |= TERMP_SENTENCE;                          p->flags |= TERMP_SENTENCE;
                 return;                  return;
         case (MAN_EQN):          case (MAN_EQN):
                 term_word(p, n->eqn->data);                  term_eqn(p, n->eqn);
                 return;                  return;
         case (MAN_TBL):          case (MAN_TBL):
                 /*                  /*

Legend:
Removed from v.1.110  
changed lines
  Added in v.1.115

CVSweb