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

Diff for /mandoc/Attic/action.c between version 1.28 and 1.30

version 1.28, 2009/03/01 23:14:15 version 1.30, 2009/03/05 13:12:12
Line 36  struct actions {
Line 36  struct actions {
   
 /* Per-macro action routines. */  /* Per-macro action routines. */
   
   static  int      post_ar(struct mdoc *);
 static  int      post_bl(struct mdoc *);  static  int      post_bl(struct mdoc *);
 static  int      post_bl_width(struct mdoc *);  static  int      post_bl_width(struct mdoc *);
 static  int      post_bl_tagwidth(struct mdoc *);  static  int      post_bl_tagwidth(struct mdoc *);
 static  int      post_sh(struct mdoc *);  
 static  int      post_os(struct mdoc *);  
 static  int      post_dt(struct mdoc *);  
 static  int      post_dd(struct mdoc *);  static  int      post_dd(struct mdoc *);
   static  int      post_dt(struct mdoc *);
 static  int      post_nm(struct mdoc *);  static  int      post_nm(struct mdoc *);
   static  int      post_os(struct mdoc *);
   static  int      post_sh(struct mdoc *);
   static  int      post_ex(struct mdoc *);
   
 static  int      post_prologue(struct mdoc *);  static  int      post_prologue(struct mdoc *);
   
Line 66  const struct actions mdoc_actions[MDOC_MAX] = {
Line 68  const struct actions mdoc_actions[MDOC_MAX] = {
         { NULL }, /* It */          { NULL }, /* It */
         { NULL }, /* Ad */          { NULL }, /* Ad */
         { NULL }, /* An */          { NULL }, /* An */
         { NULL }, /* Ar */          { post_ar }, /* Ar */
         { NULL }, /* Cd */          { NULL }, /* Cd */
         { NULL }, /* Cm */          { NULL }, /* Cm */
         { NULL }, /* Dv */          { NULL }, /* Dv */
         { NULL }, /* Er */          { NULL }, /* Er */
         { NULL }, /* Ev */          { NULL }, /* Ev */
         { NULL }, /* Ex */          { post_ex }, /* Ex */
         { NULL }, /* Fa */          { NULL }, /* Fa */
         { NULL }, /* Fd */          { NULL }, /* Fd */
         { NULL }, /* Fl */          { NULL }, /* Fl */
Line 160  const struct actions mdoc_actions[MDOC_MAX] = {
Line 162  const struct actions mdoc_actions[MDOC_MAX] = {
   
   
 static int  static int
   post_ex(struct mdoc *mdoc)
   {
   
           /*
            * If `.Ex -std' is invoked without an argument, fill it in with
            * our name (if it's been set).
            */
   
           if (0 == mdoc->last->data.elem.argc)
                   return(1);
           if (mdoc->last->data.elem.argv[0].sz)
                   return(1);
   
           assert(mdoc->meta.name);
   
           mdoc_msg(mdoc, "writing %s argument: %s",
                           mdoc_argnames[MDOC_Std], mdoc->meta.name);
   
           mdoc->last->data.elem.argv[0].sz = 1;
           mdoc->last->data.elem.argv[0].value = xcalloc(1, sizeof(char *));
           mdoc->last->data.elem.argv[0].value[0] = xstrdup(mdoc->meta.name);
           return(1);
   }
   
   
   static int
 post_nm(struct mdoc *mdoc)  post_nm(struct mdoc *mdoc)
 {  {
         char             buf[64];          char             buf[64];
Line 448  post_bl(struct mdoc *mdoc)
Line 476  post_bl(struct mdoc *mdoc)
                 if ( ! post_bl_width(mdoc))                  if ( ! post_bl_width(mdoc))
                         return(0);                          return(0);
   
           return(1);
   }
   
   
   static int
   post_ar(struct mdoc *mdoc)
   {
           struct mdoc_node *n;
   
           if (mdoc->last->child)
                   return(1);
   
           n = mdoc->last;
   
           mdoc->next = MDOC_NEXT_CHILD;
           mdoc_word_alloc(mdoc, mdoc->last->line,
                           mdoc->last->pos, "file");
           mdoc->next = MDOC_NEXT_SIBLING;
           mdoc_word_alloc(mdoc, mdoc->last->line,
                           mdoc->last->pos, "...");
   
           mdoc->last = n;
           mdoc->next = MDOC_NEXT_SIBLING;
         return(1);          return(1);
 }  }
   

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

CVSweb