From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Resent-From: Leo Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 17 Oct 2010 17:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 7231@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.128733818923970 (code B ref -1); Sun, 17 Oct 2010 17:57:02 +0000 Received: (at submit) by debbugs.gnu.org; 17 Oct 2010 17:56:29 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7XTB-0006EZ-Bq for submit@debbugs.gnu.org; Sun, 17 Oct 2010 13:56:29 -0400 Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7XT9-0006EU-H4 for submit@debbugs.gnu.org; Sun, 17 Oct 2010 13:56:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P7XWh-0001Fp-NB for submit@debbugs.gnu.org; Sun, 17 Oct 2010 14:00:08 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, T_RP_MATCHES_RCVD, T_TO_NO_BRKTS_FREEMAIL autolearn=unavailable version=3.3.1 Received: from lists.gnu.org ([199.232.76.165]:35778) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P7XWh-0001Fl-L2 for submit@debbugs.gnu.org; Sun, 17 Oct 2010 14:00:07 -0400 Received: from [140.186.70.92] (port=48280 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1P7XWg-0007ge-On for bug-gnu-emacs@gnu.org; Sun, 17 Oct 2010 14:00:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P7XWf-0001FO-Q7 for bug-gnu-emacs@gnu.org; Sun, 17 Oct 2010 14:00:06 -0400 Received: from ppsw-50.csi.cam.ac.uk ([131.111.8.150]:35914) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P7XWf-0001FC-ME for bug-gnu-emacs@gnu.org; Sun, 17 Oct 2010 14:00:05 -0400 X-Cam-AntiVirus: no malware found X-Cam-SpamDetails: not scanned X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/ Received: from [59.57.34.138] (port=20947 helo=Victoria.local) by ppsw-50.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.157]:587) with esmtpsa (PLAIN:sl392) (TLSv1:DHE-RSA-AES128-SHA:128) id 1P7XWc-00053B-qN (Exim 4.72) for bug-gnu-emacs@gnu.org (return-path ); Sun, 17 Oct 2010 19:00:04 +0100 From: Leo Date: Mon, 18 Oct 2010 01:59:52 +0800 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Spam-Score: -6.6 (------) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.6 (------) The original change was to address buffer name changes due to packages such as uniquify.el. But it causes another annoying bug: changing the order of matches seen by users. This reverts it. If people are annoyed (which I doubt) by outdated buffer names due to uniquify.el, one solution is to map the buffer-names to buffer objects before killing and map them back to names after killing. >From 7e6597c54a7764688855c3ab2efa6cfa1cffbea6 Mon Sep 17 00:00:00 2001 Date: Mon, 18 Oct 2010 01:44:24 +0800 Subject: [PATCH] Don't rebuild buffer list in iswitchb-visit-buffer Rebuilding buffer list will lose the order of matches seen by users and thus cause surprises. --- lisp/iswitchb.el | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) diff --git a/lisp/iswitchb.el b/lisp/iswitchb.el index 081897a..b7baa03 100644 --- a/lisp/iswitchb.el +++ b/lisp/iswitchb.el @@ -1042,10 +1042,8 @@ Return the modified list with the last element prepended to it." (if (get-buffer buf) ;; buffer couldn't be killed. (setq iswitchb-rescan t) - ;; Else `kill-buffer' succeeds so re-make the buffer list - ;; taking into account packages like uniquify may rename - ;; buffers - (iswitchb-make-buflist iswitchb-default)))))) + ;; else buffer was killed so remove name from list. + (setq iswitchb-buflist (delq buf iswitchb-buflist))))))) ;;; VISIT CHOSEN BUFFER (defun iswitchb-visit-buffer (buffer) -- 1.7.3 From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Resent-From: =?UTF-8?Q?=C3=93scar?= Fuentes Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 17 Oct 2010 18:19:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Leo Cc: 7231@debbugs.gnu.org Received: via spool by 7231-submit@debbugs.gnu.org id=B7231.128733953424549 (code B ref 7231); Sun, 17 Oct 2010 18:19:01 +0000 Received: (at 7231) by debbugs.gnu.org; 17 Oct 2010 18:18:54 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7Xos-0006Nu-J3 for submit@debbugs.gnu.org; Sun, 17 Oct 2010 14:18:54 -0400 Received: from impaqm1.telefonica.net ([213.4.138.1]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7Xoq-0006No-A3 for 7231@debbugs.gnu.org; Sun, 17 Oct 2010 14:18:53 -0400 Received: from IMPmailhost2.adm.correo ([10.20.102.39]) by IMPaqm1.telefonica.net with bizsmtp id Krw41f0090r0BT601uNMZH; Sun, 17 Oct 2010 20:22:21 +0200 Received: from qcore ([83.52.52.115]) by IMPmailhost2.adm.correo with BIZ IMP id KuNL1f0072V89Bn1iuNMRV; Sun, 17 Oct 2010 20:22:21 +0200 X-Brightmail-Tracker: AAAAAA== X-TE-authinfo: authemail="981711563$telefonica.net" |auth_email="981711563@telefonica.net" X-TE-AcuTerraCos: auth_cuTerraCos="cosuitnetc01" From: =?UTF-8?Q?=C3=93scar?= Fuentes References: Date: Sun, 17 Oct 2010 20:22:20 +0200 In-Reply-To: (Leo's message of "Mon, 18 Oct 2010 01:59:52 +0800") Message-ID: <87r5foy90j.fsf@telefonica.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -3.0 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.0 (---) Leo writes: > The original change was to address buffer name changes due to packages > such as uniquify.el. But it causes another annoying bug: changing the > order of matches seen by users. > > This reverts it. > > If people are annoyed (which I doubt) by outdated buffer names due to > uniquify.el, The purpose of the patch you reverted was addressing that annoyance, so it is easy to infer that someone indeed was annoyed by that behavior. > one solution is to map the buffer-names to buffer objects > before killing and map them back to names after killing. So why don't you implement that instead of reverting a patch that corrects a bug? (After killing a buffer, having a list containing non-existent buffers is a bug, right? while seeing how the list after the second item is reordered is an annoyance, so you are proposing to re-introduce a bug for avoiding an annoyance) [snip] From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 17 Oct 2010 18:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Leo Cc: 7231@debbugs.gnu.org Received: via spool by 7231-submit@debbugs.gnu.org id=B7231.128734107325268 (code B ref 7231); Sun, 17 Oct 2010 18:45:02 +0000 Received: (at 7231) by debbugs.gnu.org; 17 Oct 2010 18:44:33 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7YDg-0006ZV-P8 for submit@debbugs.gnu.org; Sun, 17 Oct 2010 14:44:32 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.183] helo=ironport2-out.pppoe.ca) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7YDf-0006ZQ-Ba for 7231@debbugs.gnu.org; Sun, 17 Oct 2010 14:44:31 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AusJAIPhukxMCpO7/2dsb2JhbACgM3dywwOFSQSSGQ X-IronPort-AV: E=Sophos;i="4.57,343,1283745600"; d="scan'208";a="79878566" Received: from 76-10-147-187.dsl.teksavvy.com (HELO pastel.home) ([76.10.147.187]) by ironport2-out.pppoe.ca with ESMTP/TLS/ADH-AES256-SHA; 17 Oct 2010 14:48:11 -0400 Received: by pastel.home (Postfix, from userid 20848) id 9097DA8173; Sun, 17 Oct 2010 14:48:10 -0400 (EDT) From: Stefan Monnier Message-ID: References: Date: Sun, 17 Oct 2010 14:48:10 -0400 In-Reply-To: (Leo's message of "Mon, 18 Oct 2010 01:59:52 +0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.1 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.1 (--) > The original change was to address buffer name changes due to packages > such as uniquify.el. But it causes another annoying bug: changing the > order of matches seen by users. > This reverts it. I don't think we should just revert. If the fix for the old problem introduces a new problem, we should try and find a solution that fixes both problems at once. Stefan From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Resent-From: Leo Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 17 Oct 2010 19:14:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: =?UTF-8?Q?=C3=93scar?= Fuentes Cc: 7231@debbugs.gnu.org Received: via spool by 7231-submit@debbugs.gnu.org id=B7231.128734279626067 (code B ref 7231); Sun, 17 Oct 2010 19:14:02 +0000 Received: (at 7231) by debbugs.gnu.org; 17 Oct 2010 19:13:16 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7YfT-0006mO-6t for submit@debbugs.gnu.org; Sun, 17 Oct 2010 15:13:15 -0400 Received: from ppsw-50.csi.cam.ac.uk ([131.111.8.150]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7YfQ-0006mJ-Tv for 7231@debbugs.gnu.org; Sun, 17 Oct 2010 15:13:13 -0400 X-Cam-AntiVirus: no malware found X-Cam-SpamDetails: not scanned X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/ Received: from [59.57.34.138] (port=37728 helo=Victoria.local) by ppsw-50.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.157]:587) with esmtpsa (PLAIN:sl392) (TLSv1:DHE-RSA-AES128-SHA:128) id 1P7Yiy-00089y-ra (Exim 4.72) (return-path ); Sun, 17 Oct 2010 20:16:53 +0100 From: Leo References: <87r5foy90j.fsf@telefonica.net> Date: Mon, 18 Oct 2010 03:16:44 +0800 In-Reply-To: <87r5foy90j.fsf@telefonica.net> ("=?UTF-8?Q?=C3=93scar?= Fuentes"'s message of "Sun, 17 Oct 2010 20:22:20 +0200") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (Mac OS X 10.6.4) MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -4.6 (----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.9 (---) On 2010-10-18 02:22 +0800, =D3scar Fuentes wrote: > The purpose of the patch you reverted was addressing that annoyance, so > it is easy to infer that someone indeed was annoyed by that behavior. [...] > > So why don't you implement that instead of reverting a patch that > corrects a bug? (After killing a buffer, having a list containing > non-existent buffers is a bug, right? while seeing how the list after > the second item is reordered is an annoyance, so you are proposing to > re-introduce a bug for avoiding an annoyance) On 2010-10-18 02:48 +0800, Stefan Monnier wrote: > I don't think we should just revert. If the fix for the old problem > introduces a new problem, we should try and find a solution that fixes > both problems at once. > > Stefan Sorry for being too lazy. Please try the following patch. >From d61fe17fff2926731ea317b21d647a4cf2d136f4 Mon Sep 17 00:00:00 2001 Date: Mon, 18 Oct 2010 01:44:24 +0800 Subject: [PATCH] Rebuild buffer list using buffer objects in iswitchb-kill-buffer. Avoid `iswitchb-make-buflist' which changes the order of matches seen by users. --- lisp/iswitchb.el | 15 ++++++++++----- 1 files changed, 10 insertions(+), 5 deletions(-) diff --git a/lisp/iswitchb.el b/lisp/iswitchb.el index 081897a..4cab5ee 100644 --- a/lisp/iswitchb.el +++ b/lisp/iswitchb.el @@ -1033,7 +1033,9 @@ Return the modified list with the last element prepen= ded to it." (setq buf (car iswitchb-matches)) ;; check to see if buf is non-nil. (if buf - (progn + (let ((bufobjs (mapcar (lambda (name) + (or (get-buffer name) name)) + iswitchb-buflist))) (kill-buffer buf) =20 ;; Check if buffer exists. XEmacs gnuserv.el makes alias @@ -1042,10 +1044,13 @@ Return the modified list with the last element prep= ended to it." (if (get-buffer buf) ;; buffer couldn't be killed. (setq iswitchb-rescan t) - ;; Else `kill-buffer' succeeds so re-make the buffer list - ;; taking into account packages like uniquify may rename - ;; buffers - (iswitchb-make-buflist iswitchb-default)))))) + ;; else buffer was killed + (setq iswitchb-buflist + (delq nil (mapcar (lambda (b) + (if (bufferp b) + (buffer-name b) + b)) + bufobjs)))))))) =20 ;;; VISIT CHOSEN BUFFER (defun iswitchb-visit-buffer (buffer) --=20 1.7.3 From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 18 Oct 2010 14:51:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Leo Cc: =?UTF-8?Q?=C3=93scar?= Fuentes , 7231@debbugs.gnu.org Received: via spool by 7231-submit@debbugs.gnu.org id=B7231.128741345927167 (code B ref 7231); Mon, 18 Oct 2010 14:51:02 +0000 Received: (at 7231) by debbugs.gnu.org; 18 Oct 2010 14:50:59 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7r3D-000748-Jy for submit@debbugs.gnu.org; Mon, 18 Oct 2010 10:50:59 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.181] helo=ironport2-out.pppoe.ca) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7r3C-000743-IM for 7231@debbugs.gnu.org; Mon, 18 Oct 2010 10:50:59 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ag4JABv9u0xMCpO7/2dsb2JhbACgMnlyvxiDBwiCOgSSGQ X-IronPort-AV: E=Sophos;i="4.57,345,1283745600"; d="scan'208";a="80010080" Received: from 76-10-147-187.dsl.teksavvy.com (HELO pastel.home) ([76.10.147.187]) by ironport2-out.pppoe.ca with ESMTP/TLS/ADH-AES256-SHA; 18 Oct 2010 10:54:41 -0400 Received: by pastel.home (Postfix, from userid 20848) id 953F7A8219; Mon, 18 Oct 2010 10:54:40 -0400 (EDT) From: Stefan Monnier Message-ID: References: <87r5foy90j.fsf@telefonica.net> Date: Mon, 18 Oct 2010 10:54:40 -0400 In-Reply-To: (Leo's message of "Mon, 18 Oct 2010 03:16:44 +0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.1 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.1 (--) > - ;; Else `kill-buffer' succeeds so re-make the buffer list > - ;; taking into account packages like uniquify may rename > - ;; buffers > - (iswitchb-make-buflist iswitchb-default)))))) > + ;; else buffer was killed > + (setq iswitchb-buflist > + (delq nil (mapcar (lambda (b) > + (if (bufferp b) > + (buffer-name b) > + b)) > + bufobjs)))))))) I was about to install that change when I realized that this is fundamentally not the right approach: since some of the buffers may have changed name, the new list of matching buffers may be different (some buffers that didn't match before may match now and vice-versa). So iswitchb-make-buflist is more correct. To deal with the problem of ordering, we'll need to combine the two: call iswitchb-make-buflist to get the new list of matches, and then use bufobjs to sort the new iswitchb-buflist. Something like (iswitchb-make-buflist iswitchb-default)))))) ;; Try to preserve the previous sort order. (setq iswitchb-buflist (sort iswitchb-buflist (lambda (bn1 bn2) (< (length (or (memq (get-buffer bn1) bufobjs) ;; Place new buffers at the end. bufobjs)) (length (or (memq (get-buffer bn2) bufobjs) bufobjs)))))) Stefan From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Resent-From: Leo Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 20 Oct 2010 02:57:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Monnier Cc: =?UTF-8?Q?=C3=93scar?= Fuentes , 7231@debbugs.gnu.org Received: via spool by 7231-submit@debbugs.gnu.org id=B7231.128754340928654 (code B ref 7231); Wed, 20 Oct 2010 02:57:01 +0000 Received: (at 7231) by debbugs.gnu.org; 20 Oct 2010 02:56:49 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8OrA-0007S7-MD for submit@debbugs.gnu.org; Tue, 19 Oct 2010 22:56:48 -0400 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8Or8-0007S2-8x for 7231@debbugs.gnu.org; Tue, 19 Oct 2010 22:56:46 -0400 X-Cam-AntiVirus: no malware found X-Cam-SpamDetails: not scanned X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/ Received: from [59.57.34.138] (port=32207 helo=Victoria.local) by ppsw-41.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.156]:587) with esmtpsa (PLAIN:sl392) (TLSv1:DHE-RSA-AES128-SHA:128) id 1P8Oul-0002sP-Ri (Exim 4.72) (return-path ); Wed, 20 Oct 2010 04:00:32 +0100 From: Leo References: <87r5foy90j.fsf@telefonica.net> Date: Wed, 20 Oct 2010 11:00:00 +0800 In-Reply-To: (Stefan Monnier's message of "Mon, 18 Oct 2010 10:54:40 -0400") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (Mac OS X 10.6.4) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -3.6 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.4 (---) On 2010-10-18 22:54 +0800, Stefan Monnier wrote: > I was about to install that change when I realized that this is > fundamentally not the right approach: since some of the buffers may have > changed name, the new list of matching buffers may be different (some > buffers that didn't match before may match now and vice-versa). > > So iswitchb-make-buflist is more correct. To deal with the problem of > ordering, we'll need to combine the two: call iswitchb-make-buflist to > get the new list of matches, and then use bufobjs to sort the new > iswitchb-buflist. My understanding seems to be: iswitchb-buflist already contains all buffers needed although its order can be modified by iswitchb-next/prev-match. That modified ordering info is lost after iswitchb-make-buflist. There may be new matches appearing due to buffer name changes but this is taken care of automatically by iswitchb-exhibit. Leo From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer In-Reply-To: Resent-From: Leo Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 20 Oct 2010 04:51:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Monnier Cc: =?UTF-8?Q?=C3=93scar?= Fuentes , 7231@debbugs.gnu.org Received: via spool by 7231-submit@debbugs.gnu.org id=B7231.128755023031759 (code B ref 7231); Wed, 20 Oct 2010 04:51:01 +0000 Received: (at 7231) by debbugs.gnu.org; 20 Oct 2010 04:50:30 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8QdC-0008GC-Bc for submit@debbugs.gnu.org; Wed, 20 Oct 2010 00:50:30 -0400 Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8Qd9-0008G7-22 for 7231@debbugs.gnu.org; Wed, 20 Oct 2010 00:50:28 -0400 X-Cam-AntiVirus: no malware found X-Cam-SpamDetails: not scanned X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/ Received: from [59.57.34.138] (port=63928 helo=Victoria.local) by ppsw-41.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.156]:587) with esmtpsa (PLAIN:sl392) (TLSv1:DHE-RSA-AES128-SHA:128) id 1P8Qgm-0005gH-Rb (Exim 4.72) (return-path ); Wed, 20 Oct 2010 05:54:13 +0100 From: Leo References: <87r5foy90j.fsf@telefonica.net> Date: Wed, 20 Oct 2010 12:53:49 +0800 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (Mac OS X 10.6.4) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -3.3 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.2 (---) Hello Stefan, On 2010-10-20 11:00 +0800, Leo wrote: > On 2010-10-18 22:54 +0800, Stefan Monnier wrote: >> I was about to install that change when I realized that this is >> fundamentally not the right approach: since some of the buffers may have >> changed name, the new list of matching buffers may be different (some >> buffers that didn't match before may match now and vice-versa). >> >> So iswitchb-make-buflist is more correct. To deal with the problem of >> ordering, we'll need to combine the two: call iswitchb-make-buflist to >> get the new list of matches, and then use bufobjs to sort the new >> iswitchb-buflist. > > My understanding seems to be: > > iswitchb-buflist already contains all buffers needed although its order > can be modified by iswitchb-next/prev-match. That modified ordering info > is lost after iswitchb-make-buflist. There may be new matches appearing > due to buffer name changes but this is taken care of automatically by > iswitchb-exhibit. > > Leo If the proposed solution to iswitchb is acceptable, a similar one should be done for ido. Here is a patch to be applied on top of http://debbugs.gnu.org/cgi/bugreport.cgi?bug=6943. >From 5686c7c723d9bad601d870aff54b7a3d8edce471 Mon Sep 17 00:00:00 2001 Date: Wed, 20 Oct 2010 12:17:53 +0800 Subject: [PATCH] Don't rebuild buffer list in ido-kill-buffer-at-head Rebuilding buffer list will lose the order of matches seen by the user in particular when it has been rotated. --- lisp/ido.el | 32 ++++++++++++++------------------ 1 files changed, 14 insertions(+), 18 deletions(-) diff --git a/lisp/ido.el b/lisp/ido.el index 4a60288..d913069 100644 --- a/lisp/ido.el +++ b/lisp/ido.el @@ -3978,26 +3978,22 @@ If cursor is not at the end of the user input, delete to end of input." (if (not (eobp)) (delete-region (point) (line-end-position)) (let ((enable-recursive-minibuffers t) - (buf (ido-name (car ido-matches))) - (nextbuf (cadr ido-matches))) + (buf (ido-name (car ido-matches)))) (cond ((get-buffer buf) - ;; If next match names a buffer use the buffer object; buffer - ;; name may be changed by packages such as uniquify. - (when (and nextbuf (get-buffer nextbuf)) - (setq nextbuf (get-buffer nextbuf))) - (if (null (kill-buffer buf)) - ;; Buffer couldn't be killed. - (setq ido-rescan t) - ;; Else `kill-buffer' succeeds so re-make the buffer list - ;; taking into account packages like uniquify may rename - ;; buffers. - (if (bufferp nextbuf) - (setq nextbuf (buffer-name nextbuf))) - (setq ido-default-item nextbuf - ido-text-init ido-text - ido-exit 'refresh) - (exit-minibuffer))) + ;; Note that some packages (eg uniquify.el) may change buffer + ;; names. So save a list of buffer objects. + (let ((bufobjs (mapcar (lambda (name) + (or (get-buffer name) name)) + ido-cur-list))) + (if (null (kill-buffer buf)) + ;; Buffer couldn't be killed. + (setq ido-rescan t) + (setq ido-cur-list + (delq nil (mapcar (lambda (b) (if (bufferp b) + (buffer-name b) + b)) + bufobjs)))))) ;; Handle virtual buffers ((assoc buf ido-virtual-buffers) (setq recentf-list -- 1.7.3 From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Resent-From: =?UTF-8?Q?=C3=93scar?= Fuentes Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 20 Oct 2010 09:16:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Leo Cc: Stefan Monnier , 7231@debbugs.gnu.org Received: via spool by 7231-submit@debbugs.gnu.org id=B7231.12875661626698 (code B ref 7231); Wed, 20 Oct 2010 09:16:03 +0000 Received: (at 7231) by debbugs.gnu.org; 20 Oct 2010 09:16:02 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8Um9-0001jw-Pa for submit@debbugs.gnu.org; Wed, 20 Oct 2010 05:16:02 -0400 Received: from impaqm5.telefonica.net ([213.4.138.5]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8Um6-0001jp-Dw for 7231@debbugs.gnu.org; Wed, 20 Oct 2010 05:15:59 -0400 Received: from IMPmailhost1.adm.correo ([10.20.102.38]) by IMPaqm5.telefonica.net with bizsmtp id Lt4f1f01W0piX6q3RxKaBp; Wed, 20 Oct 2010 11:19:34 +0200 Received: from qcore ([83.52.52.115]) by IMPmailhost1.adm.correo with BIZ IMP id LxKZ1f00N2V89Bn1hxKZfx; Wed, 20 Oct 2010 11:19:34 +0200 X-Brightmail-Tracker: AAAAAA== X-TE-authinfo: authemail="981711563$telefonica.net" |auth_email="981711563@telefonica.net" X-TE-AcuTerraCos: auth_cuTerraCos="cosuitnetc01" From: =?UTF-8?Q?=C3=93scar?= Fuentes References: <87r5foy90j.fsf@telefonica.net> Date: Wed, 20 Oct 2010 11:19:33 +0200 In-Reply-To: (Leo's message of "Wed, 20 Oct 2010 12:53:49 +0800") Message-ID: <87sk01w7a2.fsf@telefonica.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -3.0 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.9 (--) Leo writes: > If the proposed solution to iswitchb is acceptable, a similar one should > be done for ido. > > Here is a patch to be applied on top of > http://debbugs.gnu.org/cgi/bugreport.cgi?bug=6943. > > From 5686c7c723d9bad601d870aff54b7a3d8edce471 Mon Sep 17 00:00:00 2001 > Date: Wed, 20 Oct 2010 12:17:53 +0800 > Subject: [PATCH] Don't rebuild buffer list in ido-kill-buffer-at-head Can you post a version that does not require to previosly introduce another patch, so we can test *this* proposed solution instead of something else? [snip] From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 20 Oct 2010 16:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Leo Cc: =?UTF-8?Q?=C3=93scar?= Fuentes , 7231@debbugs.gnu.org Received: via spool by 7231-submit@debbugs.gnu.org id=B7231.128759096320325 (code B ref 7231); Wed, 20 Oct 2010 16:10:02 +0000 Received: (at 7231) by debbugs.gnu.org; 20 Oct 2010 16:09:23 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8bEA-0005Hm-9w for submit@debbugs.gnu.org; Wed, 20 Oct 2010 12:09:22 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.181] helo=ironport2-out.pppoe.ca) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8bE9-0005Hh-5H for 7231@debbugs.gnu.org; Wed, 20 Oct 2010 12:09:21 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: An8KAK+xvkxMCpO7/2dsb2JhbACgUnpyv1mFSgSSGw X-IronPort-AV: E=Sophos;i="4.57,356,1283745600"; d="scan'208";a="80225644" Received: from 76-10-147-187.dsl.teksavvy.com (HELO ceviche.home) ([76.10.147.187]) by ironport2-out.pppoe.ca with ESMTP/TLS/ADH-AES256-SHA; 20 Oct 2010 12:13:09 -0400 Received: by ceviche.home (Postfix, from userid 20848) id 0873B66112; Wed, 20 Oct 2010 12:13:09 -0400 (EDT) From: Stefan Monnier Message-ID: References: <87r5foy90j.fsf@telefonica.net> Date: Wed, 20 Oct 2010 12:13:08 -0400 In-Reply-To: (Leo's message of "Wed, 20 Oct 2010 11:00:00 +0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.1 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.1 (--) >> I was about to install that change when I realized that this is >> fundamentally not the right approach: since some of the buffers may have >> changed name, the new list of matching buffers may be different (some >> buffers that didn't match before may match now and vice-versa). >> >> So iswitchb-make-buflist is more correct. To deal with the problem of >> ordering, we'll need to combine the two: call iswitchb-make-buflist to >> get the new list of matches, and then use bufobjs to sort the new >> iswitchb-buflist. > My understanding seems to be: > iswitchb-buflist already contains all buffers needed although its order > can be modified by iswitchb-next/prev-match. That modified ordering info > is lost after iswitchb-make-buflist. There may be new matches appearing > due to buffer name changes but this is taken care of automatically by > iswitchb-exhibit. I see, so iswitchb-buflist contains all buffers, not just the ones that match the current input? In that case, my concern is indeed a non-issue and your patch looks fine. Please install it. Stefan From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer In-Reply-To: Resent-From: Leo Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 21 Oct 2010 07:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.128764535811063 (code B ref -1); Thu, 21 Oct 2010 07:16:01 +0000 Received: (at submit) by debbugs.gnu.org; 21 Oct 2010 07:15:58 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8pNV-0002sO-QC for submit@debbugs.gnu.org; Thu, 21 Oct 2010 03:15:58 -0400 Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P8pNT-0002sJ-8A for submit@debbugs.gnu.org; Thu, 21 Oct 2010 03:15:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P8pRA-0008Kn-Em for submit@debbugs.gnu.org; Thu, 21 Oct 2010 03:19:45 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_NUMERIC_HELO, T_RP_MATCHES_RCVD, T_TO_NO_BRKTS_FREEMAIL autolearn=no version=3.3.1 Received: from lists.gnu.org ([199.232.76.165]:46421) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P8pRA-0008Kj-9V for submit@debbugs.gnu.org; Thu, 21 Oct 2010 03:19:44 -0400 Received: from [140.186.70.92] (port=42377 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1P8pR8-0002Xq-5S for bug-gnu-emacs@gnu.org; Thu, 21 Oct 2010 03:19:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P8pR6-0008KH-UH for bug-gnu-emacs@gnu.org; Thu, 21 Oct 2010 03:19:41 -0400 Received: from lo.gmane.org ([80.91.229.12]:51588) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P8pR6-0008KB-Ht for bug-gnu-emacs@gnu.org; Thu, 21 Oct 2010 03:19:40 -0400 Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1P8pR1-0001ts-6M for bug-gnu-emacs@gnu.org; Thu, 21 Oct 2010 09:19:38 +0200 Received: from 59.57.34.138 ([59.57.34.138]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 21 Oct 2010 09:19:35 +0200 Received: from sdl.web by 59.57.34.138 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 21 Oct 2010 09:19:35 +0200 X-Injected-Via-Gmane: http://gmane.org/ From: Leo Date: Thu, 21 Oct 2010 15:19:17 +0800 Lines: 26 Message-ID: References: <87r5foy90j.fsf@telefonica.net> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: 59.57.34.138 Face: iVBORw0KGgoAAAANSUhEUgAAACgAAAAoBAMAAAB+0KVeAAAAMFBMVEUaFRZLMy1dTENxVzKQ WiCrXQ97cmO/dSqSh3akjGTApXy5sJ7Sxo/Sz8Xo6eP9//xJbkruAAAAAWJLR0QAiAUdSAAAAAlw SFlzAAACxQAAAsUBidZ/7wAAAAd0SU1FB9cBBwMJOwHXewoAAAIBSURBVCjPVdNBiNNAFADQ6J4F x3hThHZBBC+WCFI8SS0iezRDcMHLHkLAg6gJH/fgYQ9xYlj2sLK4KHgqCgXFhda2Idmr4kkQPZQ0 nkQMbTypbMmMM2m7ZgYSmMef/5OZPwo7HFnx3uKPcmj0Dht1LWZJ+Hvr7dIFZXRUwl9VRTuuKDJ+ U44gjscknK4hhJaCkYRsWjmBtLqXlJAG2wipNe18OZJu1BBq1E8xafl4s6Jq2mUZGftU1y7CCxnp FVUDWJXx4C66BKBnErbuoaYNtoRTu6EZBsCbMn7W+5qOAR6WvxNOby9jHWC9hAf3n304CdiAByXs 3Nh9roLDkyb/sWV712vYwaLSAn8CPMHIAAzOPDKP2COAFm4Y4ODVWc6xG7KXsN7UeUJjjimx2uwd gCgNhr0i8C/xyCD5CiCKAMY3Bf5oDzx//w/fimscdcAZU2jv9sedx6+nYPPFIoWI/GK6QZ+EFGOR ErAjCnV3vPZ7XqlTIMbOLY7fLcvvmT7rXNWaGDexIY44N12TG2PDp7vqyl57dnCeuWwyNpnEURxk fTbDYeBnKRn4oejPYI4sH6WviBumEZ/GxX4X/x6EcURFZ7E071bjQGAxpcOAEOJuTiroDEea5Szv rVWLYfl7ZiQwSUToxrkux7OLixAWGz22+HIyWTRYcVfomOwvzusfjtVIGgLHf3MAAAAASUVORK5C YII= User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (Mac OS X 10.6.4) Cancel-Lock: sha1:dCYoF55duzUnwCVEGzl/eSa8OxE= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Spam-Score: -3.7 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.7 (---) On 2010-10-20 12:53 +0800, Leo wrote: [...] > > If the proposed solution to iswitchb is acceptable, a similar one should > be done for ido. [...] On 2010-10-20 17:19 +0800, Óscar Fuentes wrote: [...] > Can you post a version that does not require to previosly introduce > another patch, so we can test *this* proposed solution instead of > something else? > > [snip] Due to the way ido set matches i.e. it ranges matches into a few sections unless ido-rotate is non-nil (see #5724) and the order of rotated matches is lost after any none rotating commands, please ignore the patch for ido for now. Could someone having commit access apply the patch for iswitchb? I have received a complaint from someone via IRC the other day. Thanks. Leo From unknown Mon Jun 23 09:37:36 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Resent-From: Leo Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 23 Oct 2010 05:33:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7231 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Monnier Cc: =?UTF-8?Q?=C3=93scar?= Fuentes , 7231@debbugs.gnu.org Received: via spool by 7231-submit@debbugs.gnu.org id=B7231.12878119687068 (code B ref 7231); Sat, 23 Oct 2010 05:33:02 +0000 Received: (at 7231) by debbugs.gnu.org; 23 Oct 2010 05:32:48 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P9Wil-0001px-Lz for submit@debbugs.gnu.org; Sat, 23 Oct 2010 01:32:47 -0400 Received: from ppsw-51.csi.cam.ac.uk ([131.111.8.151]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P9Wii-0001pq-Cm for 7231@debbugs.gnu.org; Sat, 23 Oct 2010 01:32:45 -0400 X-Cam-AntiVirus: no malware found X-Cam-SpamDetails: not scanned X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/ Received: from [59.57.34.138] (port=52889 helo=Victoria.local) by ppsw-51.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.158]:587) with esmtpsa (PLAIN:sl392) (TLSv1:DHE-RSA-AES128-SHA:128) id 1P9WmU-0007R4-XV (Exim 4.72) (return-path ); Sat, 23 Oct 2010 06:36:38 +0100 From: Leo References: <87r5foy90j.fsf@telefonica.net> Date: Sat, 23 Oct 2010 13:36:29 +0800 In-Reply-To: (Stefan Monnier's message of "Wed, 20 Oct 2010 12:13:08 -0400") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (Mac OS X 10.6.4) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -2.4 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.0 (---) On 2010-10-21 00:13 +0800, Stefan Monnier wrote: > I see, so iswitchb-buflist contains all buffers, not just the ones that > match the current input? Except those being ignored. iswitchb-matches holds the matches. > In that case, my concern is indeed a non-issue and your patch looks > fine. Please install it. Someone in IRC (whose complaint this bug report tries to address) has also confirmed the patch fixes the issue for him. Could you or someone else install the patch? Many thanks. Leo From unknown Mon Jun 23 09:37:36 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.427 (Entity 5.427) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Leo Subject: bug#7231: closed (Re: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer) Message-ID: References: X-Gnu-PR-Message: they-closed 7231 X-Gnu-PR-Package: emacs Reply-To: 7231@debbugs.gnu.org Date: Thu, 28 Oct 2010 01:29:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1288229342-7272-1" This is a multi-part message in MIME format... ------------=_1288229342-7272-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 7231@debbugs.gnu.org. --=20 7231: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D7231 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1288229342-7272-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 7231-done) by debbugs.gnu.org; 28 Oct 2010 01:28:27 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PBHHz-0001t2-Lt for submit@debbugs.gnu.org; Wed, 27 Oct 2010 21:28:26 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.181] helo=ironport2-out.pppoe.ca) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PBHGY-0001rz-ID for 7231-done@debbugs.gnu.org; Wed, 27 Oct 2010 21:26:55 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgQJAKtvyExFxL/T/2dsb2JhbACgSHxywFKFSASSKg X-IronPort-AV: E=Sophos;i="4.58,248,1286164800"; d="scan'208";a="80870887" Received: from 69-196-191-211.dsl.teksavvy.com (HELO pastel.home) ([69.196.191.211]) by ironport2-out.pppoe.ca with ESMTP/TLS/ADH-AES256-SHA; 27 Oct 2010 21:31:01 -0400 Received: by pastel.home (Postfix, from userid 20848) id BD2D9A8558; Wed, 27 Oct 2010 21:31:01 -0400 (EDT) From: Stefan Monnier To: Leo Subject: Re: bug#7231: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Message-ID: References: <87r5foy90j.fsf@telefonica.net> Date: Wed, 27 Oct 2010 21:31:01 -0400 In-Reply-To: (Leo's message of "Mon, 18 Oct 2010 03:16:44 +0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.0 (--) X-Debbugs-Envelope-To: 7231-done X-Mailman-Approved-At: Wed, 27 Oct 2010 21:28:21 -0400 Cc: =?iso-8859-1?Q?=D3scar?= Fuentes X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.0 (--) > Sorry for being too lazy. Please try the following patch. Thanks, installed in the trunk. Stefan ------------=_1288229342-7272-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 17 Oct 2010 17:56:29 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7XTB-0006EZ-Bq for submit@debbugs.gnu.org; Sun, 17 Oct 2010 13:56:29 -0400 Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1P7XT9-0006EU-H4 for submit@debbugs.gnu.org; Sun, 17 Oct 2010 13:56:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P7XWh-0001Fp-NB for submit@debbugs.gnu.org; Sun, 17 Oct 2010 14:00:08 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, T_RP_MATCHES_RCVD, T_TO_NO_BRKTS_FREEMAIL autolearn=unavailable version=3.3.1 Received: from lists.gnu.org ([199.232.76.165]:35778) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P7XWh-0001Fl-L2 for submit@debbugs.gnu.org; Sun, 17 Oct 2010 14:00:07 -0400 Received: from [140.186.70.92] (port=48280 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1P7XWg-0007ge-On for bug-gnu-emacs@gnu.org; Sun, 17 Oct 2010 14:00:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P7XWf-0001FO-Q7 for bug-gnu-emacs@gnu.org; Sun, 17 Oct 2010 14:00:06 -0400 Received: from ppsw-50.csi.cam.ac.uk ([131.111.8.150]:35914) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P7XWf-0001FC-ME for bug-gnu-emacs@gnu.org; Sun, 17 Oct 2010 14:00:05 -0400 X-Cam-AntiVirus: no malware found X-Cam-SpamDetails: not scanned X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/ Received: from [59.57.34.138] (port=20947 helo=Victoria.local) by ppsw-50.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.157]:587) with esmtpsa (PLAIN:sl392) (TLSv1:DHE-RSA-AES128-SHA:128) id 1P7XWc-00053B-qN (Exim 4.72) for bug-gnu-emacs@gnu.org (return-path ); Sun, 17 Oct 2010 19:00:04 +0100 From: Leo To: bug-gnu-emacs@gnu.org Subject: 23.3; Don't rebuild buffer list in iswitchb-visit-buffer Date: Mon, 18 Oct 2010 01:59:52 +0800 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Spam-Score: -6.6 (------) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.6 (------) The original change was to address buffer name changes due to packages such as uniquify.el. But it causes another annoying bug: changing the order of matches seen by users. This reverts it. If people are annoyed (which I doubt) by outdated buffer names due to uniquify.el, one solution is to map the buffer-names to buffer objects before killing and map them back to names after killing. >From 7e6597c54a7764688855c3ab2efa6cfa1cffbea6 Mon Sep 17 00:00:00 2001 Date: Mon, 18 Oct 2010 01:44:24 +0800 Subject: [PATCH] Don't rebuild buffer list in iswitchb-visit-buffer Rebuilding buffer list will lose the order of matches seen by users and thus cause surprises. --- lisp/iswitchb.el | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) diff --git a/lisp/iswitchb.el b/lisp/iswitchb.el index 081897a..b7baa03 100644 --- a/lisp/iswitchb.el +++ b/lisp/iswitchb.el @@ -1042,10 +1042,8 @@ Return the modified list with the last element prepended to it." (if (get-buffer buf) ;; buffer couldn't be killed. (setq iswitchb-rescan t) - ;; Else `kill-buffer' succeeds so re-make the buffer list - ;; taking into account packages like uniquify may rename - ;; buffers - (iswitchb-make-buflist iswitchb-default)))))) + ;; else buffer was killed so remove name from list. + (setq iswitchb-buflist (delq buf iswitchb-buflist))))))) ;;; VISIT CHOSEN BUFFER (defun iswitchb-visit-buffer (buffer) -- 1.7.3 ------------=_1288229342-7272-1--