From 4a6f88cc23175c94ffd29a2df1f9aabe8d5dbc47 Mon Sep 17 00:00:00 2001 From: Paul Fertser Date: Wed, 30 Mar 2022 21:46:25 +0300 Subject: [PATCH] Add Alt/Ctrl-arrows combinations for GNU Screen GNU Screen terminal emulator is modelled after VT100, its key bindings for "application mode" (which profanity enables on startup) can be seen with this: info screen "Input Translation". --- src/ui/inputwin.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/ui/inputwin.c b/src/ui/inputwin.c index ac7cf817..6bd6f613 100644 --- a/src/ui/inputwin.c +++ b/src/ui/inputwin.c @@ -483,10 +483,12 @@ _inp_rl_startup_hook(void) rl_bind_keyseq("\\e[1;9D", _inp_rl_win_prev_handler); rl_bind_keyseq("\\e[1;3D", _inp_rl_win_prev_handler); rl_bind_keyseq("\\e\\e[D", _inp_rl_win_prev_handler); + rl_bind_keyseq("\\e\\eOD", _inp_rl_win_prev_handler); rl_bind_keyseq("\\e[1;9C", _inp_rl_win_next_handler); rl_bind_keyseq("\\e[1;3C", _inp_rl_win_next_handler); rl_bind_keyseq("\\e\\e[C", _inp_rl_win_next_handler); + rl_bind_keyseq("\\e\\eOC", _inp_rl_win_next_handler); rl_bind_keyseq("\\ea", _inp_rl_win_next_unread_handler); rl_bind_keyseq("\\ev", _inp_rl_win_attention_handler); @@ -510,6 +512,7 @@ _inp_rl_startup_hook(void) rl_bind_keyseq("\\e[Z", _inp_rl_shift_tab_handler); rl_bind_keyseq("\\e[1;5B", _inp_rl_down_arrow_handler); // ctrl+arrow down + rl_bind_keyseq("\\eOb", _inp_rl_down_arrow_handler); // unbind unwanted mappings rl_bind_keyseq("\\e=", NULL);