From 8e3f40155ca20f7cba8361183ee1be8670fbcc58 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg <bensberg@telfort.nl> Date: Sat, 1 Jul 2017 14:15:04 +0200 Subject: [PATCH] input: recognize the Ctrl+Arrow key sequences from Haiku's Terminal --- src/winio.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/winio.c b/src/winio.c index 8944a36d..afce1136 100644 --- a/src/winio.c +++ b/src/winio.c @@ -773,6 +773,19 @@ int convert_sequence(const int *seq, size_t seq_len) } } break; + case '5': + if (seq_len >= 3) { + switch (seq[2]) { + case 'A': /* Esc O 5 A == Ctrl-Up on Haiku. */ + return CONTROL_UP; + case 'B': /* Esc O 5 B == Ctrl-Down on Haiku. */ + return CONTROL_DOWN; + case 'C': /* Esc O 5 C == Ctrl-Right on Haiku. */ + return CONTROL_RIGHT; + case 'D': /* Esc O 5 D == Ctrl-Left on Haiku. */ + return CONTROL_LEFT; + } + } case 'A': /* Esc O A == Up on VT100/VT320/xterm. */ case 'B': /* Esc O B == Down on VT100/VT320/xterm. */ case 'C': /* Esc O C == Right on VT100/VT320/xterm. */ -- GitLab