GNU bug report logs -
#43105
(window-body-height) Reporting Too Large of Value
Previous Next
Reported by: William Carroll <wpcarro <at> gmail.com>
Date: Sat, 29 Aug 2020 18:07:01 UTC
Severity: normal
Tags: notabug
Done: Stefan Kangas <stefan <at> marxist.se>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
tags 43105 notabug
close 43105
thanks
Eli Zaretskii <eliz <at> gnu.org> writes:
>> From: William Carroll <wpcarro <at> gmail.com>
>> Date: Sat, 29 Aug 2020 18:10:17 +0100
>>
>> I believe `(window-body-height)` does not account for non-zero `line-spacing` amounts. This causes
>> `(window-body-height)` in graphical Emacs to report values larger than the number of lines of text that can
>> render on the screen.
>
> window-body-height reports the height of the window's body in units of
> canonical character height:
>
> If PIXELWISE is nil, return the largest integer smaller than WINDOW’s
> pixel height divided by the character height of WINDOW’s frame.
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> Thus, window-body-height is by design insensitive to factors like
> non-default fonts, line-spacing, etc.
>
>> This affects programs like vterm.el and others that rely on `(window-body-height)`. In my particular case,
>> when I ran `man` and `less` from vterm.el, it rendered things above the top "fold" of the screen.
>
> Then the bug is in vterm.el: it should use other APIs to get the
> dimensions in terms of actual number of lines in the window. The
> function window-body-height works as intended.
I'm therefore closing this bug report.
This bug report was last modified 4 years and 264 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.