Eu tenho várias ferramentas em torno do tmux e do histórico para poder rastrear o que aconteceu e onde (em qual painel, em particular).
dentro do meu pré-executivo zsh, consigo fazer logout (para meu formato de histórico de comandos do shell personalizado) de várias informações que associo aos comandos que executo:
$TTY
vai me mostrar, por exemplo/dev/pts/34
$(tmux display -p "#{window_id} #D")
me fornece, por exemplo@4 %28
Mesmo que eu tenha apenas o $TTY
, posso usar a saída de
tmux list-panes -a -F '#{pane_tty} #{window_id} #D'
para mapeá-lo.
Agora eu só queria este fluxo de trabalho: estou olhando meu log de histórico personalizado e consigo obtê-lo, @4 %28
mas parece que preciso emitir duas tmux
chamadas para realmente focar o painel em questão. tenho que correr
tmux select-window -t @4 && tmux select-pane -t %28
Gostaria de saber se existe uma maneira mais direta. tmux select-pane -t @4 %28
, ou, na verdade, oselect-pane
provavelmentedeveria apenas focar a janela para mim?
Responder1
Geralmente estou satisfeito com a simplicidade da tmux
interface cli... o que select-pane
farei é simplesmente selecionar esse painel e deixar a janela e o estado da sessão em paz.
Na minha pergunta, não considerei as implicações de tentar "navegar" para um painel específico se eu estiver vinculado a um painel diferente.sessão. O cli me permitirá alterar a janela atual e os painéis atuais de qualquer sessão à vontade, bem como mudar para qualquer sessão. Simplesmente não temos uma interface amigável para fazer tudo isso de maneira indolor. (um exemplo de como não é indolor é a aparência dos IDs de sessão, $2
então você deve especificá-los entre aspas simples)