version 1.146, 2018/01/01 22:32:46 |
version 1.146.2.1, 2018/06/25 07:25:35 |
|
|
char *rl_line_buffer = NULL; |
char *rl_line_buffer = NULL; |
rl_vcpfunc_t *rl_linefunc = NULL; |
rl_vcpfunc_t *rl_linefunc = NULL; |
int rl_done = 0; |
int rl_done = 0; |
VFunction *rl_event_hook = NULL; |
rl_hook_func_t *rl_event_hook = NULL; |
KEYMAP_ENTRY_ARRAY emacs_standard_keymap, |
KEYMAP_ENTRY_ARRAY emacs_standard_keymap, |
emacs_meta_keymap, |
emacs_meta_keymap, |
emacs_ctlx_keymap; |
emacs_ctlx_keymap; |
Line 429 readline(const char *p) |
|
Line 429 readline(const char *p) |
|
if (rl_pre_input_hook) |
if (rl_pre_input_hook) |
(*rl_pre_input_hook)(NULL, 0); |
(*rl_pre_input_hook)(NULL, 0); |
|
|
if (rl_event_hook && !(e->el_flags&NO_TTY)) { |
if (rl_event_hook && !(e->el_flags & NO_TTY)) { |
el_set(e, EL_GETCFN, _rl_event_read_char); |
el_set(e, EL_GETCFN, _rl_event_read_char); |
used_event_hook = 1; |
used_event_hook = 1; |
} |
} |
Line 2074 rl_callback_read_char(void) |
|
Line 2074 rl_callback_read_char(void) |
|
if (done && rl_linefunc != NULL) { |
if (done && rl_linefunc != NULL) { |
el_set(e, EL_UNBUFFERED, 0); |
el_set(e, EL_UNBUFFERED, 0); |
if (done == 2) { |
if (done == 2) { |
if ((wbuf = strdup(buf)) != NULL) |
if ((wbuf = strdup(buf)) != NULL) |
wbuf[count] = '\0'; |
wbuf[count] = '\0'; |
} else |
} else |
wbuf = NULL; |
wbuf = NULL; |
(*(void (*)(const char *))rl_linefunc)(wbuf); |
(*(void (*)(const char *))rl_linefunc)(wbuf); |
if (!rl_already_prompted) { |
el_set(e, EL_UNBUFFERED, 1); |
el_set(e, EL_UNBUFFERED, 1); |
|
rl_already_prompted = 1; |
|
} |
|
} |
} |
} |
} |
|
|