Comment by blueflow

1 day ago

Yet the author incorrectly blames it on tmux, which gives the article a bad taste.

Also im not sure whether the scolling problem is actually tmux fault. Tmux uses the alternate screen buffer, the alternate screen buffer is activated using the smcup/rmcup terminfo capabilities, whose semantics actually say that it "fixes" the window viewport in-place so absolute cursor movement has a known zero position. In this state, any native scrolling attempt should have no effect, and the keypress/scroll wheel events should be forwarded to tmux directly.

For some reason, every other terminal emulator still allows local scrolling in the alternate screen, which kinda breaks the semantics of smcup/rmcup and easy scrolling in tmux, too.

Sadly after experimenting with a bunch of "modern" terminals I'm forced to consider that their primary audience is more interest in ricing than actually implementing the terminal commands (or connecting to anything other than their favourite linux box) and so I'm stuck with xterm as the only reliable terminal emulator that won't occasionally spew unreadable junk.

  • And, actually having terminals crush. It is kind of absurd to have a terminal crush.

    I've tried

    Wezterm Ghoatty Ptyxis

    First two had some frequent crushes, ptyxis is quiet reliable, but I felt it consumes too much memory for a terminal. But I feel it's a good terminal.

    Though I wish I could get rid of the headerbar

  • Have you tried Ghostty? Its creator has been pretty serious about getting everything right.

    • I asked what test suite they used to ensure they had the correct behaviour, and they were fairly dismissive, so I'm not sure what you're basing that on. I think they're far more interested in a specific set of features than getting things right.

      1 reply →

    • ironically, the last time i tried it in my normal workflow, it refused to interpret certain escape sequences... to the terraform cli application. i couldn't finish a `terraform apply` - i'd type `y` and hit enter but it would just print `^M`.

    • Oh yes, using a new terminal emulator instead of one which has been around for decades. What could go wrong? It's creator has been vocal that it's nothing more than a side project

      1 reply →