Terminals should generate the 256-color palette from the user's base16 theme.
If you've spent much time in the terminal, you've probably set a custom base16 theme. They work well. You define a handful of colors in one place and all your programs use them.
The drawback is that 16 colors is limiting. Complex and color-heavy programs struggle with such a small palette.
The mainstream solution is to use truecolor and gain access to 16 million colors. But there are drawbacks:
Each truecolor program needs its own theme configuration.
Changing your color scheme means editing multiple config files.
Light/dark switching requires explicit support from program maintainers.
Truecolor escape codes are longer and slower to parse.
Fewer terminals support truecolor.
The 256-color palette sits in the middle with more range than base16 and less overhead than truecolor. But it has its own issues:
... continue reading