Subject: Re: bug#7881: 23.2.91; Bold spaces sometimes(?) underlined in man pages

From: Chong Yidong <[email-masked]>
Date: Sat, 22 Jan 2011 18:45:03 -0500

Glenn Morris <[email-masked]> writes:

> Chong Yidong wrote:
>
>> I think `make-button' is indeed the apropriate choice here, since the
>> button face needs to coexist with the other face text properties
>> applied by man.el.
>
> Can make-text-button do better? It's supposedly possible for face text
> properties to be a list of faces that get merged into the output. So
> ideally it would try to add to the existing face props.

Currently, text prop buttons use the category property.  The category
specifies a default when a requested property (in this case, the `face'
property) does not exist.  If the property exists, it overrides the
category entirely.

One possibility is to treat `face' properties specially in this regard,
by merging into the category property instead of replacing.  But this
would be a backward incompatible behavior change, and possibly
bug-prone.  And it doesn't seem clean for a `face' category property to
behave so differently from other category properties.

Another possibility is to change the implementation of textprop buttons,
to assign the face directly by merging, instead of using a category
property.  I'll take a look and see if this is feasible.