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

Diff for /mandoc/mdoc.c between version 1.248 and 1.249

version 1.248, 2015/04/19 14:00:19 version 1.249, 2015/04/19 14:25:41
Line 96  mdoc_endparse(struct roff_man *mdoc)
Line 96  mdoc_endparse(struct roff_man *mdoc)
         mdoc_macroend(mdoc);          mdoc_macroend(mdoc);
 }  }
   
 void  
 mdoc_addeqn(struct roff_man *mdoc, const struct eqn *ep)  
 {  
         struct roff_node *n;  
   
         n = roff_node_alloc(mdoc, ep->ln, ep->pos, ROFFT_EQN, TOKEN_NONE);  
         n->eqn = ep;  
         if (ep->ln > mdoc->last->line)  
                 n->flags |= MDOC_LINE;  
         roff_node_append(mdoc, n);  
         mdoc->next = ROFF_NEXT_SIBLING;  
 }  
   
 void  
 mdoc_addspan(struct roff_man *mdoc, const struct tbl_span *sp)  
 {  
         struct roff_node *n;  
   
         n = roff_node_alloc(mdoc, sp->line, 0, ROFFT_TBL, TOKEN_NONE);  
         n->span = sp;  
         roff_node_append(mdoc, n);  
         mdoc_valid_post(mdoc);  
         mdoc->next = ROFF_NEXT_SIBLING;  
 }  
   
 /*  /*
  * Main parse routine.  Parses a single line -- really just hands off to   * Main parse routine.  Parses a single line -- really just hands off to
  * the macro (mdoc_pmacro()) or text parser (mdoc_ptext()).   * the macro (mdoc_pmacro()) or text parser (mdoc_ptext()).
Line 255  mdoc_elem_alloc(struct roff_man *mdoc, int line, int p
Line 230  mdoc_elem_alloc(struct roff_man *mdoc, int line, int p
 }  }
   
 void  void
 mdoc_word_alloc(struct roff_man *mdoc, int line, int pos, const char *p)  
 {  
         struct roff_node *n;  
   
         n = roff_node_alloc(mdoc, line, pos, ROFFT_TEXT, TOKEN_NONE);  
         n->string = roff_strdup(mdoc->roff, p);  
         roff_node_append(mdoc, n);  
         mdoc_valid_post(mdoc);  
         mdoc->next = ROFF_NEXT_SIBLING;  
 }  
   
 void  
 mdoc_word_append(struct roff_man *mdoc, const char *p)  
 {  
         struct roff_node        *n;  
         char                    *addstr, *newstr;  
   
         n = mdoc->last;  
         addstr = roff_strdup(mdoc->roff, p);  
         mandoc_asprintf(&newstr, "%s %s", n->string, addstr);  
         free(addstr);  
         free(n->string);  
         n->string = newstr;  
         mdoc->next = ROFF_NEXT_SIBLING;  
 }  
   
 void  
 mdoc_node_relink(struct roff_man *mdoc, struct roff_node *p)  mdoc_node_relink(struct roff_man *mdoc, struct roff_node *p)
 {  {
   
Line 387  mdoc_ptext(struct roff_man *mdoc, int line, char *buf,
Line 335  mdoc_ptext(struct roff_man *mdoc, int line, char *buf,
                 return(1);                  return(1);
         }          }
   
         mdoc_word_alloc(mdoc, line, offs, buf+offs);          roff_word_alloc(mdoc, line, offs, buf+offs);
   
         if (mdoc->flags & MDOC_LITERAL)          if (mdoc->flags & MDOC_LITERAL)
                 return(1);                  return(1);

Legend:
Removed from v.1.248  
changed lines
  Added in v.1.249

CVSweb