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

Diff for /mandoc/Attic/mdoc_strings.c between version 1.8 and 1.12

version 1.8, 2009/06/22 12:22:35 version 1.12, 2009/10/27 08:26:12
Line 17 
Line 17 
 #include <sys/types.h>  #include <sys/types.h>
   
 #include <assert.h>  #include <assert.h>
 #include <ctype.h>  
 #include <stdlib.h>  #include <stdlib.h>
 #include <stdio.h>  #include <stdio.h>
 #include <string.h>  #include <string.h>
   #include <time.h>
   
 #include "libmdoc.h"  #include "libmdoc.h"
   
Line 31  struct mdoc_secname {
Line 31  struct mdoc_secname {
         enum mdoc_sec    sec;   /* Corresponding section. */          enum mdoc_sec    sec;   /* Corresponding section. */
 };  };
   
 #define SECNAME_MAX     (18)  #define SECNAME_MAX     (20)
   
 static  const struct mdoc_secname secnames[SECNAME_MAX] = {  static  const struct mdoc_secname secnames[SECNAME_MAX] = {
         { "NAME", SEC_NAME },          { "NAME", SEC_NAME },
Line 39  static const struct mdoc_secname secnames[SECNAME_MAX]
Line 39  static const struct mdoc_secname secnames[SECNAME_MAX]
         { "SYNOPSIS", SEC_SYNOPSIS },          { "SYNOPSIS", SEC_SYNOPSIS },
         { "DESCRIPTION", SEC_DESCRIPTION },          { "DESCRIPTION", SEC_DESCRIPTION },
         { "IMPLEMENTATION NOTES", SEC_IMPLEMENTATION },          { "IMPLEMENTATION NOTES", SEC_IMPLEMENTATION },
           { "EXIT STATUS", SEC_EXIT_STATUS },
         { "RETURN VALUES", SEC_RETURN_VALUES },          { "RETURN VALUES", SEC_RETURN_VALUES },
         { "ENVIRONMENT", SEC_ENVIRONMENT },          { "ENVIRONMENT", SEC_ENVIRONMENT },
         { "FILES", SEC_FILES },          { "FILES", SEC_FILES },
Line 52  static const struct mdoc_secname secnames[SECNAME_MAX]
Line 53  static const struct mdoc_secname secnames[SECNAME_MAX]
         { "AUTHORS", SEC_AUTHORS },          { "AUTHORS", SEC_AUTHORS },
         { "CAVEATS", SEC_CAVEATS },          { "CAVEATS", SEC_CAVEATS },
         { "BUGS", SEC_BUGS },          { "BUGS", SEC_BUGS },
           { "SECURITY CONSIDERATIONS", SEC_SECURITY }
 };  };
   
 #ifdef __linux__  #ifdef __linux__
Line 59  extern char  *strptime(const char *, const char *, str
Line 61  extern char  *strptime(const char *, const char *, str
 #endif  #endif
   
   
 size_t  
 mdoc_isescape(const char *p)  
 {  
         size_t           c;  
   
         if ('\\' != *p++)  
                 return(0);  
   
         switch (*p) {  
         case ('\\'):  
                 /* FALLTHROUGH */  
         case ('\''):  
                 /* FALLTHROUGH */  
         case ('`'):  
                 /* FALLTHROUGH */  
         case ('q'):  
                 /* FALLTHROUGH */  
         case ('-'):  
                 /* FALLTHROUGH */  
         case ('~'):  
                 /* FALLTHROUGH */  
         case ('^'):  
                 /* FALLTHROUGH */  
         case ('%'):  
                 /* FALLTHROUGH */  
         case ('0'):  
                 /* FALLTHROUGH */  
         case (' '):  
                 /* FALLTHROUGH */  
         case ('|'):  
                 /* FALLTHROUGH */  
         case ('&'):  
                 /* FALLTHROUGH */  
         case ('.'):  
                 /* FALLTHROUGH */  
         case (':'):  
                 /* FALLTHROUGH */  
         case ('e'):  
                 return(2);  
         case ('*'):  
                 if (0 == *++p || ! isgraph((u_char)*p))  
                         return(0);  
                 switch (*p) {  
                 case ('('):  
                         if (0 == *++p || ! isgraph((u_char)*p))  
                                 return(0);  
                         return(4);  
                 case ('['):  
                         for (c = 3, p++; *p && ']' != *p; p++, c++)  
                                 if ( ! isgraph((u_char)*p))  
                                         break;  
                         return(*p == ']' ? c : 0);  
                 default:  
                         break;  
                 }  
                 return(3);  
         case ('('):  
                 if (0 == *++p || ! isgraph((u_char)*p))  
                         return(0);  
                 if (0 == *++p || ! isgraph((u_char)*p))  
                         return(0);  
                 return(4);  
         case ('['):  
                 break;  
         default:  
                 return(0);  
         }  
   
         for (c = 3, p++; *p && ']' != *p; p++, c++)  
                 if ( ! isgraph((u_char)*p))  
                         break;  
   
         return(*p == ']' ? c : 0);  
 }  
   
   
 int  int
 mdoc_iscdelim(char p)  mdoc_iscdelim(char p)
 {  {
Line 205  mdoc_atotime(const char *p)
Line 131  mdoc_atotime(const char *p)
         struct tm        tm;          struct tm        tm;
         char            *pp;          char            *pp;
   
         bzero(&tm, sizeof(struct tm));          memset(&tm, 0, sizeof(struct tm));
   
         if (0 == strcmp(p, "$" "Mdocdate$"))          if (0 == strcmp(p, "$" "Mdocdate$"))
                 return(time(NULL));                  return(time(NULL));

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.12

CVSweb