mirror of
https://github.com/neovim/neovim.git
synced 2025-09-12 06:18:16 +00:00
vim-patch:7.4.1151
Problem: Missing change to eval.c
Solution: Also change feedkeys().
5f8a14b9de
This commit is contained in:
@@ -57,6 +57,7 @@ void vim_feedkeys(String keys, String mode, Boolean escape_csi)
|
|||||||
bool remap = true;
|
bool remap = true;
|
||||||
bool insert = false;
|
bool insert = false;
|
||||||
bool typed = false;
|
bool typed = false;
|
||||||
|
bool execute = false;
|
||||||
|
|
||||||
if (keys.size == 0) {
|
if (keys.size == 0) {
|
||||||
return;
|
return;
|
||||||
@@ -68,6 +69,7 @@ void vim_feedkeys(String keys, String mode, Boolean escape_csi)
|
|||||||
case 'm': remap = true; break;
|
case 'm': remap = true; break;
|
||||||
case 't': typed = true; break;
|
case 't': typed = true; break;
|
||||||
case 'i': insert = true; break;
|
case 'i': insert = true; break;
|
||||||
|
case 'x': execute = true; break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -86,8 +88,12 @@ void vim_feedkeys(String keys, String mode, Boolean escape_csi)
|
|||||||
xfree(keys_esc);
|
xfree(keys_esc);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (vgetc_busy)
|
if (vgetc_busy) {
|
||||||
typebuf_was_filled = true;
|
typebuf_was_filled = true;
|
||||||
|
}
|
||||||
|
if (execute) {
|
||||||
|
exec_normal(true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Passes input keys to Neovim. Unlike `vim_feedkeys`, this will use a
|
/// Passes input keys to Neovim. Unlike `vim_feedkeys`, this will use a
|
||||||
|
@@ -7863,7 +7863,10 @@ void exec_normal_cmd(char_u *cmd, int remap, bool silent)
|
|||||||
exec_normal(false);
|
exec_normal(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void exec_normal(int was_typed)
|
/// Execute normal_cmd() until there is no typeahead left.
|
||||||
|
///
|
||||||
|
/// @param was_typed whether or not something was typed
|
||||||
|
void exec_normal(bool was_typed)
|
||||||
{
|
{
|
||||||
oparg_T oa;
|
oparg_T oa;
|
||||||
|
|
||||||
|
@@ -1754,9 +1754,9 @@ static int vgetorpeek(int advance)
|
|||||||
|| ((compl_cont_status & CONT_LOCAL)
|
|| ((compl_cont_status & CONT_LOCAL)
|
||||||
&& (c1 == Ctrl_N || c1 == Ctrl_P)))
|
&& (c1 == Ctrl_N || c1 == Ctrl_P)))
|
||||||
) {
|
) {
|
||||||
if (c1 == K_SPECIAL)
|
if (c1 == K_SPECIAL) {
|
||||||
nolmaplen = 2;
|
nolmaplen = 2;
|
||||||
else {
|
} else {
|
||||||
LANGMAP_ADJUST(c1, (State & (CMDLINE | INSERT)) == 0
|
LANGMAP_ADJUST(c1, (State & (CMDLINE | INSERT)) == 0
|
||||||
&& get_real_state() != SELECTMODE);
|
&& get_real_state() != SELECTMODE);
|
||||||
nolmaplen = 0;
|
nolmaplen = 0;
|
||||||
|
@@ -542,7 +542,7 @@ static int included_patches[] = {
|
|||||||
// 1154 NA
|
// 1154 NA
|
||||||
// 1153,
|
// 1153,
|
||||||
// 1152 NA
|
// 1152 NA
|
||||||
// 1151,
|
1151,
|
||||||
1150,
|
1150,
|
||||||
1149,
|
1149,
|
||||||
// 1148 NA
|
// 1148 NA
|
||||||
|
Reference in New Issue
Block a user