Maybe worth another look at then? I'm far from a Kitty power user, but it does pretty much everything else I want it to, including working as a quake-style terminal[0]. And you can extend it with kittens[1] if you so desire. Also, the next release should presumably include smooth scrolling[2] which I'm quite looking forward to.
Maybe more than any one feature though, I appreciate the hard work that Kovid (the creator of Kitty) has done to tastefully add new VT standards and try to make terminals as useful as they can be in the 21st century.
[0] https://sw.kovidgoyal.net/kitty/kittens/quick-access-termina...
Ctrl+Shift+G wraps the output of the previous command into a pager (say, less). You often only know you needed a pager after that output is printed.
Ctrl+Shift+E highlights all links on the current screen and assigns short alphanumeric codes to them, so you can open links without using the mouse. For example, `Ctrl+Shift+E 1` opens the first link, `.. 2` the second one, etc.
Ctrl+Shift+U opens symbol search where you can find & insert symbols using their unicode names. Emoji, TUI blocks, rare accented characters you need once in a blue moon, CJK ideographs, whatever.
For instance, in vim the F3 key was broken[^1]. It was very surprising and weird, and a portable workaround required some arcane vim configuration.
Another important pain point was that the font rendering was different in Kitty to any other app, and very dependent on the screen DPI. IIRC, for a DPI around 100, I had to switch to "legacy rendering" because the default rendering was barely readable.
I also remember issues with SSH. And Kitty crashed at least once. And I wasn't a fan of Kitty's mix of C and Python. After a week or two of usage, my Kitty config file was big, with an extra hundred lines of Python for the tabbar. Despite some nice features (like the shortcut to put the output of the last command into a file), I got uneasy with all this mess. I tried Ghostty, which was as good as Kitty with much less oddities.
WezTerm is a very good replacement.
So true. To the point I have to maintain my own fork to make the command key my meta
But you do have to run a proper window manager so you don’t have to require tab support in every single app. ;)
But I’m just busting your chops, don’t listen to me. I don’t even use i3/Sway, or use tabs at all. Everyone has their own workflow that works best for them.
I also use vim (well neovim) as my primary editor, and have set up tmux to integrate well with it, so that might contribute to my appreciation and continued usage of it.
Hitting c-b c-b isn't that inconvenient?
On reboot it remembers my tabs and panels and even commands that ran inside last (i.e there is popup in every panel that had something runing to run it again or just open a terminal)
Before my great wayland migration I ran patched st and it was great. Terminal job is render what terminal multi-plexer gives it and passes input to multiplexer.
I hold Control and double-tap b for managing the remote session, then everything else is the same.
Granted, I'm not a power user, so there may be numbers that get frustrating. I could imagine complex splits getting confusing (I don't use splits at all).
I do use tabs rather than repeatedly switching tmux sessions, but I do end up running tmux for splitting the GUI into side by side layouts.
I like the idea of tmux but as another poster suggested, I prefer to just get better at my window manager to achieve similar results. tmux requires way too many key presses for me.
https://github.com/borisfaure/terminology
Its "moment" as a new novel terminal was over a decade ago, but it still chugs on working just fine. Notably(?), gregkh uses it (or used to use it):
https://www.linuxfoundation.org/blog/blog/greg-kroah-hartman...
Another option is to leave the tabbing to your window manager.
BTW is there feature parity between macOS and Linux, e.g. scrollback buffer searching on Linux?
Tabs usually mean mouse+click to switch which takes way more effort that a simple alt+number or similar keybinding used to switch "tabs" in tmux. I'd guess that some terminal emulator tabs allow keybindings to switch tabs as well but, modelling OP, I'm focusing on the expected default experience.
I hate mixed mouse + keyboard workflows as well.
You can turn on a feature documented as allowing the terminal to be controlled by escape sequences, but then output of programs can control the terminal! Whoop-de-do.
Surprised none of the other commenters have mentioned zellij. I work across windows (WSL) and linux so really like having the same set up for both, which means no Ghostty/Kitty since they don't support windows.
Zellij is a lot smoother and nicer looking out the box, and its key shortcuts are pretty intuitive. There's a lit of advantages to not having an extra layer, but zellij + alacritty is definitely worth having in your list of options!
WezTerm has everything I need and is closest to iTerm2, minus being able to quit it and have it restore all windows and tabs on restart -- but oh well, it's not an important enough feature. It also renders my prompt perfectly; no small pixel divergences like all other terminals have.
Kitty I don't remember why I rejected.
Alacritty I like but the lack of tabs is not acceptable for the moment... and before you ask: I hate tmux. So much more key presses to achieve basic functionality, it boggles my mind why people love it. But, to each their own obviously.
It's also likely I'll settle for some Linux-exclusive terminal but as I'm not yet possessing a Linux workstation (just a laptop) I haven't put the requisite time to do this research.
Suggestions are welcome.