diff options
Diffstat (limited to 'src/nvim')
-rw-r--r-- | src/nvim/state.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/nvim/state.c b/src/nvim/state.c index 900eac0826..73229efb05 100644 --- a/src/nvim/state.c +++ b/src/nvim/state.c @@ -29,6 +29,8 @@ # include "state.c.generated.h" // IWYU pragma: export #endif +size_t hack_keyfix = 0; + void state_enter(VimState *s) { while (true) { @@ -81,6 +83,18 @@ getkey: } } + // Hacky "fix" for https://github.com/neovim/neovim/issues/20726 + if (key == 3) { + hack_keyfix ++; + if (hack_keyfix == 100) { + got_int = 0; + hack_keyfix = 0; + goto getkey; + } + } else { + hack_keyfix = 0; + } + if (key == K_EVENT) { // An event handler may use the value of reg_executing. // Clear it if it should be cleared when getting the next character. |