Subject: Re: bug#10127: 24.0.91; wrong window width calc for `C-u C-x =' when *Help* in separate frame

From: Eli Zaretskii <[email-masked]>
Date: Fri, 25 Nov 2011 10:06:52 +0200

> From: "Drew Adams" <[email-masked]>
> Cc: <[email-masked]>
> Date: Thu, 24 Nov 2011 11:08:59 -0800
> 
> > > There is no reason to base the display output width on the window
> > > width of the current buffer - no relation.
> > 
> > How else would you suggest to make the text aligned nicely?  That's
> > the intent, I believe.
> 
> Well, the bug describes how "nicely" the text is laid out now.
> 
> Keep it simple.  Do not try to second-guess where *Help* will be displayed or
> how wide its window might be.  Keep the text in *Help* to the normal max width,
> as much as possible.
> 
> There is nothing wonderful about this:
> 
>              foo: jkjkj
>   something-else: lllmmnlkjlj
>      and-another: hhhhhmlkklmkklj
>  and-yet-another: 232iulkjlikjkm
> 
> This is just as readable:
> 
>  foo:             jkjkj
>  something-else:  lllmmnlkjlj
>  and-another:     hhhhhmlkklmkklj
>  and-yet-another: 232iulkjlikjkm
> 
> So is this:
> 
>  foo            : jkjkj
>  something-else : lllmmnlkjlj
>  and-another    : hhhhhmlkklmkklj
>  and-yet-another: 232iulkjlikjkm
> 
> And so is this:
> 
>  foo: jkjkj
>  something-else: lllmmnlkjlj
>  and-another: hhhhhmlkklmkklj
>  and-yet-another: 232iulkjlikjkm

Your suggestions won't work with variable-size characters and
variable-pitch fonts.  The original code uses display features to
align the text even in those cases, because this command is _about_
displaying characters with various fonts, so it cannot just DTRT in
95% of cases, it needs to work in 100%.

> There are many, many ways to display such info, and which do not require
> calculating the window width.  We do the same kind of thing in our online
> manuals, when we describe functions etc., and even when we list menu items.

None of the manuals needs to cope with arbitrary characters and
arbitrary fonts.  The on-line manuals are actually quite restrictive
in the repertory of character sets and typefaces they support.

> Be less "clever".  Be more helpful to more users, who can have different
> preferences for displaying *Help*.

Be less "clever".  Be more helpful to Emacs development by actually
understanding the underlying the problems and the current solutions
before you judge them.  Do not assume that whoever wrote the code did
that out of sheer "cleverness".

To summarize: I agree that this command should be fixed for the use
case when the window width is very different from the default one.  I
just don't think the direction you propose for the solution is the
right one.