Your reminder that nobody knows what they're doing.

Today's example: A popular terminal application that strips escape sequences, and believes xterm's sgr0 ("reset attributes") sequence is somehow specific to running as root in Suse.

Follow

Note: Terminals are shit, and the standards are made up and you need to wade through literal decades of cruft that no user will ever hit.

I don't blame anyone for being bad at this. I'm terrible. I just assumed other people were better.

· · Web · 1 · 2 · 5

Fun fact whenever a terminal emulator developer hears you say "terminals are shit" they add another proprietary escape you can use in their terminal only that performs some obscure feature that three people care about.

For a serious example: One terminal developer once asked me if I was willing to add support for the special *version* of an escape sequence that was specific to their terminal.

This was a sequence where we already support the normal version, their terminal supports the normal version, and their special version doesn't even add any new features, it was supposed to be slightly faster.

Only that this sequence is only ever used interactively, and takes about 10 microseconds once per prompt.

Another example: There's a sequence for "synchronized output", that you can use to explain "oi I'm drawing now, assuming the dimensions from this point, I'll tell you when I'm done".

Which sounds great, until you realize you need to know if the terminal supports it or it'll fuck everything up.

The terminal dev tells you you can detect support by sending this *other* sequence and waiting for an answer.

Only...

1. How do I know this *other* sequence is supported? Do I just hope?
2. If it isn't supported I might not get an answer at all, so.. how long do we wait? We need this on startup, the single most important paint where the most changes is on startup. Do we just delay indefinitely? Seconds? Milliseconds?

@faho I heard you like maintenance burdens so I put some maintenance burden in your maintenance burden.

Sign in to participate in the conversation
Octodon

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!