* specials: avoid duplicating color specials when both ncurses and a graphical output are enabled
* ncurses: fix black
we previously used the ncurses color as the id for its color pair, but this scheme needs to be shifted by one to avoid using the invalid 0 color-pair id for black (color id 0)
---------
Co-authored-by: bi4k8 <bi4k8@github>
these settings are used for GUI builds as well as ncurses builds, and if we support colors in console and HTTP output, will be used there too
colors really are essential to what Conky does, even if some outputs don't support them, so it makes sense to build support for them unconditionally
Since we rely on a global object ctor to add a display output to the
list, it is not referenced from anywhere else, so does not get linked in
when building tests since most objects are pulled from a static library.
Another option would be to use --whole-archive to link to it.
Hopefully this will lead the way to adding support for things like
Wayland and Haiku graphics, cf. #56.
We define a display_output_base class that display backends
can derive from to implement display-specific calls.