Introduce coloured `headers' summary display, plus FIXES..
Simply by introducing a second range of string slots in the colour
table, since the two ranges cannot occur at the same time. Maybe
this is hacky, but we could also extend the "headerview" argument
to a real "colour-table" constant (as in MSG_DISPLAY, HEADER_VIEW,
whatever) to make it even more explicit. I'm not yet sure how
this will be done in the end, for now this is good enough. (I.e.,
we should not "hard" reset via \033[0m but have some levels so
that we can logically add and subtract font and colour attributes
for invidividual stages; but for this we need to have a notion of
levels and that is in general what is missing.)
To have a clear grouping of colours add the new as colour-hsum-*,
change the existing ones to colour-view-*, but use the old names
when *v15-compat* is not set.
While here do some cleanup for the *colour-view-user-headers*
string slot -- it still needs to be treated special, but at least
it does have a named constant slot instead of an implicit "MAX+1".
And fix _colour_iso6429() which yet allowed only one font
specification -- henceforth "ft=bold,ft=inverse" actually works.
The manual documented "invers" not "inverse", which was also wrong.
To my shame, i'm using "inverse" everywhere since ever, even
though that actually is "reverse". Fix that, add obsoletion
warning.
And fix a bug in n_colour_put(): that yet assumed that
n_colour_get() returns a valid string not NULL but which it can.
Yet it didn't due to a bug in n_colour_table_create(), which at
least assigned an empty string to any colour table slot, therefore
preventing n_colour_put() from returning NULL since the condition
string==NULL was never satisfied. I suck.
And heavily improve interruption-awareness and control flow for
stuff like `headers', `from' etc. Unbelievable i already was here
before. Get rid of a redundant signal handler along the way.
Notes:
- this changeset is buggy in that it doesn't honour the new
"older" stuff. I refrained from fixing this since in the very
next changeset colour support will be rewritten completely.
- the "heavily improve"d interruption awareness only takes care
for PIPE not for INT etc. Just leave it as is, a follow-up
topic branch "sigkcondom" will improve the situation
massively.