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.
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.
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.