GNU bug report logs - #41537
26.3; window-body-width wrong return value when display-line-numbers-mode is on

Previous Next

Package: emacs;

Reported by: "Matsievskiy S.V." <seregaxvm.main <at> gmail.com>

Date: Tue, 26 May 2020 13:02:01 UTC

Severity: normal

Tags: notabug

Found in version 26.3

Done: Stefan Kangas <stefan <at> marxist.se>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: "Matsievskiy S.V." <seregaxvm.main <at> gmail.com>
Subject: bug#41537: closed (Re: bug#41537: 26.3; window-body-width wrong
 return value when display-line-numbers-mode is on)
Date: Thu, 13 Aug 2020 01:13:04 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#41537: 26.3; window-body-width wrong return value when display-line-numbers-mode is on

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 41537 <at> debbugs.gnu.org.

-- 
41537: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=41537
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Stefan Kangas <stefan <at> marxist.se>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 41537-done <at> debbugs.gnu.org, "Matsievskiy S.V." <seregaxvm.main <at> gmail.com>
Subject: Re: bug#41537: 26.3; window-body-width wrong return value when
 display-line-numbers-mode is on
Date: Wed, 12 Aug 2020 18:12:40 -0700
Eli Zaretskii <eliz <at> gnu.org> writes:

> This is not wrong, since these functions measure the body without the
> line numbers.  This is not a bug, but the intended behavior.
>
>> This breaks some packages that rely on `window-body-width` and
>> `window-width` to align strings.
>
> Those packages should adapt to display-line-numbers-mode by taking
> into account the value returned by line-number-display-width.

I'm therefore closing this bug report.

Best regards,
Stefan Kangas

[Message part 3 (message/rfc822, inline)]
From: "Matsievskiy S.V." <seregaxvm.main <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 26.3; window-body-width wrong return value when
 display-line-numbers-mode is on
Date: Tue, 26 May 2020 13:50:38 +0300
`window-body-width` and `window-width` return wrong numbers when
`display-line-numbers-mode` is on.

For example:
```emacs-lisp
(message (format "Width without line numbers: %d" (window-body-width)))
(display-line-numbers-mode 1)
(message (format "Width with line numbers: %d" (window-body-width)))
```

return these lines:
```
Width without line numbers: 209
Width with line numbers: 209
```

This is obviously wrong since line numbers take some window space.
This breaks some packages that rely on `window-body-width` and
`window-width` to align strings. 


In GNU Emacs 26.3 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.20)
 of 2020-05-17, modified by Debian built on x86-csail-01
Windowing system distributor 'The X.Org Foundation', version
11.0.12008000
System Description:     Debian GNU/Linux bullseye/sid

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Mark set
Width without line numbers: 209
Width with line numbers: 209

Configured using:
 'configure --build x86_64-linux-gnu --prefix=/usr
 --sharedstatedir=/var/lib --libexecdir=/usr/lib
 --localstatedir=/var/lib --infodir=/usr/share/info
 --mandir=/usr/share/man --enable-libsystemd --with-pop=yes
 --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.3/site-
lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.3/site-
lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --without-gconf --with-mailutils --build
 x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib
 --libexecdir=/usr/lib --localstatedir=/var/lib
 --infodir=/usr/share/info --mandir=/usr/share/man --enable-libsystemd
 --with-pop=yes
 --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.3/site-
lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.3/site-
lisp:/usr/share/emacs/site-lisp
 --with-sound=alsa --without-gconf --with-mailutils --with-x=yes
 --with-x-toolkit=gtk3 --with-toolkit-scroll-bars 'CFLAGS=-g -O2
 -fdebug-prefix-map=/build/emacs-mHAik2/emacs-26.3+1=. -fstack-
protector-strong
 -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time
 -D_FORTIFY_SOURCE=2' LDFLAGS=-Wl,-z,relro'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LIBSYSTEMD LCMS2

Important settings:
  value of $LANG: en_GB.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  display-line-numbers-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv dired dired-loaddefs format-spec rfc822 mml
mml-sec password-cache epa derived epg epg-config gnus-util rmail
rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils thingatpt help-fns radix-tree help-mode
easymenu cl-loaddefs cl-lib misearch multi-isearch display-line-numbers
cus-start cus-load elec-pair time-date mule-util tooltip eldoc electric
uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow isearch timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932
hebrew greek romanian slovak czech european ethiopic indian cyrillic
chinese composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-
readable
backquote threads dbusbind inotify lcms2 dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty make-network-process emacs)

Memory information:
((conses 16 109750 7626)
 (symbols 48 21505 1)
 (miscs 40 68 215)
 (strings 32 32568 1315)
 (string-bytes 1 804681)
 (vectors 16 14249)
 (vector-slots 8 504282 12068)
 (floats 8 53 281)
 (intervals 56 492 14)
 (buffers 992 13))




This bug report was last modified 4 years and 278 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.