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

Diff for /mandoc/mdoc_term.c between version 1.220 and 1.224

version 1.220, 2011/03/07 01:35:51 version 1.224, 2011/04/04 16:15:58
Line 32 
Line 32 
 #include "out.h"  #include "out.h"
 #include "term.h"  #include "term.h"
 #include "mdoc.h"  #include "mdoc.h"
 #include "chars.h"  
 #include "main.h"  #include "main.h"
   
 #define INDENT            5  #define INDENT            5
Line 352  print_mdoc_node(DECL_ARGS)
Line 351  print_mdoc_node(DECL_ARGS)
         case (MDOC_TEXT):          case (MDOC_TEXT):
                 if (' ' == *n->string && MDOC_LINE & n->flags)                  if (' ' == *n->string && MDOC_LINE & n->flags)
                         term_newln(p);                          term_newln(p);
                   if (MDOC_DELIMC & n->flags)
                           p->flags |= TERMP_NOSPACE;
                 term_word(p, n->string);                  term_word(p, n->string);
                   if (MDOC_DELIMO & n->flags)
                           p->flags |= TERMP_NOSPACE;
                 break;                  break;
         case (MDOC_EQN):          case (MDOC_EQN):
                 term_word(p, n->eqn->data);                  term_word(p, n->eqn->data);
Line 1180  termp_rs_pre(DECL_ARGS)
Line 1183  termp_rs_pre(DECL_ARGS)
 static int  static int
 termp_rv_pre(DECL_ARGS)  termp_rv_pre(DECL_ARGS)
 {  {
         const struct mdoc_node  *nn;          int              nchild;
   
         term_newln(p);          term_newln(p);
         term_word(p, "The");          term_word(p, "The");
   
         for (nn = n->child; nn; nn = nn->next) {          nchild = n->nchild;
           for (n = n->child; n; n = n->next) {
                 term_fontpush(p, TERMFONT_BOLD);                  term_fontpush(p, TERMFONT_BOLD);
                 term_word(p, nn->string);                  term_word(p, n->string);
                 term_fontpop(p);                  term_fontpop(p);
   
                 p->flags |= TERMP_NOSPACE;                  p->flags |= TERMP_NOSPACE;
                 if (nn->next && NULL == nn->next->next)                  term_word(p, "()");
                         term_word(p, "(), and");  
                 else if (nn->next)                  if (nchild > 2 && n->next) {
                         term_word(p, "(),");                          p->flags |= TERMP_NOSPACE;
                 else                          term_word(p, ",");
                         term_word(p, "()");                  }
   
                   if (n->next && NULL == n->next->next)
                           term_word(p, "and");
         }          }
   
         if (n->child && n->child->next)          if (nchild > 1)
                 term_word(p, "functions return");                  term_word(p, "functions return");
         else          else
                 term_word(p, "function returns");                  term_word(p, "function returns");
Line 1221  termp_rv_pre(DECL_ARGS)
Line 1229  termp_rv_pre(DECL_ARGS)
 static int  static int
 termp_ex_pre(DECL_ARGS)  termp_ex_pre(DECL_ARGS)
 {  {
         const struct mdoc_node  *nn;          int              nchild;
   
           term_newln(p);
         term_word(p, "The");          term_word(p, "The");
   
         for (nn = n->child; nn; nn = nn->next) {          nchild = n->nchild;
           for (n = n->child; n; n = n->next) {
                 term_fontpush(p, TERMFONT_BOLD);                  term_fontpush(p, TERMFONT_BOLD);
                 term_word(p, nn->string);                  term_word(p, n->string);
                 term_fontpop(p);                  term_fontpop(p);
                 p->flags |= TERMP_NOSPACE;  
                 if (nn->next && NULL == nn->next->next)                  if (nchild > 2 && n->next) {
                         term_word(p, ", and");                          p->flags |= TERMP_NOSPACE;
                 else if (nn->next)  
                         term_word(p, ",");                          term_word(p, ",");
                 else                  }
                         p->flags &= ~TERMP_NOSPACE;  
                   if (n->next && NULL == n->next->next)
                           term_word(p, "and");
         }          }
   
         if (n->child && n->child->next)          if (nchild > 1)
                 term_word(p, "utilities exit");                  term_word(p, "utilities exit");
         else          else
                 term_word(p, "utility exits");                  term_word(p, "utility exits");
   
         term_word(p, "0 on success, and >0 if an error occurs.");          term_word(p, "0 on success, and >0 if an error occurs.");
         p->flags |= TERMP_SENTENCE;  
   
           p->flags |= TERMP_SENTENCE;
         return(0);          return(0);
 }  }
   
Line 1303  termp_xr_pre(DECL_ARGS)
Line 1314  termp_xr_pre(DECL_ARGS)
                 return(0);                  return(0);
         p->flags |= TERMP_NOSPACE;          p->flags |= TERMP_NOSPACE;
         term_word(p, "(");          term_word(p, "(");
           p->flags |= TERMP_NOSPACE;
         term_word(p, nn->string);          term_word(p, nn->string);
           p->flags |= TERMP_NOSPACE;
         term_word(p, ")");          term_word(p, ")");
   
         return(0);          return(0);
Line 1533  termp_fn_pre(DECL_ARGS)
Line 1546  termp_fn_pre(DECL_ARGS)
   
         p->flags |= TERMP_NOSPACE;          p->flags |= TERMP_NOSPACE;
         term_word(p, "(");          term_word(p, "(");
           p->flags |= TERMP_NOSPACE;
   
         for (nn = n->child->next; nn; nn = nn->next) {          for (nn = n->child->next; nn; nn = nn->next) {
                 term_fontpush(p, TERMFONT_UNDER);                  term_fontpush(p, TERMFONT_UNDER);
                 term_word(p, nn->string);                  term_word(p, nn->string);
                 term_fontpop(p);                  term_fontpop(p);
   
                 if (nn->next)                  if (nn->next) {
                           p->flags |= TERMP_NOSPACE;
                         term_word(p, ",");                          term_word(p, ",");
                   }
         }          }
   
           p->flags |= TERMP_NOSPACE;
         term_word(p, ")");          term_word(p, ")");
   
         if (MDOC_SYNPRETTY & n->flags)          if (MDOC_SYNPRETTY & n->flags) {
                   p->flags |= TERMP_NOSPACE;
                 term_word(p, ";");                  term_word(p, ";");
           }
   
         return(0);          return(0);
 }  }
Line 1568  termp_fa_pre(DECL_ARGS)
Line 1587  termp_fa_pre(DECL_ARGS)
                 term_word(p, nn->string);                  term_word(p, nn->string);
                 term_fontpop(p);                  term_fontpop(p);
   
                 if (nn->next)                  if (nn->next) {
                           p->flags |= TERMP_NOSPACE;
                         term_word(p, ",");                          term_word(p, ",");
                   }
         }          }
   
         if (n->child && n->next && n->next->tok == MDOC_Fa)          if (n->child && n->next && n->next->tok == MDOC_Fa) {
                   p->flags |= TERMP_NOSPACE;
                 term_word(p, ",");                  term_word(p, ",");
           }
   
         return(0);          return(0);
 }  }
Line 2008  termp_fo_pre(DECL_ARGS)
Line 2031  termp_fo_pre(DECL_ARGS)
         } else if (MDOC_BODY == n->type) {          } else if (MDOC_BODY == n->type) {
                 p->flags |= TERMP_NOSPACE;                  p->flags |= TERMP_NOSPACE;
                 term_word(p, "(");                  term_word(p, "(");
                   p->flags |= TERMP_NOSPACE;
                 return(1);                  return(1);
         }          }
   
Line 2031  termp_fo_post(DECL_ARGS)
Line 2055  termp_fo_post(DECL_ARGS)
         if (MDOC_BODY != n->type)          if (MDOC_BODY != n->type)
                 return;                  return;
   
           p->flags |= TERMP_NOSPACE;
         term_word(p, ")");          term_word(p, ")");
   
         if (MDOC_SYNPRETTY & n->flags)          if (MDOC_SYNPRETTY & n->flags) {
                   p->flags |= TERMP_NOSPACE;
                 term_word(p, ";");                  term_word(p, ";");
           }
 }  }
   
   
Line 2108  termp____post(DECL_ARGS)
Line 2135  termp____post(DECL_ARGS)
         if (NULL == n->parent || MDOC_Rs != n->parent->tok)          if (NULL == n->parent || MDOC_Rs != n->parent->tok)
                 return;                  return;
   
           p->flags |= TERMP_NOSPACE;
         if (NULL == n->next) {          if (NULL == n->next) {
                 term_word(p, ".");                  term_word(p, ".");
                 p->flags |= TERMP_SENTENCE;                  p->flags |= TERMP_SENTENCE;
Line 2144  termp_lk_pre(DECL_ARGS)
Line 2172  termp_lk_pre(DECL_ARGS)
   
         term_fontpop(p);          term_fontpop(p);
   
           p->flags |= TERMP_NOSPACE;
         term_word(p, ":");          term_word(p, ":");
   
         term_fontpush(p, TERMFONT_BOLD);          term_fontpush(p, TERMFONT_BOLD);

Legend:
Removed from v.1.220  
changed lines
  Added in v.1.224

CVSweb