Digamos que você esteja se conectando a um servidor remoto pelo ssh com o Terminal.app. Quando você "anexa o tmux" com um monitor de maior resolução a partir de um monitor menor que você iniciou anteriormente, o tmux desenha pontos ao redor do console. Não se encaixa no novo tamanho da janela. Existe alguma maneira de redesenhar e limpar a janela? CTRL+ Lou CTRL- B+ Rnão ajuda. Não consegui encontrar nenhum comando adequado para o homem.
% tmux -V
tmux 1.5
Respostas:
O tmux limita as dimensões de uma janela ao menor de cada dimensão em todas as sessões às quais a janela está conectada. Se não o fizesse, não haveria maneira sensata de exibir toda a área da janela para todos os clientes conectados.
A coisa mais fácil a fazer é desanexar outros clientes das sessões quando você anexa:
Como alternativa, você pode mover qualquer outro cliente para uma sessão diferente antes de anexar à sessão:
A tela diminuirá novamente se um cliente menor mudar para a sessão.
Há também uma variação em que você apenas "assume" a janela (vincula a janela a uma nova sessão, define
aggressive-resize
e alterna quaisquer outras sessões que tenham essa janela ativa para outra janela), mas é mais difícil criar scripts em geral case (e diferente de "exit", pois você deseja desvincular a janela ou interromper a sessão em vez de apenas desconectá-la da sessão).fonte
$(tmux display-message -p '#S')
, consulte: superuser.com/questions/410017/… .Ctrl-b + D
para facilitar o uso (e lembrar).set-option... set-remain-on-exit on
. Veja tmux # 787 . Agora, use:tmux set-hook -t "$tmp" window-linked 'set remain-on-exit on
.new-window
último argumento de algo como'echo "Use Prefix + L (i.e. ^B L) to return to session.'; while(true); do read; done"
ou você não verá a mensagem. (Em algumas circunstâncias, você o verá se rolar para cima ou se o terminal for mais alto.) Se você usar isso, provavelmente estará melhor sem o meu comentário "(1)" ou qualquer outra configuraçãoremain-on-exit
.Você sempre pode pressionar CTRL- B+ SHIFT- Dpara escolher qual cliente deseja desanexar da sessão.
O tmux listará todas as sessões com sua dimensão atual. Então você simplesmente se desconecta de todas as sessões de tamanho menor.
fonte
CTRL-B
se esse é o seu prefixo. O meu éCTRL-A
desde que mudei de tela.tmux list-sessions
que mostra o nome da sessão, tamanho e informações do grupo e depoistmux kill-session -t <session_name>
matar as sessões do mesmo grupo.Uma solução mais simples nas versões recentes do tmux (testadas no 1.9) agora você pode:
-a
é para todos os outros clientes nesta sessão, exceto o atualVocê pode criar um alias no seu. [Bash | zsh] rc
Fluxo de trabalho: você pode conectar-se à sua sessão normalmente e, se você se incomodar com outra sessão que reduziu o tamanho da janela do tmux, basta ligar
takeover
.fonte
:detach -a
tmux detach -a
na linha de comando do shell dentro do Tmux.As outras respostas não me ajudaram, pois eu só tinha o cliente anexado (a anterior que iniciou a sessão já estava desanexada).
Para corrigi-lo, segui a resposta aqui (não estava usando o xterm).
O que simplesmente dizia:
resize
comando linuxfonte
Acabei de encontrar este problema e me deparei com uma situação diferente. Embora seja provavelmente apenas um unicórnio, pensei em explicar.
Eu tive uma sessão menor e notei que os tamanhos das fontes eram diferentes: a sessão menor tinha as fontes menores. Aparentemente, eu havia mudado o tamanho da fonte da janela por algum motivo.
Então, no OS X, acabei de fazer
Cmd-+
uma sessão de tamanho menor e ela se encaixou novamente.fonte
cmd-+
ou-
corrigi-lo.mate o outro.
fonte
Essa ainda é a postagem principal ao pesquisar, mas não é mais válida. A melhor resposta está aqui , mas o TLDR é
<c-b>:resize-window -A
fonte
Eu uso Ctrl- b+, o qque torna o número do flash para cada painel, redesenhando-os no caminho.
fonte