X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=dict%2Fdictext.c;h=8f49431393cb2cf5c7976e565fed256ee7a66ae3;hb=e5ebc859654d84aa9098142b34015648d8e333de;hp=8554a7a6ca2aa679e68aab24939983ee935283f5;hpb=b879b04a092d5b00cc866cf16f755e55053d2e89;p=idzebra-moved-to-github.git diff --git a/dict/dictext.c b/dict/dictext.c index 8554a7a..8f49431 100644 --- a/dict/dictext.c +++ b/dict/dictext.c @@ -1,10 +1,22 @@ /* - * Copyright (C) 1994, Index Data I/S + * Copyright (C) 1994-1999, Index Data * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: dictext.c,v $ - * Revision 1.4 1995-09-04 12:33:31 adam + * Revision 1.8 2000-09-05 14:04:05 adam + * Updates for prefix 'yaz_' for YAZ log functions. + * + * Revision 1.7 1999/02/02 14:50:18 adam + * Updated WIN32 code specific sections. Changed header. + * + * Revision 1.6 1996/10/29 14:00:02 adam + * Page size given by DICT_DEFAULT_PAGESIZE in dict.h. + * + * Revision 1.5 1996/01/31 21:03:59 adam + * Extra options. + * + * Revision 1.4 1995/09/04 12:33:31 adam * Various cleanup. YAZ util used instead. * * Revision 1.3 1994/10/04 17:46:54 adam @@ -24,7 +36,7 @@ #include #include -#include +#include char *prog; @@ -32,12 +44,13 @@ int main (int argc, char **argv) { char *arg; int ret; + int use8 = 0; char *inputfile = NULL; FILE *ipf = stdin; char ipf_buf[1024]; prog = *argv; - while ((ret = options ("vh", argv, argc, &arg)) != -2) + while ((ret = options ("8vh", argv, argc, &arg)) != -2) { if (ret == 0) { @@ -51,14 +64,16 @@ int main (int argc, char **argv) } else if (ret == 'v') { - log_init (log_mask_str(arg), prog, NULL); + yaz_log_init (yaz_log_mask_str(arg), prog, NULL); } else if (ret == 'h') { fprintf (stderr, "usage:\n" - " %s [-h] [-v n] [file]\n", prog); + " %s [-8] [-h] [-v n] [file]\n", prog); exit (1); } + else if (ret == '8') + use8 = 1; else { logf (LOG_FATAL, "Unknown option '-%s'", arg); @@ -79,11 +94,14 @@ int main (int argc, char **argv) char *ipf_ptr = ipf_buf; for (;*ipf_ptr && *ipf_ptr != '\n';ipf_ptr++) { - if (isalpha(*ipf_ptr) || *ipf_ptr == '_') + if ((use8 && *ipf_ptr<0) + || (*ipf_ptr > 0 && isalpha(*ipf_ptr)) + || *ipf_ptr == '_') { int i = 1; - while (ipf_ptr[i] && (isalnum(ipf_ptr[i]) || - ipf_ptr[i] == '_')) + while (ipf_ptr[i] && ((use8 && ipf_ptr[i] < 0) + || (ipf_ptr[i]>0 && isalnum(ipf_ptr[i])) + || ipf_ptr[i] == '_')) i++; if (ipf_ptr[i]) ipf_ptr[i++] = '\0';