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

Diff for /mandoc/mdoc_html.c between version 1.208 and 1.210

version 1.208, 2014/10/10 15:26:29 version 1.210, 2014/11/17 06:44:58
Line 56  static void    synopsis_pre(struct html *,
Line 56  static void    synopsis_pre(struct html *,
                                 const struct mdoc_node *);                                  const struct mdoc_node *);
   
 static  void              a2width(const char *, struct roffsu *);  static  void              a2width(const char *, struct roffsu *);
 static  void              a2offs(const char *, struct roffsu *);  
   
 static  void              mdoc_root_post(MDOC_ARGS);  static  void              mdoc_root_post(MDOC_ARGS);
 static  int               mdoc_root_pre(MDOC_ARGS);  static  int               mdoc_root_pre(MDOC_ARGS);
Line 99  static int    mdoc_mt_pre(MDOC_ARGS);
Line 98  static int    mdoc_mt_pre(MDOC_ARGS);
 static  int               mdoc_ms_pre(MDOC_ARGS);  static  int               mdoc_ms_pre(MDOC_ARGS);
 static  int               mdoc_nd_pre(MDOC_ARGS);  static  int               mdoc_nd_pre(MDOC_ARGS);
 static  int               mdoc_nm_pre(MDOC_ARGS);  static  int               mdoc_nm_pre(MDOC_ARGS);
   static  int               mdoc_no_pre(MDOC_ARGS);
 static  int               mdoc_ns_pre(MDOC_ARGS);  static  int               mdoc_ns_pre(MDOC_ARGS);
 static  int               mdoc_pa_pre(MDOC_ARGS);  static  int               mdoc_pa_pre(MDOC_ARGS);
 static  void              mdoc_pf_post(MDOC_ARGS);  static  void              mdoc_pf_post(MDOC_ARGS);
Line 193  static const struct htmlmdoc mdocs[MDOC_MAX] = {
Line 193  static const struct htmlmdoc mdocs[MDOC_MAX] = {
         {mdoc_quote_pre, mdoc_quote_post}, /* Eo */          {mdoc_quote_pre, mdoc_quote_post}, /* Eo */
         {mdoc_xx_pre, NULL}, /* Fx */          {mdoc_xx_pre, NULL}, /* Fx */
         {mdoc_ms_pre, NULL}, /* Ms */          {mdoc_ms_pre, NULL}, /* Ms */
         {mdoc_igndelim_pre, NULL}, /* No */          {mdoc_no_pre, NULL}, /* No */
         {mdoc_ns_pre, NULL}, /* Ns */          {mdoc_ns_pre, NULL}, /* Ns */
         {mdoc_xx_pre, NULL}, /* Nx */          {mdoc_xx_pre, NULL}, /* Nx */
         {mdoc_xx_pre, NULL}, /* Ox */          {mdoc_xx_pre, NULL}, /* Ox */
Line 281  a2width(const char *p, struct roffsu *su)
Line 281  a2width(const char *p, struct roffsu *su)
 {  {
   
         if ( ! a2roffsu(p, su, SCALE_MAX)) {          if ( ! a2roffsu(p, su, SCALE_MAX)) {
                 su->unit = SCALE_BU;                  su->unit = SCALE_EN;
                 su->scale = html_strlen(p);                  su->scale = html_strlen(p);
         }          }
 }  }
Line 328  synopsis_pre(struct html *h, const struct mdoc_node *n
Line 328  synopsis_pre(struct html *h, const struct mdoc_node *n
         }          }
 }  }
   
 /*  
  * Calculate the scaling unit passed in an `-offset' argument.  This  
  * uses either a native scaling unit (e.g., 1i, 2m), one of a set of  
  * predefined strings (indent, etc.), or the string length of the value.  
  */  
 static void  static void
 a2offs(const char *p, struct roffsu *su)  
 {  
   
         /* FIXME: "right"? */  
   
         if (0 == strcmp(p, "left"))  
                 SCALE_HS_INIT(su, 0);  
         else if (0 == strcmp(p, "indent"))  
                 SCALE_HS_INIT(su, INDENT);  
         else if (0 == strcmp(p, "indent-two"))  
                 SCALE_HS_INIT(su, INDENT * 2);  
         else if ( ! a2roffsu(p, su, SCALE_MAX))  
                 SCALE_HS_INIT(su, html_strlen(p));  
 }  
   
 static void  
 print_mdoc(MDOC_ARGS)  print_mdoc(MDOC_ARGS)
 {  {
         struct tag      *t, *tt;          struct tag      *t, *tt;
Line 994  mdoc_bl_pre(MDOC_ARGS)
Line 973  mdoc_bl_pre(MDOC_ARGS)
         /* Set the block's left-hand margin. */          /* Set the block's left-hand margin. */
   
         if (n->norm->Bl.offs) {          if (n->norm->Bl.offs) {
                 a2offs(n->norm->Bl.offs, &su);                  a2width(n->norm->Bl.offs, &su);
                 bufcat_su(h, "margin-left", &su);                  bufcat_su(h, "margin-left", &su);
         }          }
   
Line 1160  mdoc_bd_pre(MDOC_ARGS)
Line 1139  mdoc_bd_pre(MDOC_ARGS)
                 return(1);                  return(1);
         }          }
   
         SCALE_HS_INIT(&su, 0);          /* Handle the -offset argument. */
         if (n->norm->Bd.offs)  
                 a2offs(n->norm->Bd.offs, &su);  
   
           if (n->norm->Bd.offs == NULL ||
               ! strcmp(n->norm->Bd.offs, "left"))
                   SCALE_HS_INIT(&su, 0);
           else if ( ! strcmp(n->norm->Bd.offs, "indent"))
                   SCALE_HS_INIT(&su, INDENT);
           else if ( ! strcmp(n->norm->Bd.offs, "indent-two"))
                   SCALE_HS_INIT(&su, INDENT * 2);
           else
                   a2width(n->norm->Bd.offs, &su);
   
         bufinit(h);          bufinit(h);
         bufcat_su(h, "margin-left", &su);          bufcat_su(h, "margin-left", &su);
         PAIR_STYLE_INIT(&tag[0], h);          PAIR_STYLE_INIT(&tag[0], h);
Line 1894  mdoc_rs_pre(MDOC_ARGS)
Line 1881  mdoc_rs_pre(MDOC_ARGS)
   
         PAIR_CLASS_INIT(&tag, "ref");          PAIR_CLASS_INIT(&tag, "ref");
         print_otag(h, TAG_SPAN, 1, &tag);          print_otag(h, TAG_SPAN, 1, &tag);
           return(1);
   }
   
   static int
   mdoc_no_pre(MDOC_ARGS)
   {
           struct htmlpair tag;
   
           PAIR_CLASS_INIT(&tag, "none");
           print_otag(h, TAG_CODE, 1, &tag);
         return(1);          return(1);
 }  }
   

Legend:
Removed from v.1.208  
changed lines
  Added in v.1.210

CVSweb