From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.bugs Subject: bug#40919: 27.0.91; next-error-select-buffer does not always behave as documented Date: Thu, 30 Apr 2020 23:14:09 +0300 Organization: LINKOV.NET Message-ID: <87bln8u3xq.fsf@mail.linkov.net> References: <53913bd9-2bdc-0f70-f7b4-744283e0512f@ieee.org> <87d07rmb6j.fsf@mail.linkov.net> <87zhau5bfw.fsf@mail.linkov.net> <66f63b16-307a-919c-1d25-60ff63f92ae6@ieee.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="83378"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) Cc: 40919@debbugs.gnu.org To: Trevor Spiteri Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Apr 30 22:25:53 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jUFkm-000LY3-Pb for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 30 Apr 2020 22:25:52 +0200 Original-Received: from localhost ([::1]:43504 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jUFkk-0003OK-9k for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 30 Apr 2020 16:25:50 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:34802) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jUFkV-0003L4-31 for bug-gnu-emacs@gnu.org; Thu, 30 Apr 2020 16:25:39 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jUFk0-00080k-Bi for bug-gnu-emacs@gnu.org; Thu, 30 Apr 2020 16:25:34 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:36238) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jUFjy-0007z0-UO for bug-gnu-emacs@gnu.org; Thu, 30 Apr 2020 16:25:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jUFjy-0003sG-Op for bug-gnu-emacs@gnu.org; Thu, 30 Apr 2020 16:25:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 30 Apr 2020 20:25:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 40919 X-GNU-PR-Package: emacs Original-Received: via spool by 40919-submit@debbugs.gnu.org id=B40919.158827828514834 (code B ref 40919); Thu, 30 Apr 2020 20:25:02 +0000 Original-Received: (at 40919) by debbugs.gnu.org; 30 Apr 2020 20:24:45 +0000 Original-Received: from localhost ([127.0.0.1]:47777 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jUFjh-0003rC-1B for submit@debbugs.gnu.org; Thu, 30 Apr 2020 16:24:45 -0400 Original-Received: from relay12.mail.gandi.net ([217.70.178.232]:35781) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jUFje-0003qv-HA for 40919@debbugs.gnu.org; Thu, 30 Apr 2020 16:24:43 -0400 Original-Received: from mail.gandi.net (m91-129-106-11.cust.tele2.ee [91.129.106.11]) (Authenticated sender: juri@linkov.net) by relay12.mail.gandi.net (Postfix) with ESMTPSA id DB2F1200007; Thu, 30 Apr 2020 20:24:34 +0000 (UTC) In-Reply-To: <66f63b16-307a-919c-1d25-60ff63f92ae6@ieee.org> (Trevor Spiteri's message of "Thu, 30 Apr 2020 00:40:35 +0200") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:179396 Archived-At: >> @@ -379,7 +379,8 @@ next-error-select-buffer >> (list (get-buffer >> (read-buffer "Select next-error buffer: " nil nil >> (lambda (b) (next-error-buffer-p (cdr b))))))) >> - (setq next-error-last-buffer buffer)) >> + (setq next-error-last-buffer buffer) >> + (setq next-error-buffer buffer)) >> >> (defalias 'goto-next-locus 'next-error) >> (defalias 'next-match 'next-error) >> > I think this would work for next-error-select-buffer. Then to fix the > other issue about new compilations, compilation-start can be modified to > use next-error-select-buffer. That way the change in compilation-start > is morally unambiguous :) I'm not sure if this is morally right, because users might want to continue to navigate an old next-error buffer, even after creating a new next-error buffer. OTOH, by using next-error-select-buffer they explicitly say that they want to switch to the new navigation. Do you think it's right to implicitly assume the user's intention? We should base the decision not on precedence set by older versions, but on expectations of most users. > diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el > index 455f181f50..41e77007c6 100644 > --- a/lisp/progmodes/compile.el > +++ b/lisp/progmodes/compile.el > @@ -1910,7 +1910,7 @@ compilation-start > (goto-char (point-max)))) > > ;; Make it so the next C-x ` will use this buffer. > - (setq next-error-last-buffer outbuf))) > + (next-error-select-buffer outbuf))) > > (defun compilation-set-window-height (window) > "Set the height of WINDOW according to `compilation-window-height'." There are more places that set next-error-last-buffer: vc-git-grep, occur-1, xref.el... But I'm still not sure if this is a preferable behavior for most users. Maybe this needs a user option?