Running btop within tmux using kitty also has color problems, but Alacritty also fails at that.
I guess it is especially messy in the terminal, reading a little bit into the issues and it just feels like a ton of legacy hacks between different implementations.
And comparing that to the browser is interesting. Both are "ubiquitous"—terminal emulator for cli/TUI, and browser for GUI. May be because of there generality / ubiquity, it is messy and impossible to "make it right".
set -g default-terminal xterm-256color
set-option -sa terminal-overrides ',xterm-kitty:RGB'
set-option -ga terminal-overrides ",xterm*:Tc:smcup@:rmcup@"
set-option -ga terminal-overrides ",screen*:Tc:smcup@:rmcup@"
set-option -ga terminal-overrides ",tmux*:Tc:smcup@:rmcup@"
I honestly don't know whether all are needed, or only some. But with these, it worked well for me.I gave up kitty because the author obviously don't like tmux and is advising users not to use it. So it is more like a choice between kitty and tmux. Giving up kitty is easier for me in terms of features and time for retraining.
What's your reason to migrate from kitty to wezterm?
My reason to no longer using kitty is simple: I don't like having to copy kitty's terminfo data to every single system I connect to in order to have my terminal work.
It's fine for those few systems I very often connect to, of course.
But I also connect to ephemeral systems, sometimes for a short session, and the toil and friction inherent in having to do that just isn't worth it.
Sure, "kitty +kitten ssh ..." can work in most people's scenarios. Didn't quite work in mine, due to various intricacies about my ssh setup - multiple ssh keys, handled mostly by ssh-ident.
wezterm Just Worked for me. As I got "back" to also using other systems like Windows and MacOS, it Just Worked there, too. No fiddling with terminfo, no fiddling with $TERM, either.
Happy days.
You can put LocalCommand directive in your ~/.ssh/config to scp something to the remote machine. I use it to have my .vimrc synced on all my systems.
You likely need all of them ;-)
IIRC it "fixes" terminfo stuff "within tmux" for kitty regardless of what $TERM is set. Mind you, I was using the latest tmux at that time. tmux 3.2?
Here's the issue I had: https://github.com/kovidgoyal/kitty/issues/3018
Looks like it should be fixed on a very recent tmux; otherwise this MIGHT help:
set-option -as terminal-features ',xterm-kitty:RGB'
... or not.Thanks!