tmux is a terminal multiplexer: it enables a number of terminals to be created, accessed, and controlled from a single screen. tmux may be detached from a screen and continue running in the background, then later reattached.
I will agree that Tmux annoying to configure, and having to have
# === Tmux related stuff === if command -v tmux &>/dev/null && [[ ! $TERM =~ screen ]] && [[ -z $TMUX ]]; then exec tmux -f "/home/bigdaddy/.config/tmux/tmux.conf" fi # to get colors right if command -v tmux &>/dev/null && [[ ! $TERM =~ screen ]]; then export TERM="tmux-256color" else export TERM="xterm-256color" fi
# === Tmux related stuff === if test -z $TMUX && test $TERM != "screen" if status is-interactive exec tmux -f "$TMUX_DIR/tmux.conf" end end # to get colors right if command -v tmux &>/dev/null && test "$TERM" != "screen" set -x $TERM "tmux-256color" else set -x $TERM "xterm-256color" end
In order for Tmux to work as intended is a bit silly. I remember the nice thing about Kitty was not having to configure Tmux, though I don’t recall why I switched to Alacritty + Tmux. I think it’s because I found no real use in being able to create kittens, that or it just frustrated the hell out of me. That and I think the keybinds I had to use for Kitty annoyed me, maybe.
The thing I’m seeing with looking at wezterm is that
- Configuring with a Lua file is an odd choice.
- Multiplexing is cool, but I really all I care to do is split the frame/window/whatever or create multiple panes. I don’t need nor know if I’d even want “domains.”
Other than that, it looks cool. I might try it for the hell of it.
Nushell is somewhat the same. I don’t see why I need the extra stuff that it provides. Though, I use Fish so it’s not like I can really talk about “unnecessary” features.