aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/getchar.c
diff options
context:
space:
mode:
authorerrael <errael@raelity.com>2024-10-31 18:11:15 -0700
committerGitHub <noreply@github.com>2024-11-01 09:11:15 +0800
commitb34e137e43d359c8db4fb76028dea3b410842aff (patch)
tree3172f9aa1819934d35e9f6220f0676e135a3fbe7 /src/nvim/getchar.c
parent8585183ba2f27cb246b79c017149a878a543c82f (diff)
downloadrneovim-b34e137e43d359c8db4fb76028dea3b410842aff.tar.gz
rneovim-b34e137e43d359c8db4fb76028dea3b410842aff.tar.bz2
rneovim-b34e137e43d359c8db4fb76028dea3b410842aff.zip
feat(lua): allow vim.on_key() callback to consume the key (#30939)
Diffstat (limited to 'src/nvim/getchar.c')
-rw-r--r--src/nvim/getchar.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/nvim/getchar.c b/src/nvim/getchar.c
index 472bc3a850..c346bce0b7 100644
--- a/src/nvim/getchar.c
+++ b/src/nvim/getchar.c
@@ -1772,7 +1772,9 @@ int vgetc(void)
// Execute Lua on_key callbacks.
kvi_push(on_key_buf, NUL);
- nlua_execute_on_key(c, on_key_buf.items);
+ if (nlua_execute_on_key(c, on_key_buf.items)) {
+ c = K_IGNORE;
+ }
kvi_destroy(on_key_buf);
kvi_init(on_key_buf);