mirror of
https://github.com/tmux/tmux.git
synced 2024-12-24 18:28:56 +00:00
Remove flags from the prefix before comparing with the received key so
that modifier keys with flags work correctly, GitHub issue 3764.
This commit is contained in:
parent
008ecd4592
commit
f7bf7e9671
@ -1867,7 +1867,7 @@ server_client_key_callback(struct cmdq_item *item, void *data)
|
||||
struct key_binding *bd;
|
||||
int xtimeout, flags;
|
||||
struct cmd_find_state fs;
|
||||
key_code key0;
|
||||
key_code key0, prefix, prefix2;
|
||||
|
||||
/* Check the client is good to accept input. */
|
||||
if (s == NULL || (c->flags & CLIENT_UNATTACHEDFLAGS))
|
||||
@ -1939,9 +1939,11 @@ table_changed:
|
||||
* The prefix always takes precedence and forces a switch to the prefix
|
||||
* table, unless we are already there.
|
||||
*/
|
||||
prefix = (key_code)options_get_number(s->options, "prefix");
|
||||
prefix2 = (key_code)options_get_number(s->options, "prefix2");
|
||||
key0 = (key & (KEYC_MASK_KEY|KEYC_MASK_MODIFIERS));
|
||||
if ((key0 == (key_code)options_get_number(s->options, "prefix") ||
|
||||
key0 == (key_code)options_get_number(s->options, "prefix2")) &&
|
||||
if ((key0 == (prefix & (KEYC_MASK_KEY|KEYC_MASK_MODIFIERS)) ||
|
||||
key0 == (prefix2 & (KEYC_MASK_KEY|KEYC_MASK_MODIFIERS))) &&
|
||||
strcmp(table->name, "prefix") != 0) {
|
||||
server_client_set_key_table(c, "prefix");
|
||||
server_status_client(c);
|
||||
|
4
tmux.1
4
tmux.1
@ -590,8 +590,8 @@ line (the \e and the newline are completely removed).
|
||||
This is called line continuation and applies both inside and outside quoted
|
||||
strings and in comments, but not inside braces.
|
||||
.Pp
|
||||
Command arguments may be specified as strings surrounded by single (\[aq]) quotes,
|
||||
double quotes (\[dq]) or braces ({}).
|
||||
Command arguments may be specified as strings surrounded by single (\[aq])
|
||||
quotes, double quotes (\[dq]) or braces ({}).
|
||||
.\" "
|
||||
This is required when the argument contains any special character.
|
||||
Single and double quoted strings cannot span multiple lines except with line
|
||||
|
Loading…
Reference in New Issue
Block a user