diff --git a/include/editline.h b/include/editline.h index eb1a569..7ae8810 100644 --- a/include/editline.h +++ b/include/editline.h @@ -114,6 +114,8 @@ extern void add_history (const char *line); extern int read_history (const char *filename); extern int write_history (const char *filename); +extern rl_getc_func_t *rl_set_getc_func(rl_getc_func_t *func); + extern rl_completion_func_t *rl_attempted_completion_function; extern rl_complete_func_t *rl_set_complete_func (rl_complete_func_t *func); extern rl_list_possib_func_t *rl_set_list_possib_func (rl_list_possib_func_t *func); diff --git a/src/editline.c b/src/editline.c index 1d0cfa6..2f34835 100644 --- a/src/editline.c +++ b/src/editline.c @@ -1948,6 +1948,13 @@ el_status_t el_bind_key_in_metamap(int key, el_keymap_func_t function) return el_bind_key_in_map(key, function, MetaMap, NELEMS(MetaMap)); } +rl_getc_func_t *rl_set_getc_func(rl_getc_func_t *func) +{ + rl_getc_func_t *old = rl_getc_function; + rl_getc_function = func; + return old; +} + /** * Local Variables: * c-file-style: "k&r"