Subject: Re: bug#8476: 23.2; One-line scrolling & jit-lock (or font-lock)

From: Eli Barzilay <[email-masked]>
Date: Mon, 11 Apr 2011 10:39:48 -0400

6 minutes ago, Eli Zaretskii wrote:
> > From: Eli Barzilay <[email-masked]>
> > Date: Mon, 11 Apr 2011 09:59:43 -0400
> > Cc: 
> > 
> > Like many others, I've been trying to get Emacs to scroll the display
> > by one line when the cursor goes out of the displayed area.  In my
> > settings I have
> > 
> >   scroll-step 1
> >   scroll-conservatively 10000
> >   scroll-margin 0
> > 
> > I know that in theory only the second is needed, but I still got the
> > recentering behavior.
> 
> This has been resolved, I hope for good, in the current development
> sources.  See bug #6671.
> [...]
> If you can upgrade to the development version or to some recent
> enough snapshot, you should see that problem gone.

Whew -- I've been trying it of and on for years, so it's nice to know
that it's going to work "soon".  (I can't really afford using the
development version for work...)

> > I just tried disabling `jit-lock-mode', and to my surprise that
> > made the problem go away, but it also disabled highlighting new
> > text.
> 
> JIT Lock is one of the reasons that trigger recentering (because JIT
> Lock slows down scrolling and makes more probable the situation
> where redisplay cannot keep up and eventually becomes confused and
> recenters), but it's not the only one.  Displaying complex scripts
> or fonts will also have that effect (try "C-h H", for example), as
> will simply leaning on the down arrow on a keyboard with high
> auto-repeat rate.  The root cause was elsewhere, as explained above.

(I did try to force highlights and then scroll the same area, assuming
that jit-lock wouldn't rework and already fontified portion of the
text.  In any case, my main point in this was that it wasn't the font
issue, which is kind of what I assumed is the problem.  But it's good
to know that it's all irrelevant now.)

> I'm closing this bug report.  If you do upgrade to Emacs 24 and see
> recentering, feel free to re-open it.

No problems -- thanks!

-- 
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!