I've been happy with the switch. I was a long-time `screen` user, too, and something that helped me a lot with the switch to tmux was adding a few lines to my ~/.tmux.conf to change the command prefix from ^b to ^a, like screen. It made the muscle-memory shortcuts I'd used for so long still basically work.
unbind C-b
set -g prefix C-a
bind-key a send-prefix
Hope that helps, and good luck!My major painpoint might seem minor, but: If you're using the default ctrl+a meta in screen, and usually keep ctrl pressed when cycling through screen windows, it will take some getting used to tmux as you need to release ctrl as it will otherwise read it as another combination.
Most other stuff is configurable to your liking, though I prefer adapting to new defaults to evaluate the mindset behind the tools.
It's otherwise less different than I imagined, and I'm not sure how much you'll gain from the switch. Unless tmux gurus know a lot of cool secrets that I don't.
If you're using screen, you're already sipping the terminal multiplexer coolaid. I think it's the paradigm that's more important than the specific program/implementation.
Really, if screen works for you, tmux isn't going to change your life. And I say this as someone who used screen for at least 10 years before switching to tmux.
I have Caps Lock set to be Ctrl and tmux set to use Ctrl+a. For a vertical split, I have it mapped to Ctrl+a, |. For horizontal, Ctrl+a, -
It’s pretty flexible.
# In ~/.tmux.conf Change prefix key to Ctrl+z
unbind C-b
set -g prefix C-zIt is stems 100% from the terminal emulator. Just install a better one. Test your keys with https://metacpan.org/source/PEVANS/Tickit-0.67/examples/demo...
Screenshot: https://i.imgur.com/JfHjJXy.png
The only key combos marked not ok are global/taken by the window manager, so they don't arrive at the application.
What possible reason can there be?
I usually make a point of setting different prefix keys in that case though.
e.g., in screen I could configure "^a j p" to do one command and "^a j d" to for another:
> bind j command -c foo
> # CMD KEY NAME CMD
> bind -c foo p screen -t '% |db' make db
> bind -c foo d screen -t '% |prod' ssh prod
If that's possible, I'd love to know how. It's what stopped me from switching a few months ago, and is now the most painful change after switching again a couple days ago.
On the plus side, tmux has plugins that allow pretty sophisticated interactions (more than tmux)
You have to type: apt install tmux. Or, whatever your distro of choice's package manager install line is. I'd hardly call that going out of one's way.
screen is more akin to a unix program that borrows the styling of options from getopts.