[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.174 and 1.180

version 1.174, 2015/04/04 11:44:43 version 1.180, 2015/04/18 16:06:40
Line 138  static const struct termact termacts[MAN_MAX] = {
Line 138  static const struct termact termacts[MAN_MAX] = {
   
   
 void  void
 terminal_man(void *arg, const struct man *man)  terminal_man(void *arg, const struct roff_man *man)
 {  {
         struct termp            *p;          struct termp            *p;
         const struct roff_meta  *meta;          const struct roff_meta  *meta;
Line 321  pre_alternate(DECL_ARGS)
Line 321  pre_alternate(DECL_ARGS)
                 term_fontrepl(p, font[i]);                  term_fontrepl(p, font[i]);
                 if (savelit && NULL == nn->next)                  if (savelit && NULL == nn->next)
                         mt->fl |= MANT_LITERAL;                          mt->fl |= MANT_LITERAL;
                 print_man_node(p, mt, nn, meta);                  assert(nn->type == ROFFT_TEXT);
                   term_word(p, nn->string);
                   if (nn->flags & MAN_EOS)
                           p->flags |= TERMP_SENTENCE;
                 if (nn->next)                  if (nn->next)
                         p->flags |= TERMP_NOSPACE;                          p->flags |= TERMP_NOSPACE;
         }          }
Line 427  pre_in(DECL_ARGS)
Line 430  pre_in(DECL_ARGS)
         if ( ! a2roffsu(++cp, &su, SCALE_EN))          if ( ! a2roffsu(++cp, &su, SCALE_EN))
                 return(0);                  return(0);
   
         v = term_hspan(p, &su);          v = (term_hspan(p, &su) + 11) / 24;
   
         if (less < 0)          if (less < 0)
                 p->offset -= p->offset > v ? v : p->offset;                  p->offset -= p->offset > v ? v : p->offset;
Line 512  pre_HP(DECL_ARGS)
Line 515  pre_HP(DECL_ARGS)
   
         if ((nn = n->parent->head->child) != NULL &&          if ((nn = n->parent->head->child) != NULL &&
             a2roffsu(nn->string, &su, SCALE_EN)) {              a2roffsu(nn->string, &su, SCALE_EN)) {
                 len = term_hspan(p, &su);                  len = term_hspan(p, &su) / 24;
                 if (len < 0 && (size_t)(-len) > mt->offset)                  if (len < 0 && (size_t)(-len) > mt->offset)
                         len = -mt->offset;                          len = -mt->offset;
                 else if (len > SHRT_MAX)                  else if (len > SHRT_MAX)
Line 597  pre_IP(DECL_ARGS)
Line 600  pre_IP(DECL_ARGS)
         if ((nn = n->parent->head->child) != NULL &&          if ((nn = n->parent->head->child) != NULL &&
             (nn = nn->next) != NULL &&              (nn = nn->next) != NULL &&
             a2roffsu(nn->string, &su, SCALE_EN)) {              a2roffsu(nn->string, &su, SCALE_EN)) {
                 len = term_hspan(p, &su);                  len = term_hspan(p, &su) / 24;
                 if (len < 0 && (size_t)(-len) > mt->offset)                  if (len < 0 && (size_t)(-len) > mt->offset)
                         len = -mt->offset;                          len = -mt->offset;
                 else if (len > SHRT_MAX)                  else if (len > SHRT_MAX)
Line 679  pre_TP(DECL_ARGS)
Line 682  pre_TP(DECL_ARGS)
         if ((nn = n->parent->head->child) != NULL &&          if ((nn = n->parent->head->child) != NULL &&
             nn->string != NULL && ! (MAN_LINE & nn->flags) &&              nn->string != NULL && ! (MAN_LINE & nn->flags) &&
             a2roffsu(nn->string, &su, SCALE_EN)) {              a2roffsu(nn->string, &su, SCALE_EN)) {
                 len = term_hspan(p, &su);                  len = term_hspan(p, &su) / 24;
                 if (len < 0 && (size_t)(-len) > mt->offset)                  if (len < 0 && (size_t)(-len) > mt->offset)
                         len = -mt->offset;                          len = -mt->offset;
                 else if (len > SHRT_MAX)                  else if (len > SHRT_MAX)
Line 768  pre_SS(DECL_ARGS)
Line 771  pre_SS(DECL_ARGS)
         case ROFFT_HEAD:          case ROFFT_HEAD:
                 term_fontrepl(p, TERMFONT_BOLD);                  term_fontrepl(p, TERMFONT_BOLD);
                 p->offset = term_len(p, 3);                  p->offset = term_len(p, 3);
                   p->rmargin = mt->offset;
                   p->trailspace = mt->offset;
                   p->flags |= TERMP_NOBREAK | TERMP_BRIND;
                 break;                  break;
         case ROFFT_BODY:          case ROFFT_BODY:
                 p->offset = mt->offset;                  p->offset = mt->offset;
                   p->rmargin = p->maxrmargin;
                   p->trailspace = 0;
                   p->flags &= ~(TERMP_NOBREAK | TERMP_BRIND);
                 break;                  break;
         default:          default:
                 break;                  break;
Line 823  pre_SH(DECL_ARGS)
Line 832  pre_SH(DECL_ARGS)
         case ROFFT_HEAD:          case ROFFT_HEAD:
                 term_fontrepl(p, TERMFONT_BOLD);                  term_fontrepl(p, TERMFONT_BOLD);
                 p->offset = 0;                  p->offset = 0;
                   p->rmargin = mt->offset;
                   p->trailspace = mt->offset;
                   p->flags |= TERMP_NOBREAK | TERMP_BRIND;
                 break;                  break;
         case ROFFT_BODY:          case ROFFT_BODY:
                 p->offset = mt->offset;                  p->offset = mt->offset;
                   p->rmargin = p->maxrmargin;
                   p->trailspace = 0;
                   p->flags &= ~(TERMP_NOBREAK | TERMP_BRIND);
                 break;                  break;
         default:          default:
                 break;                  break;
Line 867  pre_RS(DECL_ARGS)
Line 882  pre_RS(DECL_ARGS)
   
         n = n->parent->head;          n = n->parent->head;
         n->aux = SHRT_MAX + 1;          n->aux = SHRT_MAX + 1;
         if (n->child != NULL && a2roffsu(n->child->string, &su, SCALE_EN))          if (n->child == NULL)
                 n->aux = term_hspan(p, &su);                  n->aux = mt->lmargin[mt->lmargincur];
           else if (a2roffsu(n->child->string, &su, SCALE_EN))
                   n->aux = term_hspan(p, &su) / 24;
         if (n->aux < 0 && (size_t)(-n->aux) > mt->offset)          if (n->aux < 0 && (size_t)(-n->aux) > mt->offset)
                 n->aux = -mt->offset;                  n->aux = -mt->offset;
         else if (n->aux > SHRT_MAX)          else if (n->aux > SHRT_MAX)
Line 881  pre_RS(DECL_ARGS)
Line 898  pre_RS(DECL_ARGS)
         if (++mt->lmarginsz < MAXMARGINS)          if (++mt->lmarginsz < MAXMARGINS)
                 mt->lmargincur = mt->lmarginsz;                  mt->lmargincur = mt->lmarginsz;
   
         mt->lmargin[mt->lmargincur] = mt->lmargin[mt->lmargincur - 1];          mt->lmargin[mt->lmargincur] = term_len(p, p->defindent);
         return(1);          return(1);
 }  }
   

Legend:
Removed from v.1.174  
changed lines
  Added in v.1.180

CVSweb