[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Suggestion: A fringe indicator that shows the last/first line before

From: David De La Harpe Golden
Subject: Re: Suggestion: A fringe indicator that shows the last/first line before scrolling
Date: Sat, 1 Mar 2008 03:28:46 +0000

Version 3... "not perfect, but nice enough to use"

*** Changes:

Added explicit copyright+license comment in case that's an issue.

Separate overlay per window. Tracked in weak hash table as it seemed
as easy to do it that way.

Still just uses two global idle timers, so all the timings of changes
are linked .  Doesn't seem to matter much for just this
show-old-window-pos functionality though - the fringe marks are only
intended to be transiently displayed for a couple of seconds as a
visual aid anyway, and doesn't really matter much if they linger for
slightly off the stated time.

Note if you pause too long in the middle of a "scroll gesture" (i.e.
sequence of consecutive scrolling commands), then the fringe marks
will disappear and restart from where you paused. This is a good
reason why this is just not the way to do Martin's scroll-restore
point-tracking functionality, of course, but could even be considered
a feature rather than a bug in this context.

Added a customizable list of commands that warp the old position overlay,
the default means that the page-scrolling marks reappear each
individual page scroll, which is probably what people want for
page-by-page scrolling.  This actually warps all the old pos overlays,
not just the overlays in the window(s) associated with the command,
but again doesn't seem to matter much given transience of the effect.

*** still issue:

nongui terminals and gui terminals without fringes could use
alternate highlighting strategies I guess. Not sure what alternate
highlighting strategies are sensible, anything other than fringes
seems kinda ugly.

Attachment: show-old-window-pos.el
Description: Text Data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]