For many months, Pi annoyingly insisted on a light/dark theme duo, with no option at all to disable the machinery that sets its own colors. Thankfully there was https://github.com/mavam/pi-terminal-theme.
But I can’t help but feel that this is needlessly complex. Typically a terminal application with a “native” palette maps its colors to terminal colors in a best effort manner. But I understand that it’s quite awkward to map a set of 60 elements to a set of 18 elements.
I believe that the contrast problem is better solved on the terminal emulator’s end. kitty has text_fg_override_threshold, Ghostty has minimum-contrast and iTerm2 has a minimum contrast setting as well. This detail is frustratingly missing from the discussion around Pi’s system theme design. I commend the enthusiasm of the survey but it’s important to be aware that some terminals will rewrite your colors anyway.
As a concrete example, the base16_transparent theme in Helix is horrendous with most kitty themes I’ve tried. But a sufficiently high minimum contrast setting made it good enough. Incidentally, here Helix demands 76 colors, which sits uncomfortably close to Pi’s stated number despite the fact that Helix has a much less trivial UI.
I don’t want every terminal application to be doing its own contrast calculations; I cannot rely on them doing so, thus I will set minimum contrast anyway so I don’t have to think about it.
Perhaps there should be a protocol that allows a terminal application to ask for contrast adjustments when it knows it’s using entirely too many colors and needs help.
Yes there was pi-terminal-thème for instance, which I have been using until the system theme was added. I should have said that the built-in themes were only dark/light, and that the issue of “fitting the terminal colors” was initially only remedied by an automatic switching between the two, before the system theme was added. I was referring to the out-of-the-box experience, which is how I used Pi really. The only extension I ever had was pi-terminal-theme.
For many months, Pi annoyingly insisted on a light/dark theme duo, with no option at all to disable the machinery that sets its own colors. Thankfully there was https://github.com/mavam/pi-terminal-theme.
But I can’t help but feel that this is needlessly complex. Typically a terminal application with a “native” palette maps its colors to terminal colors in a best effort manner. But I understand that it’s quite awkward to map a set of 60 elements to a set of 18 elements.
I believe that the contrast problem is better solved on the terminal emulator’s end. kitty has
text_fg_override_threshold, Ghostty hasminimum-contrastand iTerm2 has a minimum contrast setting as well. This detail is frustratingly missing from the discussion around Pi’s system theme design. I commend the enthusiasm of the survey but it’s important to be aware that some terminals will rewrite your colors anyway.As a concrete example, the
base16_transparenttheme in Helix is horrendous with most kitty themes I’ve tried. But a sufficiently high minimum contrast setting made it good enough. Incidentally, here Helix demands 76 colors, which sits uncomfortably close to Pi’s stated number despite the fact that Helix has a much less trivial UI.I don’t want every terminal application to be doing its own contrast calculations; I cannot rely on them doing so, thus I will set minimum contrast anyway so I don’t have to think about it.
Perhaps there should be a protocol that allows a terminal application to ask for contrast adjustments when it knows it’s using entirely too many colors and needs help.
score 1 · canonical
I’m confused you say that because Pi did not. You can set a basic theme.
score 1 · canonical
Yes there was
pi-terminal-thèmefor instance, which I have been using until the system theme was added. I should have said that the built-in themes were only dark/light, and that the issue of “fitting the terminal colors” was initially only remedied by an automatic switching between the two, before the system theme was added. I was referring to the out-of-the-box experience, which is how I used Pi really. The only extension I ever had waspi-terminal-theme.score 1 · canonical