- Usó tmux durante mucho tiempo, pero recientemente empezó a cuestionar su complejidad y sus límites (compatibilidad de colores, scrollback, copia con mouse, falta de soporte para protocolos, etc.)
- Funciones principales de tmux como la persistencia de sesión (detach/attach) o la división y administración de ventanas no necesariamente requieren tmux
- Aprovechando herramientas ligeras con filosofía Unix como dtach, abduco y shpool, es posible enfocarse solo en la gestión de sesiones y al mismo tiempo conservar el scrollback nativo y la simplicidad
- En particular, con la combinación de
shpool + ssh se puede construir un entorno donde varias sesiones remotas se administran directamente con el gestor de ventanas, manteniendo funciones nativas como notificaciones, scroll, títulos, etc.
- No es perfecto, pero según su experiencia pudo reemplazar por completo tmux y quedó satisfecho con un flujo de trabajo simple y fácil de mantener
Ventajas y desventajas de tmux
- Funciones que antes ofrecía tmux, como la persistencia de sesión (detach/attach) y la gestión de ventanas (pestañas, split), eran el núcleo de su flujo de trabajo
- Sin embargo, la complejidad aumenta por problemas como el renderizado de colores si no se configura correctamente
TERM, y la necesidad de considerar la interacción entre la terminal y tmux
- El uso del búfer de scroll también exige acostumbrarse al método propio de tmux, y copiar áreas con el mouse resultaba incómodo en un entorno con splits
- También existen problemas de soporte insuficiente para nuevas funciones de terminal, como kitty graphics protocol, y falta de compatibilidad con protocolos experimentales
- Además, hay críticas de que los multiplexores, al reinterpretar códigos de escape duplicados y añadir conceptos de sesión/ventana, frenan la evolución del ecosistema de terminales
Explorando alternativas a tmux
- Persistencia de sesión:
- Hay opciones simples como
ctrl-z + fg, nohup o disown, pero es difícil que reemplacen todo por completo
- Han aparecido varias herramientas cuyo objetivo es solo mantener la sesión (
dtach, abduco, shpool)
- Conectan daemon y cliente mediante una combinación de fork() y sockets UNIX
- A diferencia de tmux, permiten scrollback nativo sin splits virtuales, y algunas también ofrecen restauración de búfer
- Según su experiencia, la mayoría de las alternativas tienen bugs y una madurez limitada, por ejemplo cuando la combinación de teclas para detach no funciona dentro de
nvim
- Solo shpool le pareció la opción más sólida en cuanto a comandos de detach/attach y personalización de keymaps
- Gestión de ventanas:
- En local, administra divisiones y disposición con el gestor de ventanas
- Incluso en entornos remotos (SSH), combinando ssh_config y shpool se pueden mantener varias sesiones independientes en ventanas separadas
- Al combinarlo con autossh, la sesión se conserva incluso en entornos con reconexión de red
Nuevo flujo de trabajo
- Personalmente usa ghostty (laptop) y sway+foot (PC personal) para gestionar ventanas. El servidor corre en una VM headless basada en Proxmox, manteniendo siempre un entorno de desarrollo por SSH
- Varias sesiones de shpool se conectan automáticamente con atajos ssh y se controlan de forma independiente desde el gestor de ventanas local
- En
ssh_config, automatiza el attach a sesiones de shpool según cada host
- Desde cada terminal puede acceder por separado a IRC, administración de dotfiles y un entorno distinto de neovim, entre otras sesiones múltiples con acceso individual
- Funciones como scroll nativo, notificaciones y títulos de terminal, que tmux soportaba de forma inestable, ahora funcionan de manera más natural
- También hay desventajas: al reconectarse a vim, la restauración del estado de la terminal puede tardar, y con
nvim hay problemas de redimensionamiento
- No hay soporte multijugador (si autossh se activa al mismo tiempo desde varios clientes, se producen conflictos de sesión)
- Aun así, según su criterio personal, logró reemplazar tmux por completo
Conclusión
- No es exactamente lo mismo, pero es posible pasar a un flujo de trabajo de gestión de sesiones simple y flexible, dejando atrás la complejidad y las limitaciones de tmux
- Dependiendo del flujo de trabajo de cada quien, vale la pena considerar herramientas alternativas como shpool
Aún no hay comentarios.