diff options
Diffstat (limited to 'src/evalfunc.c')
-rw-r--r-- | src/evalfunc.c | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/evalfunc.c b/src/evalfunc.c index 4a6332b138..63aa34c5d3 100644 --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -3259,11 +3259,18 @@ f_feedkeys(typval_T *argvars, typval_T *rettv UNUSED) /* Avoid a 1 second delay when the keys start Insert mode. */ msg_scroll = FALSE; - if (!dangerous) - ++ex_normal_busy; - exec_normal(TRUE); - if (!dangerous) - --ex_normal_busy; +#ifdef FEAT_TERMINAL + if (term_use_loop()) + terminal_loop(FALSE); + else +#endif + { + if (!dangerous) + ++ex_normal_busy; + exec_normal(TRUE); + if (!dangerous) + --ex_normal_busy; + } msg_scroll |= save_msg_scroll; } } |