Subject: Re: bug#78621: Pixelwise display specified spaces less precise than min-width

From: Ship Mints <[email-masked]>
Date: Wed, 28 May 2025 18:40:43 -0400

On Wed, May 28, 2025 at 6:17 PM Ship Mints <[email-masked]> wrote:

> On Wed, May 28, 2025 at 6:15 PM Ship Mints <[email-masked]> wrote:
>
>> On Wed, May 28, 2025 at 6:12 PM Jim Porter <[email-masked]> wrote:
>>
>>> On 5/28/2025 1:40 PM, Ship Mints wrote:
>>> > But... Did you run the repro in question and it worked for you, or are
>>> > you saying that this worked for your case?
>>>
>>> I edited your repro to use that call (see the diff below), and it all
>>> looks good to me, as shown in the attached screenshots.
>>>
>>> --- before.el   2025-05-28 14:58:33.646686778 -0700
>>> +++ after.el  2025-05-28 14:58:42.551136757 -0700
>>> @@ -12,8 +12,7 @@
>>>       (let ((pad-to-width 150))
>>>         (cl-labels
>>>             ((string-pixel-width-scaled (str)
>>> -             (ceiling (* (string-pixel-width str)
>>> -                         (/ (float (default-font-width))
>>> (frame-char-width)))))
>>> +             (string-pixel-width str (current-buffer)))
>>>              (insert-pad-to-width (str face)
>>>                (let* ((s (propertize str 'face face))
>>>                       (pad-width (- pad-to-width
>>>
>>
>> Interesting.  The results got worse for me, not better.
>>
>> What platform did you test on?
>>
>
> In any case, it still doesn't explain the root of the potential bug with
> :width being different than :min-width despite the inputs being identical.
>

Okay I applied the one-liner correctly this time and now I see good results
on my mac laptop.

My contention still stands, though, that with identical inputs, 'display
'space :width and 'display 'min-width should produce identical results.
Does that make sense?