For some of us with higher-order visual aberrations, dark mode is a non-starter. (The converse holds for some people with cataracts.) The OSC 11 control sequence lets a program determine the background color, but few bother. Usually, someone just thinks yellow warning messages look cool, and that's the end of it.
That also leads to problem 12: Certain popular terminals that default to setting TERM=xterm256-color while not being xterm-compatible.
Edit: I just came across `xtermcontrol`, which can abstract the background check in scripts, and is in all the major package managers.
It doesn't have to be cataracts, my eyes are just unusually sensitive to light. I find the hacker news theme borderline during the daytime, and can only handle it for short bursts at night with the brightness on my monitor set to the lowest setting.
It's probably too late for terminals to add a concept of semantic color, other than "default foreground" and "default background", but the situation as it is forces TUI authors to either stick to the basic eight or make colors completely user-configurable, if they don't want to leave anybody out.
By semantic color I mean what editors do, where the presentation is separated from the intention. Unclear how to even start with that for terminals though.
(To someone out there about to tell me about how I can custom theme HN: please consider that I might spend too much time here already and don't need it to be easy to use in the dark. Cheers)
That also leads to problem 12: Certain popular terminals that default to setting TERM=xterm256-color while not being xterm-compatible.
Edit: I just came across `xtermcontrol`, which can abstract the background check in scripts, and is in all the major package managers.