Como você esconde um painel?

50

Eu tenho 3 painéis na minha janela do tmux:

--------------------------
|             |      2   |
|             |          |
|        1    |----------|
|             |      3   |
|             |          |
--------------------------

Os painéis 1 e 2 têm vim . O painel 3 executa um cli que estou desenvolvendo. Às vezes eu quero comparar os painéis 1 e 2, então eu quero esconder o painel 3:

--------------------------
|             |          |
|             |          |
|        1    |       2  |
|             |          |
|             |          |
--------------------------

e, em seguida, traga de volta o painel 3 novamente. Eu não quero matar o painel 3, pois configurei algumas coisas lá e não quero ir embora configurando-as novamente.

  • Existe algo semelhante a PREFIX + z , que pode ampliar o painel 2, mas sem tocar no painel 1? Ou
  • Existe uma maneira de esconder rapidamente o painel 3 e trazê-lo de volta quando necessário?
por user881300 22.07.2014 / 09:02

3 respostas

61

Use os comandos break-pane e join-pane . Consulte man tmux para detalhes, opções e uso.

Hide Pane 3:

Selecione o painel 3 e digite Prefixo - : break-pane -dP .

tmux enviará o painel 3 para uma janela em segundo plano (a -d flag) e imprimirá algumas informações sobre ele no painel 2 (o -P flag). Por padrão, você verá algo como 1:2.0 (significado: session:window.pane ). Pressione q para continuar trabalhando. 1

1 Com alguma prática, você poderá descartar o -P flag, já que você pode prever o session:window.pane triplet: session padrão para a sessão atual e pane assume como padrão 0 , enquanto window será o próximo identificador de janela livre.

Obtenha o painel 3 de volta:

Para recuperar o painel 3 e o layout, selecione o painel 2 e edite o Prefixo - : join-pane -vs 1:2.0 dizendo tmux para dividir o painel 2 verticalmente ( -v ) e para unir o painel (origem) ( -s ) com o identificador 1:2.0 . Opcionalmente, você pode eliminar o identificador session ou pane . Note também que o tmux armazena um histórico de linha de comando, convenientemente acessível com Prefixo - : - Acima .

Provavelmente, você precisará de um tempo para entender o problema, mas, quando o fizer, certamente conseguirá criar combinações de teclas personalizadas que sejam convenientes para você.

A questão Movendo o painel tmux para a janela contém algumas informações e truques úteis que podem melhorar seu fluxo de trabalho.

    
por 22.07.2014 / 10:23
4

Uma ideia: execute o tmux no tmux.

Configuração original:

Painel 1 e painel 2; lado a lado. Execute o vim no Painel 1 normalmente.

No painel 2, execute o tmux novamente e crie dois painéis (um em cima do outro desta vez). Em seguida, execute vim no painel 2.1 e sua CLI no painel 2.2. Isso deve permitir o painel de tela cheia 2.1 com sua segunda instância do Vim, resultando no comportamento desejado.

    
por 21.06.2016 / 11:35
3

Em vez de esconder o painel 3, você também pode trapacear um pouco e torná-lo muito pequeno, o que provavelmente também funcionará para o seu caso.

Quando o painel 2 é o painel ativo, você pode

PREFIX : resize-pane -D 40

Então, para movê-lo novamente, você pode

PREFIX : resize-pane -D 28

onde você teria que substituir 28 por um número decente, ou, ao invés disso, você poderia tentar o PREFIXO Esc 4 , que faz automática redimensionamento.

    
por 22.07.2014 / 09:10

Tags