Como posso pesquisar dentro do buffer de saída de uma concha de tmux?
Não consigo pôr isto a funcionar. Como posso pesquisar o buffer de uma concha de tmux?
Não consigo pôr isto a funcionar. Como posso pesquisar o buffer de uma concha de tmux?
Para pesquisar no buffer tmux
histórico para a janela actual, prima Ctrl-b [ para introduzir copy mode
.
Se estiver a utilizar ligações de teclas emacs (o predefinido), prima Ctrl-s depois digite a cadeia de caracteres a pesquisar e prima Enter. Prima n para procurar novamente a mesma cadeia de caracteres. Carregar Shift-n para pesquisa inversa. Carregar Escape duas vezes para sair copy mode
. Pode usar Ctrl-r para pesquisar na direcção inversa. Note que uma vez que tmux
está no controlo do teclado em copy mode
, Ctrl-s funciona independentemente da configuração stty ixon
(que eu gosto de ter como stty -ixon
para permitir buscas em Bash).
Se estiver a utilizar ligações de teclas vi (Ctrl-b:set-window-option -g mode-keys vi
), prima / depois digite a string a pesquisar e prima Enter. Prima n para procurar novamente a mesma cadeia de caracteres. Prima Shift-n para pesquisa inversa, tal como no modo emacs. Carregar q duas vezes para sair copy mode
. Pode usar ? para pesquisar no sentido inverso.
Se quiser mudar para uma janela baseada em algo exibido nela (isto também inclui nomes de janelas e títulos mas não histórico), (começando com mais de uma janela aberta) prima Ctrl-b f depois escreva a cadeia de caracteres para procurar e prima Enter. Será mudada para uma janela contendo esse texto, se este for encontrado. Se mais do que uma janela corresponder, verá uma lista para seleccionar.
Introduzir modo de cópia e começar a procurar de uma só vez
bind-key / copy-mode \; send-key ?
permite fazer apenas:
Ctrl + B /
e começar a digitar o termo de pesquisa.
Dump to a file and use vim*
Quando as coisas se envolvem mais, só quero usar um editor adequado: https://unix.stackexchange.com/questions/26548/write-all-tmux-scrollback-to-a-file
bind-key P 'capture-pane' \; capture-pane -S - \; save-buffer /tmp/tmux \; delete-buffer
Agora P
despeja o buffer para um ficheiro, e depois só:
vim /tmp/tmux
Testado no tmux 2.6.