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

Diff for /mandoc/mdoc.c between version 1.5 and 1.9

version 1.5, 2008/12/28 00:34:20 version 1.9, 2008/12/29 18:08:44
Line 90  const struct mdoc_macro __mdoc_macros[MDOC_MAX] = {
Line 90  const struct mdoc_macro __mdoc_macros[MDOC_MAX] = {
         { macro_scoped_implicit, 0 }, /* Sh */          { macro_scoped_implicit, 0 }, /* Sh */
         { macro_scoped_implicit, 0 }, /* Ss */          { macro_scoped_implicit, 0 }, /* Ss */
         { macro_text, 0 }, /* Pp */          { macro_text, 0 }, /* Pp */
         { NULL, 0 }, /* D1 */          { macro_scoped_line, 0 }, /* D1 */
         { NULL, 0 }, /* Dl */          { macro_scoped_line, 0 }, /* Dl */
         { macro_scoped_explicit, MDOC_EXPLICIT }, /* Bd */          { macro_scoped_explicit, MDOC_EXPLICIT }, /* Bd */
         { macro_scoped_explicit, 0 }, /* Ed */          { macro_scoped_explicit, 0 }, /* Ed */
         { macro_scoped_explicit, MDOC_EXPLICIT }, /* Bl */          { macro_scoped_explicit, MDOC_EXPLICIT }, /* Bl */
Line 137  const struct mdoc_macro __mdoc_macros[MDOC_MAX] = {
Line 137  const struct mdoc_macro __mdoc_macros[MDOC_MAX] = {
         { NULL, 0 }, /* %V */          { NULL, 0 }, /* %V */
         { NULL, 0 }, /* Ac */          { NULL, 0 }, /* Ac */
         { NULL, 0 }, /* Ao */          { NULL, 0 }, /* Ao */
         { NULL, 0 }, /* Aq */          { macro_scoped_pline, MDOC_CALLABLE }, /* Aq */
         { NULL, 0 }, /* At */          { macro_constant, 0 }, /* At */
         { NULL, 0 }, /* Bc */          { NULL, 0 }, /* Bc */
         { NULL, 0 }, /* Bf */          { NULL, 0 }, /* Bf */
         { NULL, 0 }, /* Bo */          { NULL, 0 }, /* Bo */
         { NULL, 0 }, /* Bq */          { macro_scoped_pline, MDOC_CALLABLE }, /* Bq */
         { NULL, 0 }, /* Bsx */          { macro_constant_delimited, 0 }, /* Bsx */
         { NULL, 0 }, /* Bx */          { macro_constant_delimited, 0 }, /* Bx */
         { NULL, 0 }, /* Db */          { NULL, 0 }, /* Db */
         { NULL, 0 }, /* Dc */          { NULL, 0 }, /* Dc */
         { NULL, 0 }, /* Do */          { NULL, 0 }, /* Do */
         { NULL, 0 }, /* Dq */          { macro_scoped_pline, MDOC_CALLABLE }, /* Dq */
         { NULL, 0 }, /* Ec */          { NULL, 0 }, /* Ec */
         { NULL, 0 }, /* Ef */          { NULL, 0 }, /* Ef */
         { macro_text, MDOC_CALLABLE }, /* Em */          { macro_text, MDOC_CALLABLE }, /* Em */
         { NULL, 0 }, /* Eo */          { NULL, 0 }, /* Eo */
         { NULL, 0 }, /* Fx */          { macro_constant_delimited, 0 }, /* Fx */
         { macro_text, 0 }, /* Ms */          { macro_text, 0 }, /* Ms */
         { NULL, 0 }, /* No */          { NULL, 0 }, /* No */
         { NULL, 0 }, /* Ns */          { NULL, 0 }, /* Ns */
         { NULL, 0 }, /* Nx */          { macro_constant_delimited, 0 }, /* Nx */
         { NULL, 0 }, /* Ox */          { macro_constant_delimited, 0 }, /* Ox */
         { NULL, 0 }, /* Pc */          { NULL, 0 }, /* Pc */
         { NULL, 0 }, /* Pf */          { NULL, 0 }, /* Pf */
         { NULL, 0 }, /* Po */          { NULL, 0 }, /* Po */
         { NULL, 0 }, /* Pq */          { macro_scoped_pline, MDOC_CALLABLE }, /* Pq */
         { NULL, 0 }, /* Qc */          { NULL, 0 }, /* Qc */
         { NULL, 0 }, /* Ql */          { macro_scoped_pline, MDOC_CALLABLE }, /* Ql */
         { NULL, 0 }, /* Qo */          { NULL, 0 }, /* Qo */
         { NULL, 0 }, /* Qq */          { macro_scoped_pline, MDOC_CALLABLE }, /* Qq */
         { NULL, 0 }, /* Re */          { NULL, 0 }, /* Re */
         { NULL, 0 }, /* Rs */          { NULL, 0 }, /* Rs */
         { NULL, 0 }, /* Sc */          { NULL, 0 }, /* Sc */
         { NULL, 0 }, /* So */          { NULL, 0 }, /* So */
         { NULL, 0 }, /* Sq */          { macro_scoped_pline, MDOC_CALLABLE }, /* Sq */
         { NULL, 0 }, /* Sm */          { NULL, 0 }, /* Sm */
         { NULL, 0 }, /* Sx */          { NULL, 0 }, /* Sx */
         { NULL, 0 }, /* Sy */          { NULL, 0 }, /* Sy */
         { macro_text, MDOC_CALLABLE }, /* Tn */          { macro_text, MDOC_CALLABLE }, /* Tn */
         { NULL, 0 }, /* Ux */          { macro_constant_delimited, 0 }, /* Ux */
         { NULL, 0 }, /* Xc */          { NULL, 0 }, /* Xc */
         { NULL, 0 }, /* Xo */          { NULL, 0 }, /* Xo */
         { NULL, 0 }, /* Fo */          { NULL, 0 }, /* Fo */
Line 185  const struct mdoc_macro __mdoc_macros[MDOC_MAX] = {
Line 185  const struct mdoc_macro __mdoc_macros[MDOC_MAX] = {
         { NULL, 0 }, /* Oc */          { NULL, 0 }, /* Oc */
         { NULL, 0 }, /* Bk */          { NULL, 0 }, /* Bk */
         { NULL, 0 }, /* Ek */          { NULL, 0 }, /* Ek */
         { NULL, 0 }, /* Bt */          { macro_constant, 0 }, /* Bt */
         { NULL, 0 }, /* Hf */          { NULL, 0 }, /* Hf */
         { NULL, 0 }, /* Fr */          { NULL, 0 }, /* Fr */
         { NULL, 0 }, /* Ud */          { macro_constant, 0 }, /* Ud */
 };  };
   
 const   char * const *mdoc_macronames = __mdoc_macronames;  const   char * const *mdoc_macronames = __mdoc_macronames;
Line 336  mdoc_macro(struct mdoc *mdoc, int tok, int ppos, int *
Line 336  mdoc_macro(struct mdoc *mdoc, int tok, int ppos, int *
                 return(0);                  return(0);
         }          }
   
           /*mdoc_msg(mdoc, ppos, "calling `%s'", mdoc_macronames[tok]);*/
   
         return((*mdoc_macros[tok].fp)(mdoc, tok, ppos, pos, buf));          return((*mdoc_macros[tok].fp)(mdoc, tok, ppos, pos, buf));
 }  }
   
Line 407  mdoc_node_append(struct mdoc *mdoc, int pos, struct md
Line 409  mdoc_node_append(struct mdoc *mdoc, int pos, struct md
   
         switch (p->type) {          switch (p->type) {
         case (MDOC_BODY):          case (MDOC_BODY):
                 switch (mdoc->last->type) {                  p->parent = mdoc->last->parent;
                 case (MDOC_BLOCK):                  mdoc->last->next = p;
                         p->parent = mdoc->last;                  p->prev = mdoc->last;
                         mdoc->last->child = p;                  act = "sibling";
                         act = "child";  
                         break;  
                 case (MDOC_HEAD):  
                         p->parent = mdoc->last->parent;  
                         mdoc->last->next = p;  
                         p->prev = mdoc->last;  
                         act = "sibling";  
                         break;  
                 default:  
                         abort();  
                         /* NOTREACHED */  
                 }  
                 break;                  break;
   
         case (MDOC_HEAD):          case (MDOC_HEAD):
                 assert(mdoc->last->type == MDOC_BLOCK);                  assert(mdoc->last->type == MDOC_BLOCK);
                 p->parent = mdoc->last;                  p->parent = mdoc->last;
                 mdoc->last->child = p;                  mdoc->last->child = p;
                 act = "child";                  act = "child";
                 break;                  break;
   
         default:          default:
                 switch (mdoc->last->type) {                  switch (mdoc->last->type) {
                 case (MDOC_BODY):                  case (MDOC_BODY):
                         /* FALLTHROUGH */                          /* FALLTHROUGH */
                 case (MDOC_HEAD):                  case (MDOC_HEAD):
                         p->parent = mdoc->last->parent;                          p->parent = mdoc->last;
                         mdoc->last->child = p;                          mdoc->last->child = p;
                         act = "child";                          act = "child";
                         break;                          break;
Line 455  mdoc_node_append(struct mdoc *mdoc, int pos, struct md
Line 447  mdoc_node_append(struct mdoc *mdoc, int pos, struct md
 }  }
   
   
   /* FIXME: deprecate paramsz, params. */
 void  void
 mdoc_head_alloc(struct mdoc *mdoc, int pos, int tok,  mdoc_head_alloc(struct mdoc *mdoc, int pos, int tok,
                 size_t paramsz, const char **params)                  size_t paramsz, const char **params)

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.9

CVSweb