Subject: Re: bug#27008: 26.0.50; auto-hscroll-mode and scroll-left

From: Stephen Berman <[email-masked]>
Date: Wed, 31 May 2017 16:18:26 +0200

On Wed, 31 May 2017 10:14:41 +0300 Eli Zaretskii <[email-masked]> wrote:

>> From: Stephen Berman <[email-masked]>
>> Cc: [email-masked]
>> Date: Tue, 30 May 2017 21:45:47 +0200
>> 
>> Thanks.  Yes, with this patch the non-current lines are displayed from
>> w->min_hscroll.  However, there's a new problem: now when points moves
>> to a line, that line automatically scrolls further by w->min_hscroll.
>> So when I do `(scroll-left 32 t)' and then move point to another line,
>> that line scrolls further left so that its column 64 is on the left edge
>> of the window (the other lines remain displayed starting at column 32).
>> When point moves to the next line, that one scrolls further to column 64
>> and the previous one goes back to being displayed from column 32.
>
> Does the below (to be applied on top of current master, i.e. first
> revert the previous patch) fix this?

Yes, the display and the horizontal scrolling is now exactly as I hoped
it would be; many thanks!  

There is one minor issue: with auto-hscroll-mode set to `current-line'
and (scroll-left 32 t), when I scroll vertically by holding down <down>
or C-n or <up> or C-p, the motion is less smooth than usual.  With the
same auto-hscroll-mode setting but no scroll-left, vertical scrolling is
smoother, but still not as smooth as with auto-hscroll-mode set to t or
nil (with either of these settings, vertical scrolling seems slightly
less smooth with (scroll-left 32 t) than with no scroll-left, though the
difference is less noticeable than with auto-hscroll-mode set to
current-line).  But I don't think this is a serious annoyance, so unless
you see an easy fix for it, I think you should commit the patch as is to
master.

Steve Berman