Subject: bug#28854: line-number-display-width erroneously returns 0 when ...

From: Keith David Bershatsky <[email-masked]>
Date: Sun, 15 Oct 2017 16:31:03 -0700

line-number-display-width erroneously returns 0 when at the end of a very long line and `truncate-lines` is non-nil.

STEP #1:  Launch a current version of the master branch without any user configuration; i.e., emacs -q.

STEP #2:  (setq truncate-lines t)

STEP #3:  (display-line-numbers-mode 1)

STEP #4:  Create a long line that is about 3 times the width of the window.  With point at the end of that line, evaluate:

(line-number-display-width 'pixelwise)

The result returned is 0, which is incorrect.

BACKGROUND:  I am working on developing crosshairs as part of feature requests #17684 and #22873, and I need the line number display width (pixelwise) to accurately calculate when the horizontal ruler should begin to draw -- i.e., it.current_x + lnum_pixel_width = start drawing ...  I am also enabling compatibility with the fnctions scroll-right and scroll-left, and when horizontal scrolling the current line.

Thanks,

Keith