X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=client%2Ftabcomplete.c;h=870188aa5e36f7fcbc1e705d17cf3df5b97ec88a;hp=01bb0e0914225378d6a44fea35ee77280d80aafb;hb=248491b25960ff7c08860dd0065f7e04cc550e90;hpb=2ba3d1d3bf2b57c7ac462b347cb18f06820ac73a diff --git a/client/tabcomplete.c b/client/tabcomplete.c index 01bb0e0..870188a 100644 --- a/client/tabcomplete.c +++ b/client/tabcomplete.c @@ -1,8 +1,8 @@ /* - * Copyright (C) 1995-2005, Index Data ApS + * Copyright (C) 1995-2006, Index Data ApS * See the file LICENSE for details. * - * $Id: tabcomplete.c,v 1.11 2005-06-24 19:56:52 adam Exp $ + * $Id: tabcomplete.c,v 1.15 2006-05-07 19:43:00 adam Exp $ */ #include @@ -12,7 +12,7 @@ #include #include "tabcomplete.h" -extern char** curret_global_list; +extern char** current_global_list; /* *************************************************************************** * @@ -21,7 +21,8 @@ extern char** curret_global_list; * ***************************************************************************/ char* complete_from_list(char* completions[], const char *text, int state) -{ +{ +#if HAVE_READLINE_READLINE_H static int idx; if(!completions) return NULL; @@ -34,12 +35,13 @@ char* complete_from_list(char* completions[], const char *text, int state) _strnicmp #else strncasecmp -#endif +#endif (completions[idx],text,strlen(text))) { ++idx; /* skip this entry on the next run */ return (char*)strdup(completions[idx-1]); }; }; +#endif return NULL; } @@ -70,16 +72,17 @@ void oid_loader(struct oident* oid, void* data_) if((oid->oclass == CLASS_GENERAL) || (oid->oclass == data->oclass)) { if(data->index==data->max) { - data->values=(char**)realloc(data->values,((data->max+1)*2)*sizeof(char*)); - data->max=(data->max+1)*2 - 1; + data->values=(char**)realloc(data->values,((data->max+1)*2)*sizeof(char*)); + data->max=(data->max+1)*2 - 1; }; data->values[data->index]=oid->desc; - ++data->index; + ++data->index; } } -char** build_list_for_oclass(oid_class oclass) { - oid_callback_t data; +char** build_list_for_oclass(oid_class oclass) +{ + oid_callback_t data; data.values = (char **) calloc(10,sizeof(char*)); data.index = 0; data.max = 9; @@ -88,7 +91,7 @@ char** build_list_for_oclass(oid_class oclass) { oid_trav(oid_loader, &data); data.values[data.index]=0; - return data.values; + return data.values; } /* *************************************************************************** @@ -115,32 +118,40 @@ char* complete_format(const char* text, int state) char** list=build_list_for_oclass(CLASS_RECSYN); char* res=complete_from_list(list,text,state); - free(list); + free(list); return res; } char* complete_schema(const char* text, int state) { - char** list=build_list_for_oclass(CLASS_SCHEMA); - char* res=complete_from_list(list,text,state); + char** list = build_list_for_oclass(CLASS_SCHEMA); + char* res = complete_from_list(list,text,state); - free(list); + free(list); return res; } char* complete_attributeset(const char* text, int state) { - char** list=build_list_for_oclass(CLASS_ATTSET); - char* res=complete_from_list(list,text,state); + char** list = build_list_for_oclass(CLASS_ATTSET); + char* res = complete_from_list(list,text,state); - free(list); + free(list); return res; } char* default_completer(const char* text, int state) { - return complete_from_list(curret_global_list,text,state); + return complete_from_list(current_global_list, text, state); } +/* + * Local variables: + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ +