upvote
Everything is either xterm or something else that's emulating most if not all of its features. Whatever isn't is probably terrible and broken and not worth supporting unless you're getting paid fat stacks to do it.
reply
Aside from the 256-color section, I believe all of the examples given in the article are basic sequences which are supported in ~every terminal. Are you aware of any notable terminals where that is not the case?

Maybe I've been lucky, but I've written plenty software that blindly shoots CSI's at the console and still haven't hit any snags. Especially convenient when the channel is unidirectional; curl ocv.me :)

reply
Shelll-mode in emacs uses $TERM=dumb and doesn’t support escapes code by default. Same with compile-mode. Also there’s some tools that persist using escapes code even when piped to another program (like less).
reply
Easy way is to use `tput` to generate the color codes for your terminal type on the fly.

See https://stackoverflow.com/questions/54838578/color-codes-for... for examples.

reply
Indeed, but also termcap is a tire fire. I like the way Ghostty deals with it: https://ghostty.org/docs/help/terminfo

Even then it still leaves a lot to be desired. I'm not sure I can consider any of this to be truly reasonable.

reply
Kitty does this as well. Looks like every terminal ships with their own terminfo nowadays. Apparently this is to work around the ncurses maintainer.

https://github.com/kovidgoyal/kitty/issues/2773

https://github.com/kovidgoyal/kitty/issues/879

https://lists.gnu.org/archive/html/bug-ncurses/2018-09/msg00...

reply
> No mention whatsoever of the $TERM environment variable. sigh

I have mixed feelings about this... Sometimes I feel young and reckless and want to just output whatever I need without checking $TERM. In practice, all modern terminal emulators are essentially xterm-256color compatible. If something breaks, the worse you get is some funny characters. Is that such a big deal? Much better than propagate the silly termcap/terminfo complexity.

By the way, xterm supports sixels since forever.

reply