I switched from screen to tmux after almost 20 years of using screen. The impetus for the switch was that I found a bug in screen, and discovered that it had been reported for many years.
tmux handles changing terminal sizes better than screen does. The config language is much easier to read and write. The status line looks a little nicer.
If you use screen mainly to disconnect a terminal from.m an SSH session then tmux won’t do much for you. However, it would be easy to switch because you’re only scratching the surface.
If you use it heavily, then you may be hitting limitations and it would be worth experimenting with.
I find that I do most of the tmux-like things with multiple iterm windows instead, but I’m a lousy mouser.
iTerm2 actually has a pretty well-designed tmux integration[0].
Overview from the guide:
When you run "tmux -CC", a new tmux session is created. An iTerm2 window opens and it acts like a normal iTerm2 window. The difference is that when iTerm2 quits or the ssh session is lost, tmux keeps running. You can return to the host you were ssh'ed into and run "tmux -CC attach" and the iTerm2 windows will reopen in the same state they were in before.
It works with multiple panes, windows, etc. Worth trying out!
If you're that happy with `screen` I would suggest that you just continue using it. I also was a `screen` user initially.
Later, I switched to `byobu`, which started out as a wrapper around `screen` by Dustin Kirkland (of Ubuntu). At some point `byobu` switched to wrapping `tmux` to fix some corner cases/bugs, and it now prompts on first run whether or not you want `screen`-like ctrl-a behavior. https://linux.die.net/man/1/byobu-ctrl-a
It’s like comparing Apache to nginx. They’re both very similar.
The biggest complaints with screen is that the source code is a disaster, and it’s slow with lots of windows, and has put mouse support.
Tmux is very configurable, I used screen from 2005 until 2017 when I went all in on Tmux. My muscle memory couldn’t adapt though. So not all my Tmux bindings match screen.
Hear about `tmux` here and there, but so far not sure about the benefits. Any particular reason it's better over `screen` ?