O painel de redimensionamento não está funcionando para o tmux no mac?
33
Depois de pesquisar, achei que as teclas ctrl + b (PREFIX) e a tecla ctrl + redimensionavam o painel atual. Mas isto não está funcionando. Estou faltando alguma coisa?
Provavelmente, seu terminal não está enviando uma sequência (distinta) quando você mantém Controlpressionado e pressiona uma tecla de seta.
Tente executar cate digitar as chaves nele (Control-C para sair). Você provavelmente descobrirá que (por exemplo) Upe Control- Upambos geram a mesma sequência.
Aplicativo OS X Terminal
Em sua configuração padrão, o aplicativo OS X Terminal envia a sequência ^[[A(ou ^[OA), digitando Upou Control- Up(também qualquer combinação com Shifte Optiontambém).
No entanto, você pode reconfigurar o Terminal para enviar os códigos apropriados. É um pouco entediante, mas você geralmente só precisa fazer isso uma vez.
Terminal > Preferências…
Guia de nível superior de configurações
escolha o perfil que você deseja modificar
Guia Teclado
clique no botão de adição para adicionar uma nova ligação
escolha uma tecla do cursor
defina o modificador para control
use a Send Text:ação
digite Escape(será exibido como \033) seguido por [1;5e mais um caractere:
Apara Up,
Bpara Down,
Cpara Rightou
D para Left
clique em OK para adicionar a ligação
Por exemplo, a sequência final para Control- Updeve acabar parecendo \033[1;5A.
Essas seqüências são as que o XTerm gera (consulte a documentação do ctlseqs para obter detalhes).
Repita o último passo para as outras teclas de seta.
De fato, as teclas Ctrl + {setas} são mapeadas para alternar entre aplicativos. Eles não estão enviando a sequência.
quer
19
Eu tentei isso em uma máquina Mavericks de baunilha (retina MBP no final de 2013), mas não funcionou sem também desativar todos os atalhos das teclas Ctrl + Seta em Preferências do sistema -> Teclado -> Atalhos -> Controle de missão. +1 para obter a dica de catcomo ver eventos do teclado #
Alex Leach
funciona bem até eu iniciar o tmux. Eu recebo ^ [[1; 5A ^ [[1; 5B antes de iniciar o tmux, mas ^ [OA ^ [OB no tmux.
precisa saber é o seguinte
1
@ Sinbadsoft.com: Parece que você não xterm-keysativou a janela do tmux ; você pode querer set -gw xterm-keys on.
31815 Chris Johnsen
funciona perfeitamente para mim (el capitan).
ling
10
Em pelo menos Mavericks e iTerm2, você deve segurar Controle pressionar b(em vez de segurar) e, em seguida, pressionar um botão direcional. Isso envia praticamente as mesmas seqüências que manter pressionadas Control- bcom um botão direcional para que funcione.
Além disso, certifique-se de ir para as configurações do teclado e, na guia atalhos, desative qualquer controle de missão e os atalhos de teclado que você possa ter, Controlalém de uma tecla direcional.
obrigado! mudando as ligações janelas missão de controlo / app em Atalhos de teclado fez a diferença para mim
sixty4bit
7
Você pode usar a tecla meta em vez da tecla controle nas combinações ctrl- ↑ e ctrl- ↓. No OSX Terminal, a meta-chave padrão é a chave de escape. Por exemplo, para aumentar o tamanho de um painel, digite ctrl-b esc- ↑.
Acho que é difícil alcançar a chave de escape e, em vez disso, uso a tecla de opção como a meta-chave. No Terminal.app, você pode alterá-lo acessando Terminal> Preferências> Perfis> Teclado: marque a opção "Usar opção como meta-chave".
Agora você pode digitar ctrl-b opção- ↑ para aumentar o tamanho ou ctrl-b opção- ↓ para diminuir o tamanho e não precisa remapear as teclas de controle da missão.
Respostas:
Provavelmente, seu terminal não está enviando uma sequência (distinta) quando você mantém Controlpressionado e pressiona uma tecla de seta.
Tente executar
cat
e digitar as chaves nele (Control-C para sair). Você provavelmente descobrirá que (por exemplo) Upe Control- Upambos geram a mesma sequência.Aplicativo OS X Terminal
Em sua configuração padrão, o aplicativo OS X Terminal envia a sequência
^[[A
(ou^[OA
), digitando Upou Control- Up(também qualquer combinação com Shifte Optiontambém).No entanto, você pode reconfigurar o Terminal para enviar os códigos apropriados. É um pouco entediante, mas você geralmente só precisa fazer isso uma vez.
clique no botão de adição para adicionar uma nova ligação
control
Send Text:
ação\033
) seguido por[1;5
e mais um caractere:A
para Up,B
para Down,C
para RightouD
para LeftPor exemplo, a sequência final para Control- Updeve acabar parecendo
\033[1;5A
.Essas seqüências são as que o XTerm gera (consulte a documentação do ctlseqs para obter detalhes).
Repita o último passo para as outras teclas de seta.
iTerm 2
O iTerm 2 envia a sequência esperada por padrão.
fonte
cat
como ver eventos do teclado #xterm-keys
ativou a janela do tmux ; você pode quererset -gw xterm-keys on
.Em pelo menos Mavericks e iTerm2, você deve segurar
Control
e pressionarb
(em vez de segurar) e, em seguida, pressionar um botão direcional. Isso envia praticamente as mesmas seqüências que manter pressionadasControl
-b
com um botão direcional para que funcione.Além disso, certifique-se de ir para as configurações do teclado e, na guia atalhos, desative qualquer controle de missão e os atalhos de teclado que você possa ter,
Control
além de uma tecla direcional.fonte
Você pode usar a tecla meta em vez da tecla controle nas combinações ctrl- ↑ e ctrl- ↓. No OSX Terminal, a meta-chave padrão é a chave de escape. Por exemplo, para aumentar o tamanho de um painel, digite ctrl-b esc- ↑.
Acho que é difícil alcançar a chave de escape e, em vez disso, uso a tecla de opção como a meta-chave. No Terminal.app, você pode alterá-lo acessando Terminal> Preferências> Perfis> Teclado: marque a opção "Usar opção como meta-chave".
Agora você pode digitar ctrl-b opção- ↑ para aumentar o tamanho ou ctrl-b opção- ↓ para diminuir o tamanho e não precisa remapear as teclas de controle da missão.
fonte