From 34de379c7d29b22c5486f32a265ff47425e4860a Mon Sep 17 00:00:00 2001 From: nicm Date: Mon, 30 Mar 2020 15:49:23 +0000 Subject: [PATCH 1/2] Add to rather than replace flags with -c. --- client.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client.c b/client.c index f819e924..37da9c67 100644 --- a/client.c +++ b/client.c @@ -251,7 +251,7 @@ client_main(struct event_base *base, int argc, char **argv, int flags) /* Set up the initial command. */ if (shell_command != NULL) { msg = MSG_SHELL; - flags = CLIENT_STARTSERVER; + flags |= CLIENT_STARTSERVER; } else if (argc == 0) { msg = MSG_COMMAND; flags |= CLIENT_STARTSERVER; From 1fb504d0d5c73c1a0a3585e02e1e3114a3194625 Mon Sep 17 00:00:00 2001 From: nicm Date: Mon, 30 Mar 2020 16:16:48 +0000 Subject: [PATCH 2/2] Tweak key numbers to avoid some special keys crossing over with modifier bits. --- tmux.h | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/tmux.h b/tmux.h index a9f4de8a..e40dfe34 100644 --- a/tmux.h +++ b/tmux.h @@ -102,24 +102,24 @@ struct winlink; #define VISUAL_BOTH 2 /* Special key codes. */ -#define KEYC_NONE 0xffff00000000ULL -#define KEYC_UNKNOWN 0xfffe00000000ULL -#define KEYC_BASE 0x000010000000ULL -#define KEYC_USER 0x000020000000ULL +#define KEYC_NONE 0x00ff000000000ULL +#define KEYC_UNKNOWN 0x00fe000000000ULL +#define KEYC_BASE 0x0001000000000ULL +#define KEYC_USER 0x0002000000000ULL + +/* Key modifier bits. */ +#define KEYC_ESCAPE 0x0100000000000ULL +#define KEYC_CTRL 0x0200000000000ULL +#define KEYC_SHIFT 0x0400000000000ULL +#define KEYC_XTERM 0x0800000000000ULL +#define KEYC_LITERAL 0x1000000000000ULL /* Available user keys. */ #define KEYC_NUSER 1000 -/* Key modifier bits. */ -#define KEYC_ESCAPE 0x200000000000ULL -#define KEYC_CTRL 0x400000000000ULL -#define KEYC_SHIFT 0x800000000000ULL -#define KEYC_XTERM 0x1000000000000ULL -#define KEYC_LITERAL 0x2000000000000ULL - /* Mask to obtain key w/o modifiers. */ -#define KEYC_MASK_MOD (KEYC_ESCAPE|KEYC_CTRL|KEYC_SHIFT|KEYC_XTERM|KEYC_LITERAL) -#define KEYC_MASK_KEY (~KEYC_MASK_MOD) +#define KEYC_MASK_MOD 0xff00000000000ULL +#define KEYC_MASK_KEY 0x00fffffffffffULL /* Is this a mouse key? */ #define KEYC_IS_MOUSE(key) (((key) & KEYC_MASK_KEY) >= KEYC_MOUSE && \