=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/input-keys.c,v retrieving revision 1.81 retrieving revision 1.82 diff -c -r1.81 -r1.82 *** src/usr.bin/tmux/input-keys.c 2020/11/17 08:13:35 1.81 --- src/usr.bin/tmux/input-keys.c 2021/04/08 14:16:12 1.82 *************** *** 1,4 **** ! /* $OpenBSD: input-keys.c,v 1.81 2020/11/17 08:13:35 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: input-keys.c,v 1.82 2021/04/08 14:16:12 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott *************** *** 429,434 **** --- 429,442 ---- return (input_key(wp->screen, wp->event, key)); } + static void + input_key_write(const char *from, struct bufferevent *bev, const void *data, + size_t size) + { + log_debug("%s: %.*s", from, (int)size, data); + bufferevent_write(bev, data, size); + } + /* Translate a key code into an output key sequence. */ int input_key(struct screen *s, struct bufferevent *bev, key_code key) *************** *** 445,451 **** /* Literal keys go as themselves (can't be more than eight bits). */ if (key & KEYC_LITERAL) { ud.data[0] = (u_char)key; ! bufferevent_write(bev, &ud.data[0], 1); return (0); } --- 453,459 ---- /* Literal keys go as themselves (can't be more than eight bits). */ if (key & KEYC_LITERAL) { ud.data[0] = (u_char)key; ! input_key_write(__func__, bev, &ud.data[0], 1); return (0); } *************** *** 464,479 **** justkey = (key & ~(KEYC_META|KEYC_IMPLIED_META)); if (justkey <= 0x7f) { if (key & KEYC_META) ! bufferevent_write(bev, "\033", 1); ud.data[0] = justkey; ! bufferevent_write(bev, &ud.data[0], 1); return (0); } if (justkey > 0x7f && justkey < KEYC_BASE) { if (key & KEYC_META) ! bufferevent_write(bev, "\033", 1); utf8_to_data(justkey, &ud); ! bufferevent_write(bev, ud.data, ud.size); return (0); } --- 472,487 ---- justkey = (key & ~(KEYC_META|KEYC_IMPLIED_META)); if (justkey <= 0x7f) { if (key & KEYC_META) ! input_key_write(__func__, bev, "\033", 1); ud.data[0] = justkey; ! input_key_write(__func__, bev, &ud.data[0], 1); return (0); } if (justkey > 0x7f && justkey < KEYC_BASE) { if (key & KEYC_META) ! input_key_write(__func__, bev, "\033", 1); utf8_to_data(justkey, &ud); ! input_key_write(__func__, bev, ud.data, ud.size); return (0); } *************** *** 495,502 **** if (ike != NULL) { log_debug("found key 0x%llx: \"%s\"", key, ike->data); if ((key & KEYC_META) && (~key & KEYC_IMPLIED_META)) ! bufferevent_write(bev, "\033", 1); ! bufferevent_write(bev, ike->data, strlen(ike->data)); return (0); } --- 503,510 ---- if (ike != NULL) { log_debug("found key 0x%llx: \"%s\"", key, ike->data); if ((key & KEYC_META) && (~key & KEYC_IMPLIED_META)) ! input_key_write(__func__, bev, "\033", 1); ! input_key_write(__func__, bev, ike->data, strlen(ike->data)); return (0); } *************** *** 561,567 **** goto missing; } xsnprintf(tmp, sizeof tmp, "\033[%llu;%cu", outkey, modifier); ! bufferevent_write(bev, tmp, strlen(tmp)); return (0); missing: --- 569,575 ---- goto missing; } xsnprintf(tmp, sizeof tmp, "\033[%llu;%cu", outkey, modifier); ! input_key_write(__func__, bev, tmp, strlen(tmp)); return (0); missing: *************** *** 657,661 **** if (!input_key_get_mouse(s, m, x, y, &buf, &len)) return; log_debug("writing mouse %.*s to %%%u", (int)len, buf, wp->id); ! bufferevent_write(wp->event, buf, len); } --- 665,669 ---- if (!input_key_get_mouse(s, m, x, y, &buf, &len)) return; log_debug("writing mouse %.*s to %%%u", (int)len, buf, wp->id); ! input_key_write(__func__, wp->event, buf, len); }