Live data from Hacker News

WezTerm – A GPU-accelerated cross-platform terminal emulator and multiplexer

wezfurlong.org

41–50 of 128 posts

Re: WezTerm – A GPU-accelerated cross-platform terminal emulator and multiplexer

#41

Earlier quoted context omitted.

well... come to the future: https://www.youtube.com/watch?v=dcjkezf1ARY

And what exactly is the use case for this? If I want to work with images, animations, etc. I use a GUI library. These in turn already use hardware accelerated rendering. And I already have powerful, optimized, tested, reliable software that enables me to work with terminal and GUI functionality side by side; the DESKTOP ENVIRONMENT.

Please be aware that all uppercase comes across as quite aggressive.

Writing a lot of data to a terminal can happen accidentally or by having an application running that throws out a burst of log messages. In both cases, you'll want to have your terminal to be responsive again as soon as possible and you want it to be light on your cpu s.t. it doesn't interrupt other applications.

Re: WezTerm – A GPU-accelerated cross-platform terminal emulator and multiplexer

#42

This is an honest question. What is the advantage of GPU acceleration for a terminal emulator? I don’t do much low level graphics stuff, but a terminal seems fairly simple graphically, you are just drawing glyphs at xy cords. Would love it if someone had a good explanation. Obviously there are some terminal applications that could be redrawing very quickly, but that seems like a solved problem.

I don't get it either. The 2D APIs used for font rendering built into every window system (xrender, etc.) are already hardware accelerated and more than fast enough. Going to OpenGL or whatever this uses just seems ridiculous. There's no use case for rendering your terminal emulator at 10,000 frames per second.

Re: WezTerm – A GPU-accelerated cross-platform terminal emulator and multiplexer

#44

Earlier quoted context omitted.

well... come to the future: https://www.youtube.com/watch?v=dcjkezf1ARY

And what exactly is the use case for this? If I want to work with images, animations, etc. I use a GUI library. These in turn already use hardware accelerated rendering. And I already have powerful, optimized, tested, reliable software that enables me to work with terminal and GUI functionality side by side; the DESKTOP ENVIRONMENT.

> And what exactly is the use case for this?

Terminal User Interfaces. There's technically no reason i can't check out an image in a folder when i'm browsing on an SSH session (yes i know i can rsync/scp && xdg-open but it's not exactly as fast to type as viu [0].

> powerful, optimized, tested, reliable software that enables me to work with terminal and GUI functionality side by side

If you have tested and reliable desktop environments to recommend, i'm all ears. All the ones i've tried over the years have their own quirks and memory leaks (yes, that includes GNOME and KDE).

But as you said, both approaches are complementary. I'm glad notcurses exists and works via graceful degradation, so people with a modern terminal can get the best while others can still get a featureful ncurses-like experience.

[0] https://github.com/atanunq/viu

Re: WezTerm – A GPU-accelerated cross-platform terminal emulator and multiplexer

#45

I replaced iTerm with Wezterm 6 months back. It feels lot more lighter and faster. As SRE I need to work a lot on terminal. I tried Alacritty for a while but Alacritty not supporting horizontal and vertical splits was a major setback for me.

Honest question, why not just use tmux? It does everything that splits can do.. and more :D

Re: WezTerm – A GPU-accelerated cross-platform terminal emulator and multiplexer

#46
post #41

Earlier quoted context omitted.

And what exactly is the use case for this? If I want to work with images, animations, etc. I use a GUI library. These in turn already use hardware accelerated rendering. And I already have powerful, optimized, tested, reliable software that enables me to work with terminal and GUI functionality side by side; the DESKTOP ENVIRONMENT.

Please be aware that all uppercase comes across as quite aggressive. Writing a lot of data to a terminal can happen accidentally or by having an application running that throws out a burst of log messages. In both cases, you'll want to have your terminal to be responsive again as soon as possible and you want it to be light on your cpu s.t. it doesn't interrupt other applications.

> In both cases, you'll want to have your terminal to be responsive again as soon as possible.

My terminal emulator doesn't become unresponsive just because the renderer cannot keep up. It still processes input, so if I accidentially

    cat some-linux-distro-1of4.iso
...I can still Ctrl-C it and stop the process.

> it doesn't interrupt other applications.

It can't do that anyway in an environment that does preemptive multitasking.

Re: WezTerm – A GPU-accelerated cross-platform terminal emulator and multiplexer

#47

This is an honest question. What is the advantage of GPU acceleration for a terminal emulator? I don’t do much low level graphics stuff, but a terminal seems fairly simple graphically, you are just drawing glyphs at xy cords. Would love it if someone had a good explanation. Obviously there are some terminal applications that could be redrawing very quickly, but that seems like a solved problem.

"cat 1_gb_of.txt" will push your terminal far beyond what just a CPU can comfortably handle.

And when do I want to `cat` 1GiB of text?

I cannot process it with my human eyes, so what does it matter if the CPU rendering can keep up or not?

    cat 1_gb_of.txt | less
Is what I want to do, and this is easily rendered even on older hardware.

Re: WezTerm – A GPU-accelerated cross-platform terminal emulator and multiplexer

#48

Any Kitty users tried this? I’ve found Kitty to be exemplary so would be curious if anyone finds this an improvement?

I actually went alacratty => wezterm => kitty. I tried and liked wezterm for a while after alacratty, but after some version, it did something that caused all heavy GPU-using programs(like firefox) to slow down severely, or seize up or something, on multiple computers, after running for more than 24-48 hrs. I had been using the default config, except for my preferred font (the VGA font from https://int10h.org/oldschool-pc-fonts/fontlist/). I unfortunately did not have the time to bisect the options or figure out what exactly was going on, but switching to kitty, cleared up the issue.

I tried looking for a bug reports that matched my symptoms, but found none, and I really did not have the the know-how to diagnose GPU issues, but I'd love to try to help isolate the bug.

It honestly felt like a GPU infinite loop, or GPU OOM issue, because the main CPU was idle, but input and redraws on FF would eventually seize up.

Re: WezTerm – A GPU-accelerated cross-platform terminal emulator and multiplexer

#49

I switched from Alacritty to WezTerm a few months ago. I cannot overemphasize what a healthier project/community this is. The developer is surprisingly responsive and seems to be a good guy. Join the Matrix room (linked from the GitHub repo readme) if you have any questions.

I don't know anything about Alacritty. What is unhealthy about the project?

The lead developer responding like this to bug reports is a good indicator.

https://github.com/alacritty/alacritty/issues/1561

Post reply on HN