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

Diff for /mandoc/html.c between version 1.13 and 1.14

version 1.13, 2008/12/06 21:10:31 version 1.14, 2008/12/07 21:30:49
Line 55  static void  html_free(void *);
Line 55  static void  html_free(void *);
 static  ssize_t         html_endtag(struct md_mbuf *, void *,  static  ssize_t         html_endtag(struct md_mbuf *, void *,
                                 const struct md_args *,                                  const struct md_args *,
                                 enum md_ns, int);                                  enum md_ns, int);
   static  ssize_t         html_beginstring(struct md_mbuf *,
                                   const struct md_args *,
                                   const char *, size_t);
   static  ssize_t         html_beginhttp(struct md_mbuf *,
                                   const struct md_args *,
                                   const char *, size_t);
   static  ssize_t         html_endstring(struct md_mbuf *,
                                   const struct md_args *,
                                   const char *, size_t);
   static  ssize_t         html_endhttp(struct md_mbuf *,
                                   const struct md_args *,
                                   const char *, size_t);
 static  ssize_t         html_begintag(struct md_mbuf *, void *,  static  ssize_t         html_begintag(struct md_mbuf *, void *,
                                 const struct md_args *,                                  const struct md_args *,
                                 enum md_ns, int,                                  enum md_ns, int,
Line 127  html_It_headtagname(struct md_mbuf *mbuf, struct htmlq
Line 139  html_It_headtagname(struct md_mbuf *mbuf, struct htmlq
         for (i = 0; ROFF_ARGMAX != n->argc[i] &&          for (i = 0; ROFF_ARGMAX != n->argc[i] &&
                         i < ROFF_MAXLINEARG; i++) {                          i < ROFF_MAXLINEARG; i++) {
                 switch (n->argc[i]) {                  switch (n->argc[i]) {
                   case (ROFF_Ohang):
                           return(ml_nputs(mbuf, "div", 3, res));
   
                 case (ROFF_Tag):                  case (ROFF_Tag):
                         /* FALLTHROUGH */                          /* FALLTHROUGH */
                 case (ROFF_Column):                  case (ROFF_Column):
Line 136  html_It_headtagname(struct md_mbuf *mbuf, struct htmlq
Line 151  html_It_headtagname(struct md_mbuf *mbuf, struct htmlq
                 }                  }
         }          }
   
         assert(i != ROFF_MAXLINEARG);  
         abort();          abort();
         /* NOTREACHED */          /* NOTREACHED */
   
         return(1);  
 }  }
   
   
Line 739  html_free(void *p)
Line 751  html_free(void *p)
 }  }
   
   
   static ssize_t
   html_beginhttp(struct md_mbuf *mbuf,
                   const struct md_args *args,
                   const char *buf, size_t sz)
   {
           size_t           res;
   
           res = 0;
   
           if ( ! ml_puts(mbuf, "<a href=\"", &res))
                   return(-1);
           if (1 != ml_nputstring(mbuf, buf, sz, &res))
                   return(-1);
           if ( ! ml_puts(mbuf, "\">", &res))
                   return(-1);
   
           return((ssize_t)res);
   }
   
   
   static ssize_t
   html_endhttp(struct md_mbuf *mbuf,
                   const struct md_args *args,
                   const char *buf, size_t sz)
   {
           size_t           res;
   
           res = 0;
   
           if ( ! ml_puts(mbuf, "</a>", &res))
                   return(-1);
   
           return((ssize_t)res);
   }
   
   
   /* ARGSUSED */
   static ssize_t
   html_beginstring(struct md_mbuf *mbuf,
                   const struct md_args *args,
                   const char *buf, size_t sz)
   {
   
           if (0 == strncmp(buf, "http://", 7))
                   return(html_beginhttp(mbuf, args, buf, sz));
   
           return(0);
   }
   
   
   /* ARGSUSED */
   static ssize_t
   html_endstring(struct md_mbuf *mbuf,
                   const struct md_args *args,
                   const char *buf, size_t sz)
   {
   
           if (0 == strncmp(buf, "http://", 7))
                   return(html_endhttp(mbuf, args, buf, sz));
   
           return(0);
   }
   
   
 int  int
 md_line_html(void *data, char *buf)  md_line_html(void *data, char *buf)
 {  {
Line 767  md_init_html(const struct md_args *args,
Line 843  md_init_html(const struct md_args *args,
         cbs.ml_endtag = html_endtag;          cbs.ml_endtag = html_endtag;
         cbs.ml_begin = html_begin;          cbs.ml_begin = html_begin;
         cbs.ml_end = html_end;          cbs.ml_end = html_end;
           cbs.ml_beginstring = html_beginstring;
           cbs.ml_endstring = html_endstring;
   
         return(mlg_alloc(args, rbuf, mbuf, &cbs));          return(mlg_alloc(args, rbuf, mbuf, &cbs));
 }  }
   

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.14

CVSweb