mirror of
https://github.com/troglobit/editline.git
synced 2025-09-18 02:08:08 +08:00
Revert function pointers for rl_complete() and rl_list_possib() introduced in 0.2.2.
Instead merge afd8b4de9dca8ec6afc3 from http://github.com/heimdal/heimdal.git project. This lets rl_complete() and rl_list_possib() become wrapper functions calling a set of function pointers, set using rl_set_complete_func() and rl_set_list_possib_funct(). Each wrapper has a fallback to do filename completion, which in turn can be disabled by leaving out --enable-default-complete from the configure line. This change, admittedly quite intrusive for a library, is a better implementation in many ways. For one it is much more readable, but it also enables further adoption of other editline forks as well as a simpler implementation of GNU Readline function pointers rl_completion_entry_function and rl_attempted_completion_function at a later stage. My apologies to everyone for whom this change breaks backwards compatibility. For help on converting your code, please see examples/cli.c.
This commit is contained in:
@@ -73,12 +73,10 @@ extern int rl_quit;
|
||||
#ifdef CONFIG_SIGSTOP
|
||||
extern int rl_susp;
|
||||
#endif
|
||||
#ifdef CONFIG_DEFAULT_COMPLETE
|
||||
extern char *default_rl_complete(char *pathname, int *unique);
|
||||
extern int default_rl_list_possib(char *pathname, char ***avp);
|
||||
#endif
|
||||
extern void rl_ttyset(int Reset);
|
||||
extern void rl_add_slash(char *path, char *p);
|
||||
void rl_ttyset(int Reset);
|
||||
void rl_add_slash(char *path, char *p);
|
||||
char *rl_complete(char *token, int *match);
|
||||
int rl_list_possib(char *token, char ***av);
|
||||
|
||||
#ifndef HAVE_STDLIB_H
|
||||
extern char *getenv(const char *name);
|
||||
|
Reference in New Issue
Block a user