Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Kitty: The fast, feature-rich, GPU based terminal emulator (kovidgoyal.net)
62 points by varbhat on March 23, 2022 | hide | past | favorite | 31 comments


Afaik the director has been a dbag with his projects re contributors. Calibre and kitty.

It is his project and he doesnt owe any one anything, bit i would take my Limited OSS Aattention elsewhere.


The maintainer can be blunt at times but from that to saying he's a "dbag"... there's a stretch.

In my opinion he's one of the most expedient OSS maintainers I've seen, and has a great deal of patience with entitled users who expect him to basically do free work for them.

Please don't listen to this comment and do consider contributing.


As a hug fan and avid user of Kitty, I have to agree. The maintainer definitely behaves a bit like a jerk. It really is a shame because the product he made is incredibly nice.


> Afaik the director has been a dbag with his projects re contributors.

How so?


AFAICT he bluntly closed the issue that asks for CJK input support in kitty. https://github.com/kovidgoyal/kitty/issues/462 I understand there might be technical difficulties but his attitude is disappointingly bad.


> attitude is disappointingly bad.

You'd rather he catered to every feature request?


> So write a script to do it for you. I dont know what you are asking for here. I already told you glfw does not support XIM.

Thid is blatantly rude and dismissive.

I think people would rather he was polite. As much as I respect Mr.Goyal for his work, he does not have the right to talk down to other people because he maintains something.

Please don't make excuses for someone being rude because they're a FOSS developer. I've seen it so many times on here now.


What is considered rude is entirely subjective. For instance, I feel bringing up something after being told why it wouldn't work and wasting people's time is rude.

Perhaps you would have phrased it differently. But I don't buy the idea that every interaction should be sugar coated.

Quod licet Iovi, non licet bovi.


I don’t think there’s a need to sugarcoat every interaction, but at the same time, we’re but living beings, who all have our share of frustrations and bad days. It takes little to speak or write something a bit softer.


A GitHub issue is not equivalent to a direct message to the developer. Other people can see GitHub issues/feature requests, and sometimes, one of them steps up and does the legwork of fixing/implementing the thing.

> But I don't buy the idea that every interaction should be sugar coated.

Me neither, Kovid has every right to communicate whatever way he wants to, and nobody can take that right away from him.

Just as I have the right to consider him a rude [insert generic insult].


It is perfectly possible not to cater to every feature request, without being rude. A single sentence like this:

    I don't have the time, energy, desire, nor language knowledge to implement this feature.
conveys completely the same information as Kovid's comments, with the benefit of not being aggressive and demeaning.


Also see: https://news.ycombinator.com/item?id=8213946

There are a lot of references to Kovid's aggressive manner of communication here.


These are far better examples for the point that was being made regarding his behaviour Thanks!


It's a very fast terminal but has some graphical artifacts in vim for me with integrated terminal.

I use alacritty now. I also used wezterm for a while, it's really good but feels slower.

Overall we are spoiled with choice. :)


I spent some time traveling where my only computer was a Raspberry Pi 4 running 64 bit mode, and the only sensible graphics performance I could get in wayland was with “foot”. https://codeberg.org/dnkl/foot


Tangential curiosity: how did traveling with just an RPi work for you? Were you borrowing screens and keyboards, or using your own keyboard with a hotel TV? Any other accessories you used? Anything you'd do differently next time?


I'm not the parent, but I've traveled around with an Intel NUC, which is only a little bigger than the RPi. I got a portable 15" 4k "gaming" screen for $300, and I have a half-width keyboard. I bought a photo box from Michael's which fits all the non-screen items. I can easily pack it in a backpack (e.g. Jansport bookbag) no problem. The keyboard is frustrating to type on, although you get used to it. I probably should have gone with a keyboard similar to those Apple ones (but wired), didn't occur to me.

I was trying to have a Windows/Linux machine on the cheap for the occasional cross-platform project. However, if you're doing serious work, you'll be happier with a nice laptop. (Except I don't know where you'd find a retina laptop outside of Apple)


I was really only using it while staying with family and friends where I was always able to use an old monitor or a tiny "bedroom/kitchen" TV, but a hotel TV would be fine too (I'm assuming ports aren't blocked). I brought a Logitech K400 which is small, wireless, and has a builtin trackpad. Was also only using it for programming and basic web browsing. I don't recommend the keyboard (keys are a bit wobbly, some odd key positioning and shapes, definitely takes some getting used to, and the trackpad is relatively poor), but I just wanted something I could use for an hour or two a day, and it was perfectly acceptable for that. If I had to use it for a few more hours, I'd just bring a proper keyboard and mouse (weight permitting).

I was confident I'd be fine though, I set it up in advance and used it briefly on the couch with a tiny monitor for about a week.

I strongly recommend taking advantage of the USB HDD boot that's now supported on Pi 4 -- even some 15 year old 60GB spinning platter you have lying around from a long dead laptop is in my experience going to be faster than an SD card. USB3 to SATA connectors are cheap and reliable.

The reason I did it was just trying not to be wasteful. My laptop died and I have no problem getting a new one, but I'm pretty sure I'll need a new one in a year for work -- the problem is I won't know the specifications (even OS, architecture, etc.) that I'll need until then, so I just wanted to see if I could get away without having to guess in advance. Generally I like to buy only when I need to, and to buy the best thing available at that time (within reason), and use that for a long time.


> (Except I don't know where you'd find a retina laptop outside of Apple)

These days there are vendors releasing laptops with 90hz refresh rate OLED screens, 2k and 4k resolution even, on the 14" and the 16" ones. Asus for example has that on their ZenBook and their VivoBook series.


My favourite part of kitty is the "grabbers", like "ctrl+shift+p f" pops up vim-sneak like tags on all the file paths visible in the terminal. Swap f for h and it will let you select a hash. I would love it if that became a standard across terminals


https://github.com/wez/wezterm is another great option. I find it's configuration is a lot simpler (and it's in lua) and it's also very fast.


Is this related to Kitty, the Putty fork?


Nope. KiTTY came first, and the issue of name collision has been raised with the author of Kitty - https://github.com/kovidgoyal/kitty/issues/9


> As for googlability -- hopefully this kitty will overtake the other kitty soon ;)

What a charming fellow. The sad part is it seem he was successful in that.


I made the switch from iTerm2 last week and loving how blazing fast kitty is. I also found some kitty.conf files written for iTerm users so I felt right at home pretty quickly.

The only feature I miss from iTerm2 is the ability to maximize a pane (on iTerm the default keybinding is cmd+enter) but I've read the stack layout mode can emulate that on kitty (still need to try it out and get a sense of UX) but it's not a deal-breaker for me.


The killer feature of Kitty for me is that is replaces tmux with splits and layouts. It's also got great ligature support.


I prefer to use separate terminal multiplexers - mostly because that gives me the freedom to choose terminal emulators without having to learn split management paradigms specific to each enulator. I was on tmux earlier. But I really like how zellij is turning out to be.

Unfortunately, kitty's author has a strong dislike for terminal multiplexers, and it shows in his designs. Recent updates to kitty have broken out-of-the-box functioning of terminal multiplexers. It may be possible to get them working with some configuration tweaks. But Kitty's configuration is huge - I don't have the energy to figure it out. So, I had to abandon kitty in favor of foot terminal emulator.

The author may be justified in his dislike for terminal multiplexers. They were created at a time when emulators were too dumb and didn't have enough capabilities. Multiplexers break some functionalities on modern emulators. But I wish software authors in general respected that there is no one-size-fits-all solution and made their design to be more general purpose. In this specific case, I wish there was some standard protocol for terminal emulators and multiplexers to cooperate.

The author is well within his right to choose his designs and I unfortunately don't have the time to solve that problem. And that leaves me giving up kitty as the only solution. But I miss some innovations that kitty brought to the table - new graphics protocol, remote control protocol etc. I hope that those protocols will be widely implemented in other emulators too.


Kitty is awesome! The ligatures, layouts and tabs, shell integration, buffer search--and ctl+shift+e and ctl+shift+u are super handy. Probably just scratching the surface here.


What is the virtue of a GPU-based terminal vs. non-GPU-based terminal? I'm not grasping what "GPU-based" means here. The software must still load from storage or net to an OS layer, which still runs on a CPU.


Zutty is also cool: https://tomscii.sig7.se/zutty/

It's correct (like XTerm) while still being very fast.


It is also old-school in a way of supporting Xresources based config, while at the same time being super strict on UTF-8 support.

Supports strange edge cases that I saw break other emulators like urxvt.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: