[BACK]Return to gentexi.c CVS log [TXT][DIR] Up to [local] / OpenXM / src / asir-contrib / packages / doc

Diff for /OpenXM/src/asir-contrib/packages/doc/Attic/gentexi.c between version 1.2 and 1.3

version 1.2, 2002/01/27 08:18:52 version 1.3, 2002/02/09 08:50:48
Line 1 
Line 1 
  /*  $OpenXM: OpenXM/src/asir-contrib/packages/doc/gentexi.c,v 1.1 2002/01/27 07:13:28 takayama Exp $  */   /*  $OpenXM: OpenXM/src/asir-contrib/packages/doc/gentexi.c,v 1.2 2002/01/27 08:18:52 takayama Exp $  */
   
 #include <stdio.h>  #include <stdio.h>
 int Debug = 0;  int Debug = 0;
Line 16  struct item {
Line 16  struct item {
   char *shortDescription;    char *shortDescription;
   char *description;    char *description;
   char *examplev[VMAX];    char *examplev[VMAX];
     char *exampleDescv[VMAX];
   int examplec;    int examplec;
   int refc;    int refc;
   char *refv[VMAX];    char *refv[VMAX];
     char *author;
 };  };
 struct item *getItem(void);  struct item *getItem(void);
 char *str(char *key);  char *str(char *key);
Line 135  struct item * newItem(){
Line 137  struct item * newItem(){
   }    }
   a->argc = 0; a->optc = 0; a->refc=0; a->examplec = 0;    a->argc = 0; a->optc = 0; a->refc=0; a->examplec = 0;
   a->category = a->category2 = a->name = a->shortDescription    a->category = a->category2 = a->name = a->shortDescription
     = a->description = NULL;      = a->description = a->author = NULL;
   return a;    return a;
 }  }
   
Line 195  printItem(struct item *it) {
Line 197  printItem(struct item *it) {
     printf("description=%s\n",it->description);      printf("description=%s\n",it->description);
   for (i=0; i <it->examplec; i++)    for (i=0; i <it->examplec; i++)
     printf("examplev[%d]=%s\n",i,it->examplev[i]);      printf("examplev[%d]=%s\n",i,it->examplev[i]);
     for (i=0; i <it->examplec; i++)
       printf("exampleDescv[%d]=%s\n",i,it->exampleDescv[i]);
   for (i=0; i<it->refc; i++)    for (i=0; i<it->refc; i++)
     printf("  refv[%d]=%s\n",i,it->refv[i]);      printf("  refv[%d]=%s\n",i,it->refv[i]);
     if (it->author != NULL)
       printf("author=%s\n",it->author);
   printf("\n");    printf("\n");
 }  }
   
Line 323  struct item *getItem() {
Line 329  struct item *getItem() {
     /* Get Description or Examples */      /* Get Description or Examples */
     if (strcmp(key,"end:") == 0) break;      if (strcmp(key,"end:") == 0) break;
     if (strcmp(key,"description:") == 0 ||      if (strcmp(key,"description:") == 0 ||
         strcmp(key,"example:") == 0) {          strcmp(key,"author:") == 0 ||
           strcmp(key,"example:") == 0 ||
                   strcmp(key,"example_description:") ==0 ) {
       pp = p;        pp = p;
       strcpy(key2,key);        strcpy(key2,key);
       do {        do {
Line 337  struct item *getItem() {
Line 345  struct item *getItem() {
       }        }
       if (strcmp(key2,"example:") == 0) {        if (strcmp(key2,"example:") == 0) {
         it->examplev[examplec++] = str2(&(S[pp]),pOld-pp);          it->examplev[examplec++] = str2(&(S[pp]),pOld-pp);
           it->exampleDescv[examplec-1] = "";
         it->examplec = examplec;          it->examplec = examplec;
         if (examplec > VMAX-1) {          if (examplec > VMAX-1) {
           fprintf(stderr,"Too many examples. \n");            fprintf(stderr,"Too many examples. \n");
           exit(20);            exit(20);
         }          }
       }        }
         if (strcmp(key2,"example_description:") == 0) {
           it->exampleDescv[examplec-1] = str2(&(S[pp]),pOld-pp);
         }
         if (strcmp(key2,"author:") == 0) {
           it->author = str2(&(S[pp]),pOld-pp);
         }
     }else if (strcmp(key,"ref:") == 0) {      }else if (strcmp(key,"ref:") == 0) {
       argc = 0;        argc = 0;
       while ((pp=nextToken(key,LIMIT)) >= 0) {        while ((pp=nextToken(key,LIMIT)) >= 0) {
Line 358  struct item *getItem() {
Line 373  struct item *getItem() {
         }          }
       }        }
     }else{      }else{
       fprintf(stderr,"Unknown keyword at %s\n",it->name);        fprintf(stderr,"Unknown keyword << %s >> at %s\n",key, it->name);
       exit(10);        exit(10);
     }      }
   }while (p >= 0);    }while (p >= 0);
Line 447  printTexi(FILE *fp, struct item *it) {
Line 462  printTexi(FILE *fp, struct item *it) {
   fprintf(fp,"@c @item \n");    fprintf(fp,"@c @item \n");
   fprintf(fp,"@c @end itemize\n");    fprintf(fp,"@c @end itemize\n");
   
     if (it->description != NULL) {
       fprintf(fp,"%s\n\n",it->description);
     }
   
   if (it->examplec > 0) {    if (it->examplec > 0) {
     for (i=0; i<it->examplec; i++) {      for (i=0; i<it->examplec; i++) {
             if (it->examplec == 1) {
           fprintf(fp,"Example:\n");
             }else{
           fprintf(fp,"Example %d:\n",i);
             }
       fprintf(fp,"@example\n");        fprintf(fp,"@example\n");
       fprintf(fp,"%s\n",it->examplev[i]);        fprintf(fp,"%s\n",it->examplev[i]);
       if (GenExample) {        if (GenExample) {
         outputOfExample(it->examplev[i]);          outputOfExample(it->examplev[i]);
       }        }
       fprintf(fp,"@end example\n");        fprintf(fp,"@end example\n");
             if (it->exampleDescv[i] != NULL && strlen(it->exampleDescv[i]) > 0) {
                   fprintf(fp,"%s\n\n",it->exampleDescv[i]);
             }
     }      }
     }
     if (it->author != NULL) {
       fprintf(fp,"Author : %s\n\n",it->author);
   }    }
   if (it->refc > 0) {    if (it->refc > 0) {
     fprintf(fp,"@table @t\n");      fprintf(fp,"@table @t\n");

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>