← Back to context

Comment by sushisource

5 years ago

I've always found this a bit funny - why are people so concerned with input latency at the terminal? (I get why I care with a phone, or gaming). It's not like anyone's typing hundreds of characters a second. I use Alacritty, but mostly because I like the way it's config file works and it does nice font rendering. The latency thing barely even registers.

The same reason people are concerned with input latency when scrolling on a touchscreen. Lag is annoying, and the less you have, the more satisfying it is to use the device. Latency is detectible on even a single character, "hundreds of characters per second" has nothing to do with it.

It's the same reason I'm not a big fan of mushy keyboards, or having to ssh between continents.

  • Sure, maybe I need to add "within reason". I agree I want my keystroke to appear reasonably quickly, let's say under 200ms to fit some of the stuff in the post.

    Alacritty used to make kind of a big deal of these "benchmarks" on it's main page, and they don't any longer because the software improvements in the terminal are likely completely overwhelmed by whatever keyboard/monitor/OS you happen to be using.

    That's the point. If you really care about this stuff, the terminal isn't exactly the place to go improve stuff unless it was way worse than it should've been in the first place.

    • 200ms is really, really slow. You almost certainly type familiar words faster than at 5cps. You'd notice and feel it, even if you don't. The thresholds are obviously different for what one typically perceives as slow or insufficiently responsive but at 200ms, almost everything stops feeling responsive.

      2 replies →

    • 200ms is a lot of lag. When trying to hjkl in to a specific character on the screen (yes, I know I should be using the 'f' verb more) that can add up quick.

    • Also note that alacritty's benchmark are throughput oriented, not latency oriented. The benchmarks measure how fast it can tear through data, not how quickly pixels change on screen.

      But, rendering the entire terminal buffer is slightly overkill when only a few pixels changed, and the time it takes can end up significant on weaker devices driving high resolution displays.

      As a result, Alacritty doesn't have the best "time to light" performance, and there have been long debates in the issues about it.

Some of us love CLI programs or using ncurses. Rougelike video games which can be played in a terminal (nethack) would profit heavily from a fast terminal