From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: [Emacs-diffs] master 51f0ccc: Put follow-mode's engine on pre-redisplay-hook instead of post-command-hook Date: Wed, 03 Oct 2018 09:52:08 -0400 Message-ID: References: <20181003105358.19923.64797@vcs0.savannah.gnu.org> <20181003105359.AA7EC204E8@vcs0.savannah.gnu.org> <20181003131411.GB16238@ACM> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1538574672 20146 195.159.176.226 (3 Oct 2018 13:51:12 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 3 Oct 2018 13:51:12 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Oct 03 15:51:08 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1g7hYR-00059a-B9 for ged-emacs-devel@m.gmane.org; Wed, 03 Oct 2018 15:51:07 +0200 Original-Received: from localhost ([::1]:48882 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g7haX-0007YM-QJ for ged-emacs-devel@m.gmane.org; Wed, 03 Oct 2018 09:53:17 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:53594) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g7hZn-0007VO-HO for emacs-devel@gnu.org; Wed, 03 Oct 2018 09:52:32 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1g7hZi-000190-9J for emacs-devel@gnu.org; Wed, 03 Oct 2018 09:52:31 -0400 Original-Received: from [195.159.176.226] (port=41488 helo=blaine.gmane.org) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1g7hZg-0000xF-8s for emacs-devel@gnu.org; Wed, 03 Oct 2018 09:52:24 -0400 Original-Received: from list by blaine.gmane.org with local (Exim 4.84_2) (envelope-from ) id 1g7hXQ-00042W-O4 for emacs-devel@gnu.org; Wed, 03 Oct 2018 15:50:04 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 23 Original-X-Complaints-To: usenet@blaine.gmane.org Cancel-Lock: sha1:jK3/ndq9eg91ffDqtKv4y+IC2pA= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 195.159.176.226 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:230199 Archived-At: >> > +;; The magic little box. This function was formerly called after every >> > +;; command. It is now called before each redisplay operation (see >> > +;; `follow-pre-redisplay-function' above), and at the end of several >> > +;; search/replace commands. It retains its historical name. >> I wonder why this is still needed. > There are interfaces like `isearch-update-post-hook' that need a > function with no arguments. Isearch calls this hook at the end of a > search operation, and this allows follow-mode to resynchronise the > windows before a redisplay. > > I tried removing this interface, hoping that the pre-redisplay-function > would do everything properly anyway, but it didn't - a search caused the > LH window to scroll rather than moving point to the RH window. Also the > windows have to be aligned before lazy highlighting takes place. So > `isearch-update-post-hook' and friends stay. Thanks. A comment explaining why these hooks are still used would be very welcome (apparently, we don't know the deep reason why, but you can mention the known test cases where it was found to be needed (e.g. what you just wrote)). Stefan