Post by Lars Ingebrigtsen Post by Stefan Monnier Post by Lars Ingebrigtsen Post by Eli Zaretskii
That's switch-to-buffer-preserve-window-point in action.
Ah, thanks. Even if there's no window displaying the buffer?
I guess Gnus will have to bind that variable before manipulating point
in the *Group* buffer...
That variable takes effect when the buffer is displayed, not when its
point is moved.
So you should probably set it buffer-locally instead.
Hm... But I don't really want to interfere permanently with any user
I believe you do, tho only for a particular circumstance.
Post by Lars Ingebrigtsen
I just want to move the point in the *Group* buffer the way it
used to move before whatever was introduced recently (i.e., during the
past ten years :-)).
What you describe is called "interfere with user settings".
switch-to-buffer-preserve-window-point was introduced mainly so that if
you have a buffer displayed in 2 windows or more, switching to some
other buffer and back will get you to the original point instead of
moving you to one of the points of one of the other windows displaying
That seems to be fundamentally incompatible with your desire to move
point programmatically while the buffer is not displayed.
BTW, I'm not sure exactly what is the circumstance where you want Gnus
to do that, but maybe a better solution is to move point at another
moment, i.e. either before *Group* is un-displayed, or after *Group* is
re-displayed. E.g. instead of moving point to the next group when
I leave a group, Gnus could move point to the next group just before
entering the group (at which point *Group* is still displayed).