Tmux es “peor es mejor”
(hiandrewquinn.github.io)¿tmux es una mejor opción?
Introducción a tmux
- tmux es la abreviatura de "terminal multiplexer" y permite dividir la terminal en varios shells independientes
- Viene instalado por defecto en OpenBSD
- Es útil para programadores que usan SSH con frecuencia
- Permite dividir la pantalla sin un entorno gráfico
- Es adecuado para quienes buscan el minimalismo digital
La opinión de Kovid Goyal
- Kovid Goyal es el desarrollador del software ePub calibre y del emulador de terminal Kitty
- A Goyal no le gusta tmux
- En su FAQ expresa una opinión negativa sobre tmux
- Los multiplexores de terminal añaden una sobrecarga innecesaria
- El aumento de complejidad provoca una caída del rendimiento
- Es ineficiente en términos de energía y rendimiento
- Tiene un impacto negativo en todo el ecosistema
Experiencia personal de uso
- El autor usa UNIX en casa y Windows en el trabajo
- Usa tmux con frecuencia en situaciones donde necesita usar SSH varias veces
- tmux puede funcionar en distintos emuladores de terminal
- Kitty debe funcionar en el sistema al que se accede de forma remota
La filosofía de "Worse is better"
- "Worse is better" se acerca más a una filosofía de gestión de producto que a una filosofía de software
- Enfatiza que es importante optimizar la función principal del software para los casos de uso más comunes
- Al autor personalmente le gusta VM, pero en la práctica usa tmux con más frecuencia
Conclusión
- El autor usa principalmente acceso remoto desde Windows
- Tiene memorizados los atajos de tmux
- Los atajos de Kitty también son excelentes, pero tmux es más útil
La opinión de GN⁺
- tmux es muy útil para desarrolladores que usan SSH con frecuencia. En especial, la capacidad de ejecutar varios shells al mismo tiempo es una gran ventaja.
- Como señala Kovid Goyal, los multiplexores de terminal pueden afectar el rendimiento, pero la mayoría de los usuarios probablemente valorará más sus beneficios.
- Emuladores de terminal como Kitty pueden ofrecer un mejor rendimiento, pero es difícil reemplazar la versatilidad y la comodidad de tmux.
- Para quienes buscan el minimalismo digital, tmux es una herramienta muy atractiva. Ofrece funciones potentes incluso sin un entorno gráfico.
- Si se usan tmux y Kitty juntos, se puede aprovechar al máximo las ventajas de cada herramienta. Por ejemplo, usar Kitty en local y tmux en servidores remotos.
1 comentarios
Opiniones de Hacker News
Resumen de comentarios de Hacker News
"No creo que parsear las pulsaciones de teclas dos veces sea una causa importante de desperdicio de ciclos de CPU y consumo de batería. Kitty incorpora la mayoría de las funciones de tmux, pero eso no ayuda mucho a quienes trabajan por SSH. Meter todo dentro del emulador de terminal parece una adición innecesaria de funciones."
"La verdadera razón para necesitar tmux es la persistencia remota. No quiero perder mi sesión de vim aunque se caiga la conexión al servidor."
"La función decisiva de tmux es que mantiene persistente el espacio de trabajo, no solo el shell. Kitty y screen no resuelven ese problema. Si hubiera persistencia del espacio de trabajo basada en el emulador de terminal, dejaría tmux."
"A Kovid Goyal, el desarrollador de Kitty, no le gusta tmux. Kitty incluye la mayoría de las funciones de tmux, pero no ofrece persistencia remota. Depender del emulador de terminal significa necesitar nueva memoria muscular al cambiar a otro emulador."
"El uso básico de
screenotmux(iniciar, crear y cambiar ventanas, volver a adjuntarse) debería formar parte del kit de herramientas de cualquiera que necesite conectarse por SSH a servidores. Especialmente en startups, hay que entender los sistemas y poder trabajar de manera creativa y eficiente.""Puedes agregar configuración en
~/.ssh/configpara multiplexar sesiones SSH sobre una sola conexión. La primera sesión usa autenticación por huella y después puedes conectarte sin autenticarte durante 300 segundos. A través de Tailscale, también puedes mantener la sesión incluso cuando estás desconectado.""El mayor valor de SSH es que los trabajos largos pueden continuar a pesar de una desconexión. Es muy frustrante que se corte la conexión cuando una descarga larga ya casi termina."
"Uso Windows como sistema operativo host y trabajo en Linux. Uso tmux para ejecutar varios shells. Hay problemas de rendimiento, pero en términos de productividad es muy útil."
"Para SSH remoto, uso configuración en .ssh/config para iniciar automáticamente tmux remoto. Así puedo conservar el trabajo incluso con conexiones inestables. Uso tmux todos los días y no he encontrado otra alternativa."
"La opinión de Kovid puede ser técnicamente correcta, pero desde la perspectiva de usabilidad está equivocada. Los usuarios prefieren lo que les simplifica la vida. Probé zellij, pero volví a tmux. tmux tiene una barrera de entrada más baja."