all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Juri Linkov <juri@linkov.net>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 32536@debbugs.gnu.org
Subject: bug#32536: displayed width of man pages
Date: Thu, 27 Dec 2018 22:54:44 +0200	[thread overview]
Message-ID: <87o9964rmz.fsf@mail.linkov.net> (raw)
In-Reply-To: <83muor6khd.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 27 Dec 2018 17:46:22 +0200")

>> +(defcustom Man-width-min 40
>> [...]
>> +If the calculated width is smaller than the minimum width, the value
>> +of this variable has no effect.
>> [...]
>> +(defcustom Man-width-max 80
>> [...]
>> +If the calculated width is smaller than the maximum width, the value
>> +of this variable has no effect.
>
> I suspect some typo(s) in these doc strings, perhaps due to
> copy/pasta, because the penultimate sentence of each of them makes no
> sense to me, certainly when taken together with the other doc string.
> If I'm wrong, and there's no error here, please explain what you
> meant.

Yes, one of them is wrong.  The doc string of Man-width-min should be
changed to:

  If the calculated width is larger than the minimum width, the value
  of this variable has no effect.

>> +(defun Man-columns ()
>> +  (let ((width (cond
>> +                ((and (integerp Man-width) (> Man-width 0))
>> +                 Man-width)
>> +                (Man-width
>> +                 (let ((window (get-buffer-window nil t)))
>> +                   (frame-width (and window (window-frame window)))))
>> +                (t
>> +                 (window-width (get-buffer-window nil t))))))
>> +    (when (and (integerp Man-width-max)
>> +               (> Man-width-max 0))
>> +      (setq width (min width Man-width-max)))
>> +    (when (and (integerp Man-width-min)
>> +               (> Man-width-min 0))
>> +      (setq width (max width Man-width-min)))
>> +    width))
>
> Careful here: both window-width (why not use its official name, btw?)

Sorry, I don't understand what is the official name?

> and frame-width are insensitive to the size of the font used to
> display the man page: they both measure in "canonical" column units.
> Maybe this is not a significant problem (and I realize the old code
> also worked like that), but perhaps the doc strings of the two new
> options should mention this fact, lest the user will be surprised.
>
>> +      (setenv "COLUMNS" (number-to-string Man-columns)))
>
> Here, for example, the 'man' program will interpret COLUMNS at face
> value, and will produce lines of that many characters; but if the size
> of thefont used to display the man page is significantly different
> from the frame's default font, those lines might be wider or narrower
> than the window/frame.

It seems this calculation works only for monospace fonts.

> Finally, I think this warrants a NEWS entry and perhaps also an update
> for the manual.

Will do after the final patch.





  reply	other threads:[~2018-12-27 20:54 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-26 12:42 bug#32536: 24.3; Feature Request: change defaults or behaviour hw
2018-08-30 23:35 ` bug#32536: displayed width of man pages Juri Linkov
2018-08-31  6:54   ` martin rudalics
2018-09-01 22:27     ` Juri Linkov
2018-09-02  7:14       ` martin rudalics
2018-09-02 22:19         ` Juri Linkov
2018-09-03  7:31           ` martin rudalics
2018-09-03 22:23             ` Juri Linkov
2018-09-04  7:51               ` martin rudalics
2018-09-04 21:27                 ` Juri Linkov
2018-09-05  7:47                   ` martin rudalics
2018-11-25 20:42                   ` Juri Linkov
2018-11-26  9:32                     ` martin rudalics
2018-11-27  0:01                       ` Juri Linkov
2018-11-27  8:08                         ` martin rudalics
2018-11-27 23:58                           ` Juri Linkov
2018-09-04  5:46           ` hw
2018-09-04 21:20             ` Juri Linkov
2018-09-05  2:50               ` hw
2018-09-05 22:20                 ` Juri Linkov
2018-09-07 14:03                   ` hw
2018-09-02 22:30         ` Juri Linkov
2018-09-03  7:31           ` martin rudalics
2018-09-03 22:25             ` Juri Linkov
2018-09-04  7:51               ` martin rudalics
2018-09-02 14:55       ` hw
2018-09-02 22:12         ` Juri Linkov
2018-09-04  3:34           ` hw
2018-09-03 18:20       ` Filipp Gunbin
2018-12-26 23:36 ` Juri Linkov
2018-12-27 15:46   ` Eli Zaretskii
2018-12-27 20:54     ` Juri Linkov [this message]
2018-12-28  4:50       ` Eli Zaretskii
2019-12-07 22:37         ` Juri Linkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87o9964rmz.fsf@mail.linkov.net \
    --to=juri@linkov.net \
    --cc=32536@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.