summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlbert Cervin <albert@acervin.com>2025-11-27 11:06:16 +0100
committerAlbert Cervin <albert@acervin.com>2025-11-27 11:06:16 +0100
commit850916c62217d2bdcdc943e7238175954e3d1d5e (patch)
tree8096dc9dd80bf7704ed9e2215b40dc1015bf420e
parentf8e2cfcb4b481667957a5d7f5c33e79fd04ae74e (diff)
downloaddged-850916c62217d2bdcdc943e7238175954e3d1d5e.tar.gz
dged-850916c62217d2bdcdc943e7238175954e3d1d5e.tar.xz
dged-850916c62217d2bdcdc943e7238175954e3d1d5e.zip
Add bindings for numpad enter
-rw-r--r--src/dged/keyboard.h2
-rw-r--r--src/main/bindings.c2
-rw-r--r--src/main/cmds.c1
-rw-r--r--src/main/completion.c1
-rw-r--r--src/main/lsp/choice-buffer.c1
-rw-r--r--src/main/lsp/diagnostics.c1
-rw-r--r--src/main/lsp/references.c1
7 files changed, 9 insertions, 0 deletions
diff --git a/src/dged/keyboard.h b/src/dged/keyboard.h
index 1a8a149..bc4a8d0 100644
--- a/src/dged/keyboard.h
+++ b/src/dged/keyboard.h
@@ -27,6 +27,8 @@ enum modifiers {
#define TAB Ctrl, 'I'
/** Enter key */
#define ENTER Ctrl, 'M'
+/** Numpad Enter key */
+#define NUMPAD_ENTER Ctrl, 'J'
/** Delete key */
#define DELETE Spec, '3'
diff --git a/src/main/bindings.c b/src/main/bindings.c
index db6c924..9712f0f 100644
--- a/src/main/bindings.c
+++ b/src/main/bindings.c
@@ -55,6 +55,7 @@ void set_default_buffer_bindings(struct keymap *keymap) {
BINDING(Spec, '5', "scroll-up"),
BINDING(ENTER, "newline"),
+ BINDING(NUMPAD_ENTER, "newline"),
BINDING(TAB, "indent"),
BINDING(Spec, 'Z', "indent-alt"),
@@ -158,6 +159,7 @@ void init_bindings(void) {
*/
struct binding minibuffer_binds[] = {
ANONYMOUS_BINDING(ENTER, &execute_minibuffer_command),
+ ANONYMOUS_BINDING(NUMPAD_ENTER, &execute_minibuffer_command),
};
struct keymap minibuffer_map = keymap_create("minibuffer", 8);
keymap_bind_keys(&minibuffer_map, minibuffer_binds,
diff --git a/src/main/cmds.c b/src/main/cmds.c
index a7b509d..f9444e0 100644
--- a/src/main/cmds.c
+++ b/src/main/cmds.c
@@ -460,6 +460,7 @@ int32_t buffer_list(struct command_ctx ctx, int argc, const char *argv[]) {
struct binding bindings[] = {
ANONYMOUS_BINDING(ENTER, &buflist_visit),
+ ANONYMOUS_BINDING(NUMPAD_ENTER, &buflist_visit),
ANONYMOUS_BINDING(None, 'k', &buflist_kill),
ANONYMOUS_BINDING(None, 'q', &buflist_close),
ANONYMOUS_BINDING(None, 's', &buflist_save),
diff --git a/src/main/completion.c b/src/main/completion.c
index 7a20bce..a162652 100644
--- a/src/main/completion.c
+++ b/src/main/completion.c
@@ -279,6 +279,7 @@ static void open_completion(struct completion_state *state) {
ANONYMOUS_BINDING(DOWN, &next_completion_command),
ANONYMOUS_BINDING(UP, &prev_completion_command),
ANONYMOUS_BINDING(ENTER, &insert_completion_command),
+ ANONYMOUS_BINDING(NUMPAD_ENTER, &insert_completion_command),
ANONYMOUS_BINDING(Ctrl, 'V', &scroll_down_completions_command),
ANONYMOUS_BINDING(Meta, 'v', &scroll_up_completions_command),
diff --git a/src/main/lsp/choice-buffer.c b/src/main/lsp/choice-buffer.c
index 44186bd..b31464d 100644
--- a/src/main/lsp/choice-buffer.c
+++ b/src/main/lsp/choice-buffer.c
@@ -120,6 +120,7 @@ choice_buffer_create(struct s8 title, struct buffers *buffers,
struct binding bindings[] = {
ANONYMOUS_BINDING(ENTER, &b->enter_pressed),
+ ANONYMOUS_BINDING(NUMPAD_ENTER, &b->enter_pressed),
ANONYMOUS_BINDING(None, 'q', &b->q_pressed),
};
diff --git a/src/main/lsp/diagnostics.c b/src/main/lsp/diagnostics.c
index db71fa3..ac286c1 100644
--- a/src/main/lsp/diagnostics.c
+++ b/src/main/lsp/diagnostics.c
@@ -167,6 +167,7 @@ static struct buffer *update_diagnostics_buffer(struct lsp_server *server,
struct binding bindings[] = {
ANONYMOUS_BINDING(ENTER, &diagnostics_goto),
+ ANONYMOUS_BINDING(NUMPAD_ENTER, &diagnostics_goto),
ANONYMOUS_BINDING(None, 'q', &diagnostics_close),
};
struct keymap km = keymap_create("diagnostics", 8);
diff --git a/src/main/lsp/references.c b/src/main/lsp/references.c
index c2438fa..4b3866a 100644
--- a/src/main/lsp/references.c
+++ b/src/main/lsp/references.c
@@ -118,6 +118,7 @@ static void handle_references_response(struct lsp_server *server,
struct binding bindings[] = {
ANONYMOUS_BINDING(None, 'q', &ref_close),
ANONYMOUS_BINDING(ENTER, &ref_visit_cmd),
+ ANONYMOUS_BINDING(NUMPAD_ENTER, &ref_visit_cmd),
};
struct keymap km = keymap_create("references", 2);
keymap_bind_keys(&km, bindings, sizeof(bindings) / sizeof(bindings[0]));