[BACK]Return to mdoc_term.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / mandoc

Diff for /src/usr.bin/mandoc/mdoc_term.c between version 1.27 and 1.28

version 1.27, 2009/07/18 17:11:44 version 1.28, 2009/07/18 17:26:21
Line 82 
Line 82 
   
 struct  termpair {  struct  termpair {
         struct termpair  *ppair;          struct termpair  *ppair;
         int               flag;          int               flag;
         size_t            offset;       /* Left margin. */  
         size_t            rmargin;      /* Right margin. */  
         int               count;          int               count;
 };  };
   
Line 339 
Line 337 
 {  {
         int              dochild;          int              dochild;
         struct termpair  npair;          struct termpair  npair;
           size_t           offset, rmargin;
   
         /* Pre-processing. */  
   
         dochild = 1;          dochild = 1;
           offset = p->offset;
           rmargin = p->rmargin;
   
         npair.ppair = pair;          npair.ppair = pair;
         npair.offset = npair.rmargin = 0;  
         npair.flag = 0;          npair.flag = 0;
         npair.count = 0;          npair.count = 0;
   
Line 369 
Line 368 
         if (MDOC_TEXT != node->type)          if (MDOC_TEXT != node->type)
                 if (termacts[node->tok].post)                  if (termacts[node->tok].post)
                         (*termacts[node->tok].post)(p, &npair, meta, node);                          (*termacts[node->tok].post)(p, &npair, meta, node);
   
           p->offset = offset;
           p->rmargin = rmargin;
 }  }
   
   
Line 687 
Line 689 
 {  {
         const struct mdoc_node *bl, *n;          const struct mdoc_node *bl, *n;
         char                    buf[7];          char                    buf[7];
         int                     i, type, keys[3], vals[3], sv;          int                     i, type, keys[3], vals[3];
         size_t                  width, offset;          size_t                  width, offset;
   
         if (MDOC_BLOCK == node->type)          if (MDOC_BLOCK == node->type)
Line 697 
Line 699 
   
         /* Save parent attributes. */          /* Save parent attributes. */
   
         pair->offset = p->offset;  
         pair->rmargin = p->rmargin;  
         pair->flag = p->flags;          pair->flag = p->flags;
   
         /* Get list width and offset. */          /* Get list width and offset. */
Line 878 
Line 878 
          * HEAD character (temporarily bold, in some cases).           * HEAD character (temporarily bold, in some cases).
          */           */
   
         sv = p->flags;  
         if (MDOC_HEAD == node->type)          if (MDOC_HEAD == node->type)
                 switch (type) {                  switch (type) {
                 case (MDOC_Bullet):                  case (MDOC_Bullet):
Line 901 
Line 900 
                         break;                          break;
                 }                  }
   
         p->flags = sv; /* Restore saved flags. */  
   
         /*          /*
          * If we're not going to process our children, indicate so here.           * If we're not going to process our children, indicate so here.
          */           */
Line 961 
Line 958 
                 break;                  break;
         }          }
   
         p->offset = pair->offset;  
         p->rmargin = pair->rmargin;  
         p->flags = pair->flag;          p->flags = pair->flag;
 }  }
   
Line 1325 
Line 1320 
         if (MDOC_BLOCK != node->type)          if (MDOC_BLOCK != node->type)
                 return(1);                  return(1);
         term_newln(p);          term_newln(p);
         pair->offset = INDENT + 1;          p->offset += (INDENT + 1);
         p->offset += pair->offset;  
         return(1);          return(1);
 }  }
   
Line 1339 
Line 1333 
         if (MDOC_BLOCK != node->type)          if (MDOC_BLOCK != node->type)
                 return;                  return;
         term_newln(p);          term_newln(p);
         p->offset -= pair->offset;  
 }  }
   
   
Line 1508 
Line 1501 
         if (NULL == node->parent->args)          if (NULL == node->parent->args)
                 errx(1, "missing display type");                  errx(1, "missing display type");
   
         pair->offset = p->offset;  
   
         for (type = -1, i = 0;          for (type = -1, i = 0;
                         i < (int)node->parent->args->argc; i++) {                          i < (int)node->parent->args->argc; i++) {
                 switch (node->parent->args->argv[i].arg) {                  switch (node->parent->args->argv[i].arg) {
Line 1579 
Line 1570 
   
         term_flushln(p);          term_flushln(p);
         p->flags &= ~TERMP_LITERAL;          p->flags &= ~TERMP_LITERAL;
         p->offset = pair->offset;  
         p->flags |= TERMP_NOSPACE;          p->flags |= TERMP_NOSPACE;
 }  }
   

Legend:
Removed from v.1.27  
changed lines
  Added in v.1.28