From 897a263ee772edc2211f46032b377eaf27edbb56 Mon Sep 17 00:00:00 2001 From: Přemysl Eric Janouch Date: Fri, 9 Oct 2020 20:37:32 +0200 Subject: Readline: make M-Enter insert a newline Before, it was only possible with C-v C-j but it's too useful to require such an awkward method. There is a precedent in, e.g., zsh and fish for the new binding. --- json-rpc-shell.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/json-rpc-shell.c b/json-rpc-shell.c index 00b48c2..bd5888e 100644 --- a/json-rpc-shell.c +++ b/json-rpc-shell.c @@ -246,11 +246,23 @@ input_rl_on_run_editor (int count, int key) return 0; } +static int +input_rl_newline_insert (int count, int key) +{ + (void) count; + (void) key; + + rl_insert_text ("\n"); + return 0; +} + static int input_rl_on_startup (void) { rl_add_defun ("run-editor", input_rl_on_run_editor, -1); rl_bind_keyseq ("\\ee", rl_named_function ("run-editor")); + rl_add_defun ("newline-insert", input_rl_newline_insert, -1); + rl_bind_keyseq ("\\e\\r", rl_named_function ("newline-insert")); return 0; } -- cgit v1.2.3-70-g09d2