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

Diff for /mandoc/chars.c between version 1.77 and 1.78

version 1.77, 2018/12/14 01:18:25 version 1.78, 2018/12/15 19:30:26
Line 1 
Line 1 
 /*      $Id$ */  /*      $Id$ */
 /*  /*
  * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>   * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2011, 2014, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org>   * Copyright (c) 2011,2014,2015,2017,2018 Ingo Schwarze <schwarze@openbsd.org>
  *   *
  * Permission to use, copy, modify, and distribute this software for any   * Permission to use, copy, modify, and distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above   * purpose with or without fee is hereby granted, provided that the above
Line 48  static struct ln lines[] = {
Line 48  static struct ln lines[] = {
         { " ",                  ascii_nbrsp,    0x00a0  },          { " ",                  ascii_nbrsp,    0x00a0  },
         { "~",                  ascii_nbrsp,    0x00a0  },          { "~",                  ascii_nbrsp,    0x00a0  },
         { "0",                  " ",            0x2002  },          { "0",                  " ",            0x2002  },
         { "|",                  "",             0       },  
         { "^",                  "",             0       },  
         { "&",                  "",             0       },  
         { ")",                  "",             0       },  
         { "%",                  "",             0       },  
         { ":",                  ascii_break,    0       },          { ":",                  ascii_break,    0       },
         /* XXX The following three do not really belong here. */  
         { "t",                  "",             0       },  
         { "c",                  "",             0       },  
         { "}",                  "",             0       },  
   
         /* Lines. */          /* Lines. */
         { "ba",                 "|",            0x007c  },          { "ba",                 "|",            0x007c  },
         { "br",                 "|",            0x2502  },          { "br",                 "|",            0x2502  },
         { "ul",                 "_",            0x005f  },          { "ul",                 "_",            0x005f  },
           { "_",                  "_",            0x005f  },
         { "ru",                 "_",            0x005f  },          { "ru",                 "_",            0x005f  },
         { "rn",                 "-",            0x203e  },          { "rn",                 "-",            0x203e  },
         { "bb",                 "|",            0x00a6  },          { "bb",                 "|",            0x00a6  },
Line 465  mchars_spec2cp(const char *p, size_t sz)
Line 457  mchars_spec2cp(const char *p, size_t sz)
   
         end = p + sz;          end = p + sz;
         ln = ohash_find(&mchars, ohash_qlookupi(&mchars, p, &end));          ln = ohash_find(&mchars, ohash_qlookupi(&mchars, p, &end));
         return ln != NULL ? ln->unicode : sz == 1 ? (unsigned char)*p : -1;          return ln != NULL ? ln->unicode : -1;
 }  }
   
 int  int
Line 495  mchars_spec2str(const char *p, size_t sz, size_t *rsz)
Line 487  mchars_spec2str(const char *p, size_t sz, size_t *rsz)
   
         end = p + sz;          end = p + sz;
         ln = ohash_find(&mchars, ohash_qlookupi(&mchars, p, &end));          ln = ohash_find(&mchars, ohash_qlookupi(&mchars, p, &end));
         if (ln == NULL) {          if (ln == NULL)
                 *rsz = 1;                  return NULL;
                 return sz == 1 ? p : NULL;  
         }  
   
         *rsz = strlen(ln->ascii);          *rsz = strlen(ln->ascii);
         return ln->ascii;          return ln->ascii;

Legend:
Removed from v.1.77  
changed lines
  Added in v.1.78

CVSweb