Pesquisa interativa de sessões tmux

5

Ao alternar entre sessões tmux com o menu de sessão interativa ( <prefix>-s), você pode pular para uma sessão específica digitando o índice numérico ou alfabético da sessão, por exemplo

(0) + first_session: 1 windows (1) + second_session: 2 windows (2) + third_session: 1 windows (3) + secret_session: 1 windows

Pressionar 1abrirá a second_sessionsessão.

Costumo ter> 20 sessões tmux abertas e gostaria de ter uma maneira de pesquisar sem olhar a lista inteira. Existe uma maneira de mudar o comportamento para ter uma pesquisa interativa? Ou seja, eu gostaria de digitar sece ter a lista restrita a

(1) + second_session: 2 windows (3) + secret_session: 1 windows

Pesquisei bastante no Google e não encontrei nada; esse comportamento é possível?

GaryS
fonte

Respostas:

7

Sim, mas, tanto quanto eu sei, você precisará de uma ferramenta extra para a pesquisa em si. Estou usando o fzf para a pesquisa (difusa). Depois que o fzf estiver instalado, você poderá usar a seguinte configuração para configurar a alternância de sessões com a pesquisa:

bind C-j split-window -v "tmux list-sessions | sed -E 's/:.*$//' | grep -v \"^$(tmux display-message -p '#S')\$\" | fzf --reverse | xargs tmux switch-client -t"

Eu não descobri isso sozinho, mas peguei isso do tmux conf público de Chris Toomey .

bartj3
fonte
Isso é incrível!
Trevor Hartman
por favor, perdoe minha intimidade tmux .. mas não sei o que digitar para chegar a esse ponto? é isso que tenho no meu arquivo tmux.conf: set-option -g prefix C-a .. the above shortuct (ie bind C-j split-window..então, o que digito em um terminal para ver essa pesquisa rápida?
Abbood 5/07
-1

@ Bartj3: Obrigado. Isso é super legal!

Aqui está uma versão ligeiramente aprimorada (sem sed e grep) para sessões de comutação e janelas:

bind j split-window -v "tmux list-sessions -F '#S' | fzf --reverse | xargs tmux switch-client -t"
bind k split-window -v "tmux list-window -F '#W' | fzf --reverse | xargs tmux select-window -t"

PROBLEMA:

Se você usar o descrito acima enquanto os painéis de sincronização estiverem ativados, os pressionamentos de tecla de pesquisa também digitarão os outros painéis.

PERGUNTA, QUESTÃO:

Alguém tem uma idéia de como limitar o pressionamento de teclas ao painel de pesquisa?

s3_
fonte
Embora essa resposta realmente pareça responder à pergunta. O fato de você ter enviado sua própria pergunta, dentro do corpo da resposta, torna impossível responder à sua pergunta.
Ramhound 22/01
Bem-vindo ao SuperUser! Sua resposta inclui outra pergunta. Sua pergunta receberá a atenção adequada se você a postar como uma nova pergunta. Consulte as diretrizes do site sobre Como perguntar e como responder . Além disso, você descobrirá que terá uma experiência melhor se tiver um momento para fazer o tour Stack Overflow . Se você seguir as normas da comunidade Stack Overflow e abordá-la com uma atitude de ajudar os outros também, isso será útil para você.
Rey Juna 22/01
Está bem. Publicado como uma nova pergunta em superuser.com/questions/1397211 . Obrigado.
s3_ 22/01