Eu consertei isso configurando a opção assume-paste-time
no tmux para 0
. Não está claro para mim por que isso é necessário desde a versão 2.1, embora (o padrão é 1ms, o que funcionou anteriormente).
Eu tenho as seguintes linhas no meu tmux.conf
:
bind C-n next-window
bind C-p previous-window
Depois, tenho os seguintes mapeamentos de chaves em ITerm2, que enviam enviar C-f C-p
e C-f C-n
para o terminal (meu prefixo tmux é C-f
):
0x06 0x70
0x06 0x6e
Esses mapeamentos funcionaram bem até que eu atualizei o tmux da versão 2.0 para a versão 2.1.
Agora, a ordem em que o tmux recebe as chaves parece estar invertida. Por exemplo, executar cat
e, em seguida, digitar ⌘ [ ctrl f produz o seguinte:
$ cat
p^F
... enquanto espero que ⌘ [ mude a janela. Digitar manualmente ctrl f ctrl p funciona como esperado. Se eu me conectar a uma máquina remota executando o tmux 2.0, meus mapeamentos de teclas funcionam como costumavam.
Eu não entendo porque a ligação funciona quando eu a digito, mas não quando o ITerm2 a envia. Por que isso aconteceria?