home *** CD-ROM | disk | FTP | other *** search
- /* USER: User word list processing for MicroSPELL 1.0
- Spell Checker and Corrector
-
- (C)opyright May 1987 by Daniel Lawrence
- All Rights Reserved
- */
-
- #include <stdio.h>
- #include "dopt.h"
- #include "dstruct.h"
- #include "ddef.h"
-
- uread(fname) /* open and read in a user dictionary */
-
- char *fname; /* name of dictionary to open */
-
- {
- register char *sp; /* temp string pointer */
- register FILE *ufp; /* user word list file handle */
- char buf[NSTRING]; /* bufer to hold user word */
-
- /* first, try to open it up..... */
- ufp = fopen(fname, "r");
- if (ufp == NULL) {
- printf("%%Can not find user word list %s\n", fname);
- return(FALSE);
- }
-
- /* if this is the first one, remember the name for later */
- if (*userlist == 0)
- strcpy(userlist, fname);
-
- /* and now, dump the words into the common word list */
- while (numfiltr < MAXCOM) {
- if (fgets(buf, NSTRING - 1, ufp) == NULL)
- break;
- buf[strlen(buf)-1] = 0; /* get rid of the newline */
-
- /* if it's a blank line, ignore it */
- if (buf[0] == 0)
- continue;
-
- /* get room for it...*/
- if ((sp = malloc(strlen(buf)+1)) == NULL) {
- fclose(ufp);
- return(FALSE);
- }
-
- /* and store it */
- strcpy(sp, buf);
- cword[numfiltr++] = sp;
- }
-
- /* complain if the list is full */
- if (numfiltr == MAXCOM)
- printf("%%User word list space filled\n");
- fclose(ufp);
- return(TRUE);
- }
-