¿Puedo hacer que un panel tmux sea "adhesivo"?

9

¿Es posible hacer que uno o más paneles tmux sean "adhesivos"? Es decir, ¿aparecerán estos paneles en todas las ventanas que están actualmente disponibles en mi sesión de tmux?

Arne
fuente

Respuestas:

5

Esto aparece en la lista de correo cada vez en un rato .

No, no es posible tener un panel en más de una ventana.

El diseño interno de tmux permite que las ventanas sean sesiones múltiples, pero un panel solo puede pertenecer a una sola ventana.

Chris Johnsen
fuente
3

Como dice Chris, no hay una funcionalidad incorporada que permita marcar un panel como pegajoso, y esto tiene sentido, porque no es del todo evidente de inmediato cómo manejar la reestructuración de todos los paneles en todas las demás ventanas cuando alterna la "adherencia" de algún panel en particular en la ventana actual. En general, sería una mala experiencia para el usuario meterse con el diseño de una manera que ni siquiera sea visible para el usuario.

Puede encontrar útil un enlace como este:

bind -n M-k move-pane -t ':+'
bind -n M-j move-pane -t ':-'

Esto sería amigable para un usuario de Vim acostumbrado a J y K para moverse hacia la izquierda y hacia la derecha. Con este enlace, tmux intervendrá y tragará Alt+Ky Alt+Jmoverá su panel activo a las ventanas derecha e izquierda, respectivamente.

Tirará de la ventana actual en la que se encuentra y la introducirá en la ventana tmux adyacente. Incluso puede especificar qué índice insertar el panel en el diseño de la ventana de destino. Consulte la página de manual para conocer las otras opciones que se pueden ofrecer move-pane.

De esta manera, por supuesto, todavía hay un cambio de diseño (uno en la ventana de origen que está implícito y restringido a un panel, y uno en la ventana de destino, también restringido a un panel y que se observa directamente), pero está mucho más "controlado ", y siempre que mantenga el foco en el panel que pretende ser" adhesivo ", logra su objetivo, más o menos.

Todavía encuentro esto insatisfactorio debido a la necesidad de enfocar el panel destinado a ser "adhesivo", y eso hace que sea difícil emitir rápidamente este comando si desea tener un panel adhesivo que siempre esté visible pero que realmente nunca lo haya enfocado .

Existe la posibilidad de crear secuencias de comandos tmux un poco más elaboradas que usen nombres especiales para el panel que desea que sea pegajoso y organice manualmente las cosas por usted. Sin embargo, esto suena como un dolor en el culo.

Una última opción para entretener es usar tmux anidado: coloque su panel adhesivo en tmux padre y haga que el otro panel contenga un tmux que aloja el resto de sus terminales. De esta manera, puede cambiar libremente en su hijo tmux. El problema con esto es que necesitará encontrar algo viable porque, de manera predeterminada, deberá presionar la tecla de prefijo dos veces para realizar las mismas tareas. Muy molesto también. He enlazado ese "túnel" inteligente a través de cualquier tmux anidado, pero la lógica de estos esquemas ineficientes de paso de mensajes rápidamente se vuelve difícil de administrar. Y una limitación con esto es que el "panel adhesivo" aquí tiene que abarcar todo el alto o ancho, no puede ser una esquina.

En conclusión, diría que esta es una característica que tmux debería implementar para nosotros porque es casi imposible hacer lo correcto con los scripts, sin embargo, no sé cómo podría hacerse de una manera no confusa (vea mi primera oración )

Steven Lu
fuente
2
Por lo que vale, creo que en lugar de permitir que se permita la adherencia, porque es realmente difícil definir qué hacer con otras ventanas, debería haber un panel de clonación, que aquellos que realmente desean la adherencia podrían explotar para lograr el mismo resultado. Y, francamente, es el panel de clones que estaba buscando lo que también me llevó aquí. Esa sería una buena característica.
Tommi Kyntola