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

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

bug#64855: 30.0.50; ERC 5.6: Make scrolltobottom less erratic


From: J.P.
Subject: bug#64855: 30.0.50; ERC 5.6: Make scrolltobottom less erratic
Date: Tue, 19 Sep 2023 06:38:52 -0700
User-agent: Gnus/5.13 (Gnus v5.13)

"J.P." <jp@neverwas.me> writes:

> But it comes with a few known problems.
>
> The first can be observed during the rapid insertion of newly arriving
> messages, like you get with history playback or large swaths of help
> text. Basically, when point is away from the prompt and you issue a
> command that changes `window-start' significantly (e.g., M-<), point
> hardly moves at all, maybe half a screenful at most.
>
> Another issue is only noticeable if you have code running that
> suppresses message insertion after prompt submissions (see bug#49860's
> `echo-message' for one example). Basically, if you've got
> `erc-scrolltobottom-relaxed' enabled and you stare long enough, you'll
> notice that the prompt drifts downward with every submitted round of
> multi-line input.
>
> Attached is a patch that attempts to address both of these issues, along
> with a couple more to get at some unrelated odds and ends. I'm also sort
> of thinking we ought to temporarily change the default of the new option
> `erc-scrolltobottom-all' to t for a few weeks to help flush out any
> other glaring bugs introduced by this feature. If anyone thinks that's a
> bad idea, please say so. Thanks.

I've installed this as

  69a1546 Run erc--scrolltobottom-on-pre-insert unconditionally

along with two others from that set. However, I left out

  [3/4] [5.6] Skip erc-ignored-user-p when erc-ignore-list is empty

because even a minor change like this to such a widely used feature
should probably be accompanied by tests and extra scrutiny, especially
since I myself am not really familiar with it. The optimization itself
seems simple enough, but one of those options is buffer-local and set
via the /IGNORE command, which complicates matters.

I'm thinking we may end up folding that patch into a larger initiative
aimed at moving everything related to message skipping and hiding to
another module. Indeed, there seems to be a good deal of overlap in
functionality among the lurker, hide-list, and /IGNORE features (and
also the fools stuff in erc-match). It'd be nice to get all that out of
erc.el because it can mostly be implemented using hooks, which should
help with maintenance and maybe save uninterested users some cycles.





reply via email to

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