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

Diff for /mandoc/Attic/mdoc_action.c between version 1.28 and 1.33

version 1.28, 2009/07/15 15:53:57 version 1.33, 2009/07/25 16:03:03
Line 42  static int   post_dd(POST_ARGS);
Line 42  static int   post_dd(POST_ARGS);
 static  int       post_display(POST_ARGS);  static  int       post_display(POST_ARGS);
 static  int       post_dt(POST_ARGS);  static  int       post_dt(POST_ARGS);
 static  int       post_lb(POST_ARGS);  static  int       post_lb(POST_ARGS);
 static  int       post_lk(POST_ARGS);  
 static  int       post_nm(POST_ARGS);  static  int       post_nm(POST_ARGS);
 static  int       post_os(POST_ARGS);  static  int       post_os(POST_ARGS);
 static  int       post_prol(POST_ARGS);  static  int       post_prol(POST_ARGS);
 static  int       post_sh(POST_ARGS);  static  int       post_sh(POST_ARGS);
 static  int       post_st(POST_ARGS);  static  int       post_st(POST_ARGS);
 static  int       post_std(POST_ARGS);  static  int       post_std(POST_ARGS);
   static  int       post_tilde(POST_ARGS);
   
 static  int       pre_bd(PRE_ARGS);  static  int       pre_bd(PRE_ARGS);
 static  int       pre_dl(PRE_ARGS);  static  int       pre_dl(PRE_ARGS);
Line 89  const struct actions mdoc_actions[MDOC_MAX] = {
Line 89  const struct actions mdoc_actions[MDOC_MAX] = {
         { NULL, post_nm }, /* Nm */          { NULL, post_nm }, /* Nm */
         { NULL, NULL }, /* Op */          { NULL, NULL }, /* Op */
         { NULL, NULL }, /* Ot */          { NULL, NULL }, /* Ot */
         { NULL, NULL }, /* Pa */          { NULL, post_tilde }, /* Pa */
         { NULL, post_std }, /* Rv */          { NULL, post_std }, /* Rv */
         { NULL, post_st }, /* St */          { NULL, post_st }, /* St */
         { NULL, NULL }, /* Va */          { NULL, NULL }, /* Va */
Line 162  const struct actions mdoc_actions[MDOC_MAX] = {
Line 162  const struct actions mdoc_actions[MDOC_MAX] = {
         { NULL, NULL }, /* Ud */          { NULL, NULL }, /* Ud */
         { NULL, post_lb }, /* Lb */          { NULL, post_lb }, /* Lb */
         { NULL, NULL }, /* Lp */          { NULL, NULL }, /* Lp */
         { NULL, post_lk }, /* Lk */          { NULL, post_tilde }, /* Lk */
         { NULL, NULL }, /* Mt */          { NULL, NULL }, /* Mt */
         { NULL, NULL }, /* Brq */          { NULL, NULL }, /* Brq */
         { NULL, NULL }, /* Bro */          { NULL, NULL }, /* Bro */
Line 172  const struct actions mdoc_actions[MDOC_MAX] = {
Line 172  const struct actions mdoc_actions[MDOC_MAX] = {
         { NULL, NULL }, /* En */          { NULL, NULL }, /* En */
         { NULL, NULL }, /* Dx */          { NULL, NULL }, /* Dx */
         { NULL, NULL }, /* %Q */          { NULL, NULL }, /* %Q */
           { NULL, NULL }, /* br */
           { NULL, NULL }, /* sp */
 };  };
   
 static  int       concat(struct mdoc *, const struct mdoc_node *,  static  int       concat(struct mdoc *, const struct mdoc_node *,
Line 298  post_lb(POST_ARGS)
Line 300  post_lb(POST_ARGS)
         char            *buf;          char            *buf;
         size_t           sz;          size_t           sz;
   
         /*  
          * FIXME: this must be broken apart into a series of TEXT nodes,  
          * each containing a single word.  
          */  
   
         assert(MDOC_TEXT == m->last->child->type);          assert(MDOC_TEXT == m->last->child->type);
         p = mdoc_a2lib(m->last->child->string);          p = mdoc_a2lib(m->last->child->string);
         if (NULL == p) {          if (NULL == p) {
Line 331  post_st(POST_ARGS)
Line 328  post_st(POST_ARGS)
 {  {
         const char      *p;          const char      *p;
   
         /*  
          * FIXME: this must be broken apart into a series of TEXT nodes,  
          * each containing a single word.  
          */  
   
         assert(MDOC_TEXT == m->last->child->type);          assert(MDOC_TEXT == m->last->child->type);
         p = mdoc_a2st(m->last->child->string);          p = mdoc_a2st(m->last->child->string);
         assert(p);          assert(p);
Line 353  post_at(POST_ARGS)
Line 345  post_at(POST_ARGS)
         struct mdoc_node *n;          struct mdoc_node *n;
         const char       *p;          const char       *p;
   
         /*  
          * FIXME: this must be broken apart into a series of TEXT nodes,  
          * each containing a single word.  
          */  
   
         if (m->last->child) {          if (m->last->child) {
                 assert(MDOC_TEXT == m->last->child->type);                  assert(MDOC_TEXT == m->last->child->type);
                 p = mdoc_a2att(m->last->child->string);                  p = mdoc_a2att(m->last->child->string);
Line 500  post_dt(POST_ARGS)
Line 487  post_dt(POST_ARGS)
                 free(m->meta.vol);                  free(m->meta.vol);
                 if (NULL == (m->meta.vol = strdup(cp)))                  if (NULL == (m->meta.vol = strdup(cp)))
                         return(mdoc_nerr(m, m->last, EMALLOC));                          return(mdoc_nerr(m, m->last, EMALLOC));
                 n = n->next;  
         } else {          } else {
                 cp = mdoc_a2arch(n->string);                  cp = mdoc_a2arch(n->string);
                 if (NULL == cp) {                  if (NULL == cp) {
Line 748  post_bl(POST_ARGS)
Line 734  post_bl(POST_ARGS)
   
   
 static int  static int
 post_lk(POST_ARGS)  post_tilde(POST_ARGS)
 {  {
         struct mdoc_node *n;          struct mdoc_node *n;
   
Line 758  post_lk(POST_ARGS)
Line 744  post_lk(POST_ARGS)
         n = m->last;          n = m->last;
         m->next = MDOC_NEXT_CHILD;          m->next = MDOC_NEXT_CHILD;
   
         /* XXX: this isn't documented anywhere! */          /* XXX: not documented for `Lk'. */
         if ( ! mdoc_word_alloc(m, m->last->line, m->last->pos, "~"))          if ( ! mdoc_word_alloc(m, m->last->line, m->last->pos, "~"))
                 return(0);                  return(0);
   
Line 858  pre_bd(PRE_ARGS)
Line 844  pre_bd(PRE_ARGS)
         if (MDOC_BODY != n->type)          if (MDOC_BODY != n->type)
                 return(1);                  return(1);
   
         /* Enter literal context if `Bd -literal' or * -unfilled'. */          /* Enter literal context if `Bd -literal' or `-unfilled'. */
   
           /*
            * TODO: `-offset' without an argument should be the width of
            * the literal "<string>".
            */
   
         for (n = n->parent, i = 0; i < (int)n->args->argc; i++)          for (n = n->parent, i = 0; i < (int)n->args->argc; i++)
                 if (MDOC_Literal == n->args->argv[i].arg)                  if (MDOC_Literal == n->args->argv[i].arg)

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

CVSweb