Janela do tmux dividida com o mesmo comando inicial no novo painel tmux

2

Eu tenho uma janela tmux que abri com um determinado comando. É possível dividir essa janela com um novo painel que também executa o mesmo comando, não o comando padrão?

O objetivo é evitar ter que lembrar e digitar o comando original novamente.

    
por PAG 05.02.2013 / 19:54

2 respostas

3

#{pane_start_command} é uma maneira de acessar o comando usado para iniciar o painel atual. Está disponível desde a v1.7 (10/2012).

bind-key S run-shell "tmux split-window \"#{pane_start_command}\""
é uma solução para sua pergunta usando #{pane_start_command} . ( tmux version > = 1.9 (02/2014)).

Com versões 1.7 > = X < 1.9 você pode usar algo assim em seu arquivo ~/tmux.conf :

bind-key S run-shell "tmux split-window \"$(tmux display-message -p '#{pane_start_command}')\""
  • O comando display-message substituído extrai #{pane_start_command} .
  • Esse comando é fornecido como um argumento para tmux split-window .

pane_start_command será a string vazia se o painel foi iniciado sem uma string de comando e não houve default-command , mas está tudo bem porque split-window iniciará um shell de login simples se receber uma string de comando vazia .

    
por 06.02.2013 / 05:10
2

O comando que você está procurando é split-window . De man tmux :

split-window [-dhvP] [-c start-directory] [-l size | -p percentage] [-t target-pane] [shell-command] [-F format] (alias: splitw)
Create a new pane by splitting target-pane: -h does a horizontal split and -v a vertical split; if neither is specified, -v is assumed. The -l and -p options specify the size of the new pane in lines (for vertical split) or in cells (for horizontal split), or as a percentage, respectively. All other options have the same meaning as for the new-window command.

Você poderia usá-lo a partir da sua janela atual digitando o modo de comando, Ctrl b , : e digitando no prompt:

splitw -v -p 50 'your command'

Isso dividiria sua janela atual v erticalmente na metade (50 p ercent) com o comando executado nela.

Se você usa este comando com freqüência, você sempre pode vinculá-lo a uma sequência de teclas, por exemplo,

bind '~' split-window -v -p 50 'htop'
    
por 05.02.2013 / 21:02

Tags