kitty the terminal emulator

/media/images/kitty-terminal-emulator-1792196299.png

I've been keeping an ear open about the terminal program kitty. Most recently a post on hackernews noting the input latency was lowest in this modern terminal emulator made me finally decide to download and check it out.

I currently use alacritty and I'm pretty happy about it. I've settled on a config that works across multiple machines and I generally don't have to think about it. I loaded up the kitty webpage and the introductory video surprised me.

The first surprise is the source code is a mixture of python c and go. This is alarming to someone coming from rust. I don't have anything against these languages but python and c aren't respectively designed for speed or safety.

The demo showed inline graphics which got me excited that this might be a path to a long dream of mine, integrating the browser into a terminal session. As soon as I saw this I paused the video and looked to see if anyone had done something like this but found nothing.

I was also surprised by the integrated terminal multiplexing features. I figured I could ignore these features since I'm a happy tmux user (it's essentially my entire desktop environment these days) but the author of kitty is unusually hostile towards terminal multiplexors. He says they are deficient to kitty in every way except for remote persistence.

Remote persistence is the primary reason I use tmux. Being able to reboot my computer, ssh to another device and connect to the running terminal session is non-negotiable. When someone opened an issue on github about the lack of remote persistence the author closed it as an 'unmitigated waste of my time'.

This user hostile attitude isn't always a sign of eventual project failure (see Theo de Raadt or the asshole that develops tiny tiny rss) but it's enough to tell me kitty is not for me.