Browse Source

For curses display, recognize a few more control keys

The curses display handles most control-X keys, and translates
them into their corresponding keycode.  Here we recognize
a few that are missing, Ctrl-@ (null), Ctrl-\ (backslash),
Ctrl-] (right bracket), Ctrl-^ (caret), Ctrl-_ (underscore).

Signed-off-by: Sean Estabrooks <sean.estabrooks@gmail.com>
Message-id: CAHyVn3Bh9CRgDuOmf7G7Ngwamu8d4cVozAcB2i4ymnnggBXNmg@mail.gmail.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
pull/252/head
Sean Estabrooks 3 years ago
committed by Peter Maydell
parent
commit
9b579543d7
  1. 6
      ui/curses_keys.h

6
ui/curses_keys.h

@ -210,6 +210,12 @@ static const int _curses2keycode[CURSES_CHARS] = {
['N' - '@'] = 49 | CNTRL, /* Control + n */
/* Control + m collides with the keycode for Enter */
['@' - '@'] = 3 | CNTRL, /* Control + @ */
/* Control + [ collides with the keycode for Escape */
['\\' - '@'] = 43 | CNTRL, /* Control + Backslash */
[']' - '@'] = 27 | CNTRL, /* Control + ] */
['^' - '@'] = 7 | CNTRL, /* Control + ^ */
['_' - '@'] = 12 | CNTRL, /* Control + Underscore */
};
static const int _curseskey2keycode[CURSES_KEYS] = {

Loading…
Cancel
Save