From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.bugs Subject: bug#71290: Options for viewing project buffers Date: Sun, 9 Jun 2024 05:42:16 +0300 Message-ID: References: <99d41a84966ab944056814a15e8f37a7f664697e.camel@mikpom.ru> <82a4e2c5-5567-4f0d-91fe-56d1e1c0467d@gutov.dev> <45d69f9576ef593efd4d96fddc2bc03957ac45b7.camel@mikpom.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="3167"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla Thunderbird To: mikpom , 71290-done@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Jun 09 04:52:15 2024 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 1sG8fG-0000dY-T6 for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 09 Jun 2024 04:52:15 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sG8ev-0005EM-BA; Sat, 08 Jun 2024 22:51:53 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sG8eo-0005DY-5h for bug-gnu-emacs@gnu.org; Sat, 08 Jun 2024 22:51:47 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sG8en-0002Pr-Ti for bug-gnu-emacs@gnu.org; Sat, 08 Jun 2024 22:51:45 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sG8f4-00015b-0a for bug-gnu-emacs@gnu.org; Sat, 08 Jun 2024 22:52:02 -0400 Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-To: bug-gnu-emacs@gnu.org Resent-Date: Sun, 09 Jun 2024 02:52:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: cc-closed 71290 X-GNU-PR-Package: emacs Mail-Followup-To: 71290@debbugs.gnu.org, dmitry@gutov.dev, mikpom@mikpom.ru Original-Received: via spool by 71290-done@debbugs.gnu.org id=D71290.17179014884088 (code D ref 71290); Sun, 09 Jun 2024 02:52:01 +0000 Original-Received: (at 71290-done) by debbugs.gnu.org; 9 Jun 2024 02:51:28 +0000 Original-Received: from localhost ([127.0.0.1]:58509 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sG8eV-00013q-Lw for submit@debbugs.gnu.org; Sat, 08 Jun 2024 22:51:27 -0400 Original-Received: from wfout1-smtp.messagingengine.com ([64.147.123.144]:46477) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sG8eS-00013V-Ss for 71290-done@debbugs.gnu.org; Sat, 08 Jun 2024 22:51:26 -0400 Original-Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfout.west.internal (Postfix) with ESMTP id 815881C001FD; Sat, 8 Jun 2024 22:42:19 -0400 (EDT) Original-Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Sat, 08 Jun 2024 22:42:19 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :content-transfer-encoding:content-type:content-type:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1717900939; x=1717987339; bh=ePGBrIHAYH+W8j3i7TuLs5asMmpS8jawbDg4F3tazws=; b= csTBCr7+HWRaIEViY2jHRKw+1NfCaWRideSZ7p9kdlvPUiYnTfuRogUSCaNhX2yl 4qC77gypn536/TMojyOSv2skrNVNI0SVbS1SXWOv+s9S2J6iI5kSE9mSFkKZwnbI TnNhIeiI+zwmMQ9HUryZoPIv7Jf2p2HTa3xSB3RV6kP+lDTnW28hbpn9SpgQVvrO cIY5h8Fpkbyx/4F9qiP4+Qw5gOvsC5jVTQgYdx1oYpwWN4xkHtLGtuMlYrhrSAO1 ovyajUy9mjumUkduBOdonJH8Pl3QQ1bjEbjDbDe9lySfxkcH8ER7Mhk18qqhh52+ uujbi9Q8GdnHDNvLBlCOAw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1717900939; x= 1717987339; bh=ePGBrIHAYH+W8j3i7TuLs5asMmpS8jawbDg4F3tazws=; b=I mSLrar9H+KIj1+B5hRq67FLZxXb8/r5TCtQO239pbhOkUqUE33uvWbpiXlP9COW/ xLljEVaggDhi6Nz1YkzcLybaPnaJ5GuHYhk/xbjZv5pmm3fWt8rdvPTW7/05o4i9 rj/TRyZnIXV4fBQBkz9C/VgJxFHZUnu5u3Odt+5HQfd7rnom4UPXPcgDEcE8SKzW JS7RXv1mhYQT51bea6BnV6yg6kA8hnGK4zqmoJ313wUx1n11q/IswmLRhfwq2E7D 1uBmlLaY1iyaYYYKouCT0LQD7NGV1Zp++/LnhmsxzNiGF2bTvJXnOFZgheILgNtj OLbZ0UBinDKVjVlfWrY7A== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrfedthedgieduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefkffggfgfuvfhfhfgjtgfgsehtje ertddtvdejnecuhfhrohhmpeffmhhithhrhicuifhuthhovhcuoegumhhithhrhiesghhu thhovhdruggvvheqnecuggftrfgrthhtvghrnheptdfhuedvtdevleegueelvedvjeevhe ffveevhedvuefftdefhfdvueeggfetgfdtnecuvehluhhsthgvrhfuihiivgeptdenucfr rghrrghmpehmrghilhhfrhhomhepughmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Original-Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 8 Jun 2024 22:42:17 -0400 (EDT) Content-Language: en-US In-Reply-To: <45d69f9576ef593efd4d96fddc2bc03957ac45b7.camel@mikpom.ru> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:286906 Archived-At: Hi! On 05/06/2024 07:00, mikpom wrote: > So I implemented (thank for a suggestion in Emacs-ru chat) optional > Ibuffer viewer. Diff on project.el is attached. It works in my setting. This works, thank you. Pushed to master with expanded docstring and a minor fix (the ARG argument). Also added the below patch. This seems to work well, so marking this as resolved. diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el index ab928a35e54..a16ff30395b 100644 --- a/lisp/progmodes/project.el +++ b/lisp/progmodes/project.el @@ -1567,7 +1567,8 @@ project-list-buffers (funcall project-buffers-viewer pr arg))) (defun project-list-buffers-buffer-menu (project &optional files-only) - "Lists buffers of a project in Buffer-menu mode" + "List buffers for PROJECT in Buffer-menu mode. +If FILES-ONLY is non-nil, only show the file-visiting buffers." (let ((buffer-list-function (lambda () (seq-filter @@ -1598,11 +1599,13 @@ project-list-buffers-buffer-menu (list-buffers-noselect files-only buffer-list-function))))) (defun project-list-buffers-ibuffer (project &optional files-only) - "Lists buffers of a project with Ibuffer" - ;; TODO files-only + "List buffers for PROJECT using Ibuffer. +If FILES-ONLY is non-nil, only show the file-visiting buffers." (ibuffer t (format "*Ibuffer-%s*" (project-name project)) - `((predicate . (member (current-buffer) - (project-buffers ',project)))))) + `((predicate . (and + (or ,(not files-only) buffer-file-name) + (member (current-buffer) + (project-buffers ',project))))))) (defcustom project-kill-buffer-conditions '(buffer-file-name ; All file-visiting buffers are included.