Subject: bug#27890: 26.0.50; describe-font does not use Help buffer history

From: Alex <[email-masked]>
Date: Sat, 05 Aug 2017 21:24:03 -0600

Alex <[email-masked]> writes:

> [email-masked] writes:
>
>> tags 27890 + patch
>> quit
>>
>> Alex <[email-masked]> writes:
>>
>>> Here's a patch for it.
>>>
>>> +  (let ((xref-item (list #'describe-font fontname))
>> [...]
>>> +      (help-setup-xref xref-item (called-interactively-p 'interactive))
>>
>> Looks fine, personally I wouldn't bother introducing that local
>> variable.
>
> I introduced that variable because the procedure conditionally sets
> fontname if it's an empty sequence. As it stands, the procedure would
> error without capturing that variable ahead of time due to `length' being
> called on a font object.
>
> I figured this was the simplest way around that problem. Do you have an
> easier way in mind? I could perhaps change the setq line to instead set
> fontname to (face-attribute 'default :family), which would allow for
> removing the local variable safely.

I made a patch that does this, but it doesn't behave exactly the same.
(font-info (face-attribute 'default :family)) for me returns a font with
size/height 16/19, but (font-info (face-attribute 'default :font))
returns a font with size/height 15/18. I've tried this with multiple
fonts, and it happens with each one.

This seems like a bug.