So far I have used Konsole to manage multiple shell sessions but I haven't tried Byobu, GNU Screen, and tmux, which offer better support for multiple shells. They all share one main feature, which is to allow detaching the current session and later reattaching to that old session.
To help me pick a tool to learn, I'd like to know: how do they differ in the following respects?
- Features (obviously)
- Project maturity. I do not want to learn a tool that is changing too much. Enhancements are welcome, but I don't like surprises such as disappearing features.
- Learning curve
- Availability in different platforms. If I learn a tool, I'd like to be able to use it on a FreeBSD server, SuSE desktop, or Ubuntu.
- Compatibility with other interactive shell programs. Can I still use
vim
andemacs -nw
(non-window mode, or text mode) the same way I am used to? Will the keyboard shortcuts conflict with the ones of other tools?
I just tried all of them and Byobu looks like a sort of front end for GNU Screen and tmux. Then why did someone create Byobu instead of contributing to the GNU screen project and adding new features? Why is Byobu not some sort of advanced interface mode in GNU Screen? If I use Byobu as my daily tool with GNU screen as the backend, can I transfer this knowledge to use GNU Screen without Byobu if a certain machine only has GNU Screen?
Answer
For Tmux vs GNU Screen, read
and several other comparison incarnations that can be found on blogs and such.
Some general terms that are oft repeated:
- Tmux is newer. This means it is a bit fancier (simple vertical splitting, nice green lines) and a bit less well tested for e.g. compatibility (to negligible extent according to its proponents).
- Tmux is leaner on resources.
- GNU Screen is found everywhere and is most probably still more used.
Apart from this, one can look at specific functions for one or the other alternative, and personal preference will dominate the discussion. I personally used to use GNU Screen heavily — now I use Tmux.
I have not found Byobu to have any "killer features" for me. It provides an abstraction where I believe none is needed for my use cases.
Another way to look at it is to note that Byobu can use either of GNU Screen or Tmux as backend, which shows that the differences from a user POV are mostly superficial.
No comments:
Post a Comment