Como eu equilibro igualmente os painéis divididos do tmux (1)?

177

Estou procurando um comportamento semelhante ao modo como o vim (1) manipula suas janelas divididas com ^w = . Eu sei que o tmux (1) tem layouts predefinidos com ^b Meta[1-5] , mas isso provavelmente não tem o layout que estou usando atualmente.

Ao dividir uma janela, ela reduz pela metade a janela atual para os dois painéis. Dividir novamente e divide esse painel em dois novos. Combine divisões verticais e horizontais, e elas continuam a se reduzir à metade, cada novo painel ficando cada vez menor.

Como posso manter o novo layout que acabei de criar, mas tenho todos os splits verticais e horizontais igualmente equilibrados, como o vim (1) faz com ^w = ?

    
por Aaron Toponce 28.02.2012 / 21:53

5 respostas

219

Verticalmente

select-layout even-vertical
  Geralmente atribuído a: Ctrl + b , Alt + 2

Horizontalmente

select-layout even-horizontal
  Geralmente atribuído a: Ctrl + b , Alt + 1

    
por 02.05.2012 / 15:35
79

Você pode usar ctrl-b espaço para percorrer os layouts com espaçamento uniforme, mas isso não preservará necessariamente o layout que você tinha.

    
por 23.03.2012 / 20:14
11

Na linha de comando, você pode usar

tmux select-layout tiled

para tornar seus splits quase iguais. Você pode vincular isso a um comando de chave também.

    
por 30.09.2016 / 14:22
7

Não conheço nenhum atalho de chave, mas talvez isso ajude você:

Você pode tentar escrever algum script para fazer o layout e vincular uma chave ao script. Você pode fazer isso usando tmux command pipe-pane [-o] [-t target-pane] [shell-command] para gravar o layout atual no script. Em seguida, você precisa ler um layout preparado pelo script usando tmux command select-layout .

    
por 27.04.2012 / 12:58
1

Eu estava tendo dificuldade em encontrar o encantamento mágico para dividir em quatro quadrantes iguais, então aqui está:

# Split session into FOUR EQUAL quadrants
tmux selectp -t 0    # select the first (0) pane
tmux splitw -h -p 50 # split it into two halves
tmux selectp -t 0    # select the first (0) pane
tmux splitw -v -p 50 # split it into two halves

tmux selectp -t 2    # select the new, second (2) pane
tmux splitw -v -p 50 # split it into two halves
tmux selectp -t 0    # go back to the first pane
    
por 26.06.2018 / 23:33

Tags