Pregunta ¿Cómo puedo buscar dentro del buffer de salida de un shell de tmux?


No puedo hacer que esto funcione. ¿Cómo puedo buscar en el buffer de un shell tmux?


135


origen


Qué versión de tmux (tmux -V)? Creo que esto fue agregado en la versión 0.9. - Dennis Williamson
@Dennis es 1.3-1 - NES
Encontrar la versión con tmux -V funciona solo en versiones posteriores. En Ubuntu / Debian puedes hacer: dpkg -l | grep tmux - Niels Bom


Respuestas:


modo de copia de búsqueda

Para buscar en el tmux buffer de historia para la ventana actual, presione Ctrl-segundo  [ entrar copy mode.

Si está utilizando enlaces de teclas de emacs (por defecto), presione Ctrl-s a continuación, escriba la cadena para buscar y presione Entrar. prensa norte para buscar la misma cadena nuevamente prensa Escapar dos veces para salir copy mode. Puedes usar Ctrl-r para buscar en la dirección inversa. Tenga en cuenta que desde tmux está en control del teclado en copy mode, Ctrl-s funciona independientemente de la stty ixon entorno (que me gusta tener como stty -ixon para habilitar búsquedas directas en Bash).

Si está utilizando enlaces de teclas vi (Ctrl-segundo:set-window-option -g mode-keys vi), prensa / a continuación, escriba la cadena para buscar y presione Entrar. prensa norte para buscar la misma cadena nuevamente prensa q dos veces para salir copy mode. Puedes usar ? para buscar en la dirección inversa.

ventana de búsqueda

Si desea cambiar a una ventana basada en algo que se muestra en ella (esto también incluye nombres de ventanas y títulos, pero no el historial), (comenzando con más de una ventana abierta) presione Ctrl-segundo  F a continuación, escriba la cadena para buscar y presione Entrar. Se lo cambiará a una ventana que contenga ese texto si se encuentra. Si hay más de una ventana coincidente, verá una lista para seleccionar.


212



¿Cómo puedo configurar el estilo de encuadernación? (emacs vs vi) - Daniel Que
@DanielQue: Eche un vistazo a la página man de tmux y busque "teclas de modo" y "teclas de estado". Esos son subcomandos que le permiten establecer el estilo de encuadernación. Alternativamente, podría ser más simple establecer una variable de entorno (EDITOR o VISUAL) al estilo que quieras antes de comenzar tmux. - Dennis Williamson
Gracias, lo tengo para trabajar con set-window-option -g mode-keys vi en mi .tmux.conf. Pero tenía curiosidad sobre la alternativa de la variable de entorno y no pude hacer que funcionara. ¿Es una variable de entorno shell, o una variable de entorno tmux que debe establecerse en el archivo conf? - Daniel Que
@DanielQue: una variable de entorno de shell. Deberá exportarse o colocarse en el entorno de tmux de la siguiente manera: VISUAL=vi tmux - Dennis Williamson
También tenga en cuenta que no hay búsqueda de expresiones regulares aún, aquí hay un problema abierto en él sourceforge.net/p/tmux/tickets/9 - Elijah Lynn


Ingresa al modo de copia y comienza a buscar de una vez

bind-key / copy-mode \; send-key ?

te permite hacer solo:

 Ctrl + B /

y comienza a escribir el término de búsqueda.

Vuelca a un archivo y usa vim

Cuando las cosas se complican más, solo quiero usar un editor apropiado: 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

Ahora P vuelca el búfer en un archivo, y luego simplemente:

vim /tmp/tmux

Probado en tmux 2.6.


6