vte: add ctrl+0-9 shortcuts
authorDavid Herrmann <dh.herrmann@googlemail.com>
Mon, 28 May 2012 13:39:25 +0000 (15:39 +0200)
committerDavid Herrmann <dh.herrmann@googlemail.com>
Mon, 28 May 2012 13:39:25 +0000 (15:39 +0200)
The VT220 defines some additional shortcuts to send escape codes with
ctrl+<num>. Implement these as aliases to the same well-defined shortcuts.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
src/vte.c

index aaf9c75..a3792a9 100644 (file)
--- a/src/vte.c
+++ b/src/vte.c
@@ -974,6 +974,7 @@ int kmscon_vte_handle_keyboard(struct kmscon_vte *vte,
 
        if (UTERM_INPUT_HAS_MODS(ev, UTERM_CONTROL_MASK)) {
                switch (ev->keysym) {
+               case XK_2:
                case XK_space:
                        val = "\x00";
                        break;
@@ -1029,26 +1030,34 @@ int kmscon_vte_handle_keyboard(struct kmscon_vte *vte,
                case XK_Y: val = "\x19"; break;
                case XK_z:
                case XK_Z: val = "\x1a"; break;
+               case XK_3:
                case XK_bracketleft:
                case XK_braceleft:
                        val = "\x1b";
                        break;
+               case XK_4:
                case XK_backslash:
                case XK_bar:
                        val = "\x1c";
                        break;
+               case XK_5:
                case XK_bracketright:
                case XK_braceright:
                        val = "\x1d";
                        break;
+               case XK_6:
                case XK_grave:
                case XK_asciitilde:
                        val = "\x1e";
                        break;
+               case XK_7:
                case XK_slash:
                case XK_question:
                        val = "\x1f";
                        break;
+               case XK_8:
+                       val ="\x7f";
+                       break;
                default:
                        val = NULL;
                        break;