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

Diff for /mandoc/man_html.c between version 1.112 and 1.113

version 1.112, 2015/03/03 21:11:34 version 1.113, 2015/04/02 21:36:49
Line 7 
Line 7 
  * purpose with or without fee is hereby granted, provided that the above   * purpose with or without fee is hereby granted, provided that the above
  * copyright notice and this permission notice appear in all copies.   * copyright notice and this permission notice appear in all copies.
  *   *
  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES   * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHORS DISCLAIM ALL WARRANTIES
  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF   * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR   * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR
  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES   * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN   * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF   * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
Line 26 
Line 26 
 #include <string.h>  #include <string.h>
   
 #include "mandoc_aux.h"  #include "mandoc_aux.h"
   #include "roff.h"
 #include "man.h"  #include "man.h"
 #include "out.h"  #include "out.h"
 #include "html.h"  #include "html.h"
Line 133  print_bvspace(struct html *h, const struct man_node *n
Line 134  print_bvspace(struct html *h, const struct man_node *n
 {  {
   
         if (n->body && n->body->child)          if (n->body && n->body->child)
                 if (MAN_TBL == n->body->child->type)                  if (n->body->child->type == ROFFT_TBL)
                         return;                          return;
   
         if (MAN_ROOT == n->parent->type || MAN_RS != n->parent->tok)          if (n->parent->type == ROFFT_ROOT || n->parent->tok != MAN_RS)
                 if (NULL == n->prev)                  if (NULL == n->prev)
                         return;                          return;
   
Line 208  print_man_node(MAN_ARGS)
Line 209  print_man_node(MAN_ARGS)
         t = h->tags.head;          t = h->tags.head;
   
         switch (n->type) {          switch (n->type) {
         case MAN_ROOT:          case ROFFT_ROOT:
                 man_root_pre(man, n, mh, h);                  man_root_pre(man, n, mh, h);
                 break;                  break;
         case MAN_TEXT:          case ROFFT_TEXT:
                 if ('\0' == *n->string) {                  if ('\0' == *n->string) {
                         print_paragraph(h);                          print_paragraph(h);
                         return;                          return;
Line 222  print_man_node(MAN_ARGS)
Line 223  print_man_node(MAN_ARGS)
                         print_otag(h, TAG_BR, 0, NULL);                          print_otag(h, TAG_BR, 0, NULL);
                 print_text(h, n->string);                  print_text(h, n->string);
                 return;                  return;
         case MAN_EQN:          case ROFFT_EQN:
                 if (n->flags & MAN_LINE)                  if (n->flags & MAN_LINE)
                         putchar('\n');                          putchar('\n');
                 print_eqn(h, n->eqn);                  print_eqn(h, n->eqn);
                 break;                  break;
         case MAN_TBL:          case ROFFT_TBL:
                 /*                  /*
                  * This will take care of initialising all of the table                   * This will take care of initialising all of the table
                  * state data for the first table, then tearing it down                   * state data for the first table, then tearing it down
Line 266  print_man_node(MAN_ARGS)
Line 267  print_man_node(MAN_ARGS)
         print_stagq(h, t);          print_stagq(h, t);
   
         switch (n->type) {          switch (n->type) {
         case MAN_ROOT:          case ROFFT_ROOT:
                 man_root_post(man, n, mh, h);                  man_root_post(man, n, mh, h);
                 break;                  break;
         case MAN_EQN:          case ROFFT_EQN:
                 break;                  break;
         default:          default:
                 if (mans[n->tok].post)                  if (mans[n->tok].post)
Line 282  static int
Line 283  static int
 a2width(const struct man_node *n, struct roffsu *su)  a2width(const struct man_node *n, struct roffsu *su)
 {  {
   
         if (MAN_TEXT != n->type)          if (n->type != ROFFT_TEXT)
                 return(0);                  return(0);
         if (a2roffsu(n->string, su, SCALE_EN))          if (a2roffsu(n->string, su, SCALE_EN))
                 return(1);                  return(1);
Line 384  man_SH_pre(MAN_ARGS)
Line 385  man_SH_pre(MAN_ARGS)
 {  {
         struct htmlpair  tag;          struct htmlpair  tag;
   
         if (MAN_BLOCK == n->type) {          if (n->type == ROFFT_BLOCK) {
                 mh->fl &= ~MANH_LITERAL;                  mh->fl &= ~MANH_LITERAL;
                 PAIR_CLASS_INIT(&tag, "section");                  PAIR_CLASS_INIT(&tag, "section");
                 print_otag(h, TAG_DIV, 1, &tag);                  print_otag(h, TAG_DIV, 1, &tag);
                 return(1);                  return(1);
         } else if (MAN_BODY == n->type)          } else if (n->type == ROFFT_BODY)
                 return(1);                  return(1);
   
         print_otag(h, TAG_H1, 0, NULL);          print_otag(h, TAG_H1, 0, NULL);
Line 468  man_SS_pre(MAN_ARGS)
Line 469  man_SS_pre(MAN_ARGS)
 {  {
         struct htmlpair  tag;          struct htmlpair  tag;
   
         if (MAN_BLOCK == n->type) {          if (n->type == ROFFT_BLOCK) {
                 mh->fl &= ~MANH_LITERAL;                  mh->fl &= ~MANH_LITERAL;
                 PAIR_CLASS_INIT(&tag, "subsection");                  PAIR_CLASS_INIT(&tag, "subsection");
                 print_otag(h, TAG_DIV, 1, &tag);                  print_otag(h, TAG_DIV, 1, &tag);
                 return(1);                  return(1);
         } else if (MAN_BODY == n->type)          } else if (n->type == ROFFT_BODY)
                 return(1);                  return(1);
   
         print_otag(h, TAG_H2, 0, NULL);          print_otag(h, TAG_H2, 0, NULL);
Line 484  static int
Line 485  static int
 man_PP_pre(MAN_ARGS)  man_PP_pre(MAN_ARGS)
 {  {
   
         if (MAN_HEAD == n->type)          if (n->type == ROFFT_HEAD)
                 return(0);                  return(0);
         else if (MAN_BLOCK == n->type)          else if (n->type == ROFFT_BLOCK)
                 print_bvspace(h, n);                  print_bvspace(h, n);
   
         return(1);          return(1);
Line 497  man_IP_pre(MAN_ARGS)
Line 498  man_IP_pre(MAN_ARGS)
 {  {
         const struct man_node   *nn;          const struct man_node   *nn;
   
         if (MAN_BODY == n->type) {          if (n->type == ROFFT_BODY) {
                 print_otag(h, TAG_DD, 0, NULL);                  print_otag(h, TAG_DD, 0, NULL);
                 return(1);                  return(1);
         } else if (MAN_HEAD != n->type) {          } else if (n->type != ROFFT_HEAD) {
                 print_otag(h, TAG_DL, 0, NULL);                  print_otag(h, TAG_DL, 0, NULL);
                 return(1);                  return(1);
         }          }
Line 536  man_HP_pre(MAN_ARGS)
Line 537  man_HP_pre(MAN_ARGS)
         struct roffsu    su;          struct roffsu    su;
         const struct man_node *np;          const struct man_node *np;
   
         if (MAN_HEAD == n->type)          if (n->type == ROFFT_HEAD)
                 return(0);                  return(0);
         else if (MAN_BLOCK != n->type)          else if (n->type != ROFFT_BLOCK)
                 return(1);                  return(1);
   
         np = n->head->child;          np = n->head->child;
Line 637  man_RS_pre(MAN_ARGS)
Line 638  man_RS_pre(MAN_ARGS)
         struct htmlpair  tag;          struct htmlpair  tag;
         struct roffsu    su;          struct roffsu    su;
   
         if (MAN_HEAD == n->type)          if (n->type == ROFFT_HEAD)
                 return(0);                  return(0);
         else if (MAN_BODY == n->type)          else if (n->type == ROFFT_BODY)
                 return(1);                  return(1);
   
         SCALE_HS_INIT(&su, INDENT);          SCALE_HS_INIT(&su, INDENT);
Line 659  man_UR_pre(MAN_ARGS)
Line 660  man_UR_pre(MAN_ARGS)
         struct htmlpair          tag[2];          struct htmlpair          tag[2];
   
         n = n->child;          n = n->child;
         assert(MAN_HEAD == n->type);          assert(n->type == ROFFT_HEAD);
         if (n->nchild) {          if (n->nchild) {
                 assert(MAN_TEXT == n->child->type);                  assert(n->child->type == ROFFT_TEXT);
                 PAIR_CLASS_INIT(&tag[0], "link-ext");                  PAIR_CLASS_INIT(&tag[0], "link-ext");
                 PAIR_HREF_INIT(&tag[1], n->child->string);                  PAIR_HREF_INIT(&tag[1], n->child->string);
                 print_otag(h, TAG_A, 2, tag);                  print_otag(h, TAG_A, 2, tag);
         }          }
   
         assert(MAN_BODY == n->next->type);          assert(n->next->type == ROFFT_BODY);
         if (n->next->nchild)          if (n->next->nchild)
                 n = n->next;                  n = n->next;
   

Legend:
Removed from v.1.112  
changed lines
  Added in v.1.113

CVSweb