[Top][All Lists]

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

Emacs scrolling past the end of buffer (was: New hook for ERC)

From: Antoine Levitt
Subject: Emacs scrolling past the end of buffer (was: New hook for ERC)
Date: Thu, 09 Feb 2012 11:06:26 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.93 (gnu/linux)

09/02/12 00:32, Deniz Dogan
> On 2012-02-08 23:23, Antoine Levitt wrote:
>> 08/02/12 22:21, Deniz Dogan
>>> Hi,
>>> I've been trying to "fix" the behavior of ERC's scroll-to-bottom
>>> module by hooking into erc-insert-post-hook.  I thought that the state
>>> when that hook is executed would be that point is back in the input
>>> area, but it does not seem like it.
>> Hi,
>> What's your plan for scroll-to-bottom in ERC? Why do you need this hook
>> in addition to the existing one? scroll-to-bottom in its current state
>> is clearly suboptimal, and it has a pretty excessive CPU consumption
>> when repeating characters.
> I don't really have a fully thought-out plan yet, but I believe the
> new hook is necessary, because the other hooks are run when the point
> has moved away from its original position.  At least I couldn't figure
> out how to write code that worked with those hooks.
> Having looked at the code for scroll-to-bottom just now, I see that it
> uses post-command-hook, which is obviously not an acceptable solution
> for the reason that you mention.
> A good compromise, in my opinion, would be to basically _not_ "scroll
> to bottom" on every single character insertion.  With the addition of
> the post-display hook, when the user hits RET, the message will be
> sent, ERC will display that message, the new hook will run, and it
> will be recentered to the bottom again.  This method is something I've
> personally used in rcirc for quite some time and I'm very happy with
> it.

But then it sometimes happen that you see past the end of the buffer
when scrolling (the horror!). I'd rather have excessive CPU consumption.

>> (I've also been looking for an emacs-wide replacement, without much
>> success. This would be something that says : emacs is not allowed to
>> display anything past the end of a buffer, period - except when the
>> buffer is not long enough. Just like every other software does. This is
>> one of the things that bother me the most about emacs.)
> I agree with you very much on this point!

What do the emacs experts think about this? Is it doable?

reply via email to

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