desenv-web-rp.com

Como dividir o terminal em mais de uma "visualização"?

De vi, se você emitir o comando :sp, a tela se divide em duas "visualizações", permitindo editar mais de um arquivo no mesmo terminal.

Nessa mesma linha, existe uma maneira de abrir várias conchas no mesmo terminal?

285
Justin Ethier

Você pode fazer isso no screen no multiplexador de terminal.

  • Para dividir verticalmente: ctrla então |.
  • Para dividir horizontalmente: ctrla então S (maiúsculas 's').
  • Para cancelar a divisão: ctrla então Q ('q' maiúsculo).
  • Para alternar de um para o outro: ctrla então tab

Nota: Após a divisão, você precisa entrar na nova região e iniciar uma nova sessão via ctrla então c antes de poder usar essa área.

EDIT, uso básico da tela:

  • Novo terminal: ctrla então c.
  • Próximo terminal: ctrla então space.
  • Terminal anterior: ctrla então backspace.
  • N'th terminal ctrla então [n]. (funciona para n∈ {0,1… 9})
  • Alterne entre terminais usando a lista: ctrla então " (útil quando mais de 10 terminais)
  • Enviar ctrla ao terminal subjacente ctrla então a.
376
shellholic

Experimente o tmux (Terminal MUltipleXer):

tmux screenshot

E para entender a diferença entre session, window e pane: tmuxnestings

117
Yonatan Maman

Como mencionado nos comentários, além da tela, outro bom multiplexador de terminal é tmux . Você pode consultar o manual para obter uma descrição completa e uma referência de comando. Algumas operações básicas para começar são:

  • Tela dividida verticalmente: Ctrlb e Shift5
  • Tela dividida horizontalmente: Ctrlb e Shift"
  • Alternar entre painéis: Ctrlb e o
  • Fechar painel atual: Ctrlb e x

Você pode obter layouts mais complexos dividindo os painéis. Você também pode ter várias janelas com painéis e alternar entre elas.

  • Crie janelas: Ctrlb e c
  • Mudar para a próxima janela: Ctrlb e n
  • Mudar para a janela anterior: Ctrlb e p
  • Destruir a janela atual: Ctrlb e Shift7
67
dkaragasidis

Se você quer um programa que apenas divide um terminal¹, existe splitvt . Existem programas que dividem um terminal e fazem muitas outras coisas, como Screen, Tmux, Emacs,…

¹ É o terminal que você está dividindo, não o Shell.

22

Além das excelentes sugestões sobre Screen e Tmux, se você estiver usando algum tipo de gerenciador de janelas, poderá estar interessado em Terminator você pode dividir modas horizontal ou vertical, além de guias e muito mais ... aqui está uma lista de recursos retirados do site do autor:

  • Organizar terminais em uma grade
  • Guias
  • Arrastar e soltar a reordenação de terminais
  • Muitos atalhos de teclado
  • Salve vários layouts e perfis através do editor de preferências da GUI
  • Digitação simultânea para grupos arbitrários de terminais

Veja as capturas de tela no site do projeto.

Mais importante, você pode combinar o Terminator com o Screen/Tmux.

20
alemani

Konsole para KDE possui uma função embutida :

  • Ctrl+( Dividir a Vista Esquerda/Direita

  • Ctrl+) Dividir a Vista Superior/Inferior

  • Shift+Tab percorrerá as visualizações divididas

  • Shift+Left Arrow/Right Arrow alternará a visualização atual pelas guias/visualizações

  • Ctrl+Shift+X para fechar a visão atual

9
MrUser

Use terminador .

Deve estar disponível através do seu gerenciador de pacotes favorito, se você usar uma distribuição convencional.

É o único multiplexador de terminal em que a cópia e colagem funciona corretamente de dentro dos painéis da sua janela.

Atualização: tilix é uma alternativa terminator quase completamente igual ao terminator (e onde o copypasting funciona corretamente também). Depois de avaliá-lo, continuo com terminator, no entanto, devido ao melhor manuseio das guias e à configuração mais fácil (do meu POV).

7
sjas

Guake + Byob

Aqui Eu escrevi uma resposta mais completa .

Sou um usuário feliz de Guake com Byob dentro dele, que por padrão usa tmux ( provavelmente melhor que screen) como back-end.

Três passos

  1. Instale-os (não são necessários PPAs no Ubuntu/Debian, verifique outras distribuições )

    Sudo apt install guake byobu
    
  2. Adicione-o aos shells disponíveis (como eu disse nesta edição do Guake Github ):

    which byobu | Sudo tee -a /etc/shells
    
  3. Nas preferências do Guake (guake-prefs) escolha Byobu como intérprete padrão:

    screenshot

Opcionais

  1. Guake

    1. Desmarque a opção "Mostrar barra de guias", pois você usará o Byobu para isso:
      image
    2. Se um atalho não funcionar, tente desativar os do Guake que possam interferir (no meu caso foi Ctrl+F2 para divisão vertical): screenshot
  2. Byobu

    1. Aprenda atalhos com Shift+F1 ou este excelente screencast .
    2. Aprenda os comandos do terminal byobu disponíveis com apropos byobu
    3. Para usar as teclas Fn no Midnight Commander, use Alt+ ,ou Shift+F12 desativar as teclas F do byobu.

screenshot

6
Pablo A

Tente Divisão vertical para GNU)

Este patch fornece um recurso de divisão vertical para as versões atuais da tela GNU. O recurso foi projetado para funcionar da mesma maneira que o comando de divisão existente na tela, mas dividindo as regiões verticalmente em vez de horizontalmente. divisões podem ser usadas juntas em qualquer combinação/quantidade/ordem desejada. Algo semelhante está programado para aparecer em GNU Tela 4.1 em breve, e já está disponível no CVS por este segmento da lista de discussão (e tem foi incluído nos pacotes de tela Debian e Ubuntu a partir de 4.0.3-10) Além disso, um projeto recente chamado ScreenWM foi projetado especificamente para funcionar com uma tela com patch vsplit (confira!).

2
Narga