From fd2ef18a7004fb35dbe40b99765609189827a6f8 Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Mon, 26 Oct 2009 17:46:33 +0000 Subject: Rewrite xterm-keys code (both input and output) so that works (doesn't always output the same modifiers, accepts all the possible input keys) and is more understandable. --- tty-keys.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'tty-keys.c') diff --git a/tty-keys.c b/tty-keys.c index 26bb2861..d977708d 100644 --- a/tty-keys.c +++ b/tty-keys.c @@ -341,6 +341,13 @@ tty_keys_next(struct tty *tty, int *key, struct mouse_event *mouse) goto found; } + /* Not found. Try to parse a key with an xterm-style modifier. */ + *key = xterm_keys_find(buf, len, &size); + if (*key != KEYC_NONE) { + buffer_remove(tty->in, size); + goto found; + } + /* Escape but no key string. If the timer isn't started, start it. */ if (!(tty->flags & TTY_ESCAPE)) { tv.tv_sec = 0; -- cgit