bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#11697: 24.1.50; ERC scroll-to-bottom functionality 'broken' in emacs


From: Deniz Dogan
Subject: bug#11697: 24.1.50; ERC scroll-to-bottom functionality 'broken' in emacs 24.1.x
Date: Wed, 13 Jun 2012 22:03:00 +0200
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20120604 Thunderbird/13.0

On 2012-06-13 18:22,, Brian Fransioli wrote:

After updating to emacs 24.1.x I noticed ERC scroll functionality
changed.  Originally, it would recenter to force the prompt to be near
the bottom of the screen (according to `erc-input-line-position').  Now,
this recentering only happens when I enter text, or perform a mouse
event.  Channel joins/parts and new messages hit the bottom of the
screen, and recentering moves the bottom line to the center of the
buffer.

The overall effect is input by the user moves the screen to the bottom,
while channel/server inputs bounce around from middle to bottom and back
again.

Looking in erc-goodies.el at `erc-add-scroll-bottom', it's easy to see
the documentation is also out of date.  It states it uses
`window-scroll-functions' but instead adds the hook to
`post-command-hook'.

Examining commits, I found the culprit:

commit:
a1d63e03c3eda51dcec158d6027adf9dbdcfd8dd

view changes via git emacs web:
http://git.savannah.gnu.org/cgit/emacs.git/commit/lisp/erc/erc-goodies.el?id=a1d63e03c3eda51dcec158d6027adf9dbdcfd8dd


I see that the changes were reported to fix a bug on tty's, but the
results are severe motion sickness for even moderately chatty channels.

Reproduce by:
(erc-scrolltobottom-mode)
(setq erc-input-line-position -2)

Regards,
Brian


Firstly, I agree with you completely that scrolltobottom needs improvements. I can't be sure why they changed the behavior, since the new method is clearly inferior, but I believe it's because window-scroll-functions is never meant to change "the way the window is scrolled".

I've monkey-patched ERC myself to handle the whole thing better. I've attached the Lisp. Just evaluate all the code and you'll be all set. (I know it's not production-quality code, but it does the job and relieves you from ever thinking about it again.)

Deniz

Attachment: erc-better-scroll.el
Description: Text document


reply via email to

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