Subject: Re: bug#34476: fluffy whitespace in the mode-line, despite it running off the screen

From: Eli Zaretskii <[email-masked]>
Date: Sun, 09 Aug 2020 17:07:00 +0300

> From: Lars Ingebrigtsen <[email-masked]>
> Cc: [email-masked],  [email-masked]
> Date: Sun, 09 Aug 2020 11:56:24 +0200
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> >> There's four spaces between *scratch* and All because they have
> >> different faces...  which makes me wonder why there's trailing spaces in
> >> the buffer name at all, instead of just three spaces after the buffer
> >> name in the mode line format?
> >
> > That's because mode-line-buffer-identification uses %12b as the format
> > to show the buffer name.
> 
> Yes, I was wondering whether that should be changed to something that's
> just %b and then something that inserts some more spaces for short
> buffer names...

Yes, I think so.

> Alternatively, we could compact spaces if the face doesn't use a
> background colour?  Hm...

I'm actually more bothered by faces that affect the font.  So I'd
rather we didn't mess with non-default faces in this case.

> > No, it should be an almost trivial addition to the condition under
> > which we perform the squeezing.  Basically, compare it.current_x with
> > it.last_visible_x.
> 
> Right.  Do you want to apply your patch (to a branch?) and I can tweak
> it further and add documentation and stuff?

Will do.