Subject: bug#27427: 26.0.50; Native line numbers lead to display error in company-mode popup

From: martin rudalics <[email-masked]>
Date: Sun, 25 Jun 2017 17:59:01 +0200

> Try as I might, I can't repro those kind of problems. Line wrap
 > indicators in the terminal usually come at the right. And I think it's
 > aesthetically important that the extra glyphs don't shift line text to
 > the right unless absolutely necessary, so those issues don't
 > materialize.

(let ((window (split-window-horizontally)))
   (set-window-margins window 0 0)
   (set-window-fringes window 0 0))

Now move the divider between the two windows as far as possible to the
right and in the window on the right move to the end of the first line.
Here a '$' appears at the beginning of each line

 > I think you're trying too hard to stay away from the margins. But
 > anyway, we have the alternative solution now.

Back then I considered Markus' idea to use the margins quite ingenious
(actually, I didn't believe it would work in practice).  Still I always
voted in favor of having line numbers provided by the redisplay engine.
I also voted for a line numbers cache like that of (or even in
combination with) the 'syntax-ppss' cache but that's a different
subject.

Maybe one day Eli will come up with a redesign which would allow to
divide a window into side-by-side subwindows that would share a common
scroll bar so ‘follow-mode’ would be done entirely by the display
engine.  And each such subwindow would have an arbitrary number of
subwindows usable as margins for that window and a line number subwindow
and whatever else we want.

 > I can't see a way to create a less-than-fullscreen frame in terminal
 > Emacs (speaking of normal frames here).

Popup frames (or tooltip frames) on terminals would have to be emulated
as we currently do for menus.

martin