From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 05 06:04:35 2016 Received: (at submit) by debbugs.gnu.org; 5 Nov 2016 10:04:35 +0000 Received: from localhost ([127.0.0.1]:45413 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c2xpy-0005Bc-PH for submit@debbugs.gnu.org; Sat, 05 Nov 2016 06:04:34 -0400 Received: from eggs.gnu.org ([208.118.235.92]:49981) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c2xpx-0005BR-Uu for submit@debbugs.gnu.org; Sat, 05 Nov 2016 06:04:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c2xpr-0004Ao-Mb for submit@debbugs.gnu.org; Sat, 05 Nov 2016 06:04:28 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:53085) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1c2xpr-0004Ab-JK for submit@debbugs.gnu.org; Sat, 05 Nov 2016 06:04:27 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40947) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c2xpq-0006Sa-Dk for bug-gnu-emacs@gnu.org; Sat, 05 Nov 2016 06:04:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c2xpl-00043v-AD for bug-gnu-emacs@gnu.org; Sat, 05 Nov 2016 06:04:26 -0400 Received: from mail-pf0-x241.google.com ([2607:f8b0:400e:c00::241]:33190) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1c2xpl-00042n-3U for bug-gnu-emacs@gnu.org; Sat, 05 Nov 2016 06:04:21 -0400 Received: by mail-pf0-x241.google.com with SMTP id 144so2026974pfv.0 for ; Sat, 05 Nov 2016 03:04:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:date:message-id:mime-version; bh=HhB9g4DxPyT3jJyte6Q915gxDPAHy8M9vTmVmAMs/uI=; b=LzqETHvgWdnGJdFDoC3lDZ3dG++W2/CL7URVcADYC+TfNi8gaxE8g3gM9l0pK0CO7j 8US+wzAJg+68k601v3IEJpfEoLu6rGR39yVBRd6nwm3jXodq572wFdifNW1ICwIKKI5M ej/HRNzKNPbQL65QVOVJUpun3/YAqDcVySBOMBgGKLTM2kzW6W5zULTsMa4kRU7ZKKb+ XtR/IM/yl2Q52UQaWG3nVFD57Km4amEXAfKR2X8wqUw4Xgk15Ds4pu2i+/4I3FgxncKm 7H0xsVXj8Z+bcg9eQWXBFUIbOqFaMZJl1/mqXCPvrIRcfkpnKNSa1TtCtgLb95zcIcJZ ID3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:mime-version; bh=HhB9g4DxPyT3jJyte6Q915gxDPAHy8M9vTmVmAMs/uI=; b=W2WIabuAgabojQxk6Q61o/OpfPTIIYv4xV2A78VOiGTO2mwQ+qCY3zrUwVpPJXJ2Xj bU1UhihfwaWmLxmmo3+LGcnfWbU6fJyT9pQU0np+Da8YUIVkkswt1M6KLxjQ61FV4lig s5T8iZGoLZ5K45D8UDkcp0a4X0WlIWRRGJLQXpI5QCnJRT46P0qWRiDkYkuj8feCi/M0 a3ur60piOcZouPI2JQYwH7ZexmBUaZG7Uq+vE5nLWSpgRUUZ/63UYqDjs10J/epI5zjJ WxQRKqHvnkQUtBUCCn/IdGbg3Fu6NNPGfgyzk1C4KU5nto4PRzrNTb72EW6j1rMR7OS/ 2bKg== X-Gm-Message-State: ABUngvehZiR7/iQMxH4BU9LZVLXU2WJc/7kEfsXgAqKnqXR6e8xN8vbGsOyyp7Ggs709Uw== X-Received: by 10.99.47.7 with SMTP id v7mr28892321pgv.15.1478340259788; Sat, 05 Nov 2016 03:04:19 -0700 (PDT) Received: from calancha-pc (57.92.100.220.dy.bbexcite.jp. [220.100.92.57]) by smtp.gmail.com with ESMTPSA id n7sm26316631pfn.62.2016.11.05.03.04.18 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 05 Nov 2016 03:04:19 -0700 (PDT) From: Tino Calancha To: bug-gnu-emacs@gnu.org Subject: 26.0.50; buff-menu: Command to unmark all buffers Date: Sat, 05 Nov 2016 19:04:15 +0900 Message-ID: <871syqnsyo.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.0 (----) I miss in this package a command to unmark all buffers bound to 'U'. How about the following? ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; >From 1b7ff2820bd9e342a9f27c645fe961c06afaefc8 Mon Sep 17 00:00:00 2001 From: Tino Calancha Date: Sat, 5 Nov 2016 18:58:33 +0900 Subject: [PATCH] buff-menu: Command to unmark all buffers * lisp/emacs-lisp/tabulated-list.el (tabulated-list-header-overlay-p): New predicate; return non-nil if tabulated-list has a fake header. * lisp/buff-menu.el (Buffer-menu-unmark-all): New command; cancel all requested operations on buffers. Bind it to 'U'. --- lisp/buff-menu.el | 13 +++++++++++++ lisp/emacs-lisp/tabulated-list.el | 6 ++++++ 2 files changed, 19 insertions(+) diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el index 4742628..e920382 100644 --- a/lisp/buff-menu.el +++ b/lisp/buff-menu.el @@ -121,6 +121,7 @@ Buffer-menu-mode-map (define-key map "\177" 'Buffer-menu-backup-unmark) (define-key map "~" 'Buffer-menu-not-modified) (define-key map "u" 'Buffer-menu-unmark) + (define-key map "U" 'Buffer-menu-unmark-all) (define-key map "m" 'Buffer-menu-mark) (define-key map "t" 'Buffer-menu-visit-tags-table) (define-key map "%" 'Buffer-menu-toggle-read-only) @@ -356,6 +357,18 @@ Buffer-menu-unmark (Buffer-menu--unmark) (forward-line (if backup -1 1))) +(defun Buffer-menu-unmark-all () + "Cancel all requested operations on buffers." + (interactive) + (save-excursion + (goto-char (point-min)) + (when (tabulated-list-header-overlay-p) + (forward-line)) + (while (not (eobp)) + (unless (string= "." (aref (tabulated-list-get-entry) 0)) + (tabulated-list-set-col 0 " " t)) + (forward-line)))) + (defun Buffer-menu-backup-unmark () "Move up and cancel all requested operations on buffer on line above." (interactive) diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el index 00b029d..2757feb 100644 --- a/lisp/emacs-lisp/tabulated-list.el +++ b/lisp/emacs-lisp/tabulated-list.el @@ -257,6 +257,12 @@ tabulated-list-print-fake-header (make-overlay (point-min) (point)))) (overlay-put tabulated-list--header-overlay 'face 'underline)))) +(defsubst tabulated-list-header-overlay-p (&optional pos) + "Return non-nil if there is a fake header. +Optional arg POS is a buffer position where to look for a fake header; +defaults to `point-min'." + (overlays-at (or pos (point-min)))) + (defun tabulated-list-revert (&rest ignored) "The `revert-buffer-function' for `tabulated-list-mode'. It runs `tabulated-list-revert-hook', then calls `tabulated-list-print'." -- 2.10.1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; In GNU Emacs 26.0.50.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.2) of 2016-11-05 built on calancha-pc Repository revision: f95bf3cd1f55cf8f99b88c7318c21c967b11dfd1 From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 05 06:16:51 2016 Received: (at control) by debbugs.gnu.org; 5 Nov 2016 10:16:51 +0000 Received: from localhost ([127.0.0.1]:45420 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c2y1q-0005VN-Uv for submit@debbugs.gnu.org; Sat, 05 Nov 2016 06:16:51 -0400 Received: from mail-pf0-f172.google.com ([209.85.192.172]:33994) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c2y1p-0005VA-Ql for control@debbugs.gnu.org; Sat, 05 Nov 2016 06:16:50 -0400 Received: by mail-pf0-f172.google.com with SMTP id n85so65696820pfi.1 for ; Sat, 05 Nov 2016 03:16:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:date:message-id:mime-version; bh=KzPuKyIyu+iDsGKvOPE3jFYxTmpwuWfVPwCNRR4nMzQ=; b=OJj1tQ8gDqoSgixWITPmFQ7JaH7t+LQeAddgiZzRA8dCw20Kd4G2ez2x+ApCv5mlYU tGFg5JIlluUJS+dDklLsxb27lZPynZawKf4RXUj7JF94BsiHB4TOZtNAuUkwpCPIKQq9 HHRQVBd0R4UrrhMjU3UsrUXnMDYqv+OGibuz96bGzDeJyBxLZPR/LgxkhJVuCf1KDMhv FfxWRhxf6rbcDt4h3gBoo5tbvAvZyCd2b0kUB7QO3JllxHF5IT1rasVNsP35bkAS/IEB geY5dbeZgR8kTopzkxtdd1QESYrrhMih6WASUeTIG4vlwYC91Xl1CUV6UNlZ6qs1WLCw dkqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:date:message-id:mime-version; bh=KzPuKyIyu+iDsGKvOPE3jFYxTmpwuWfVPwCNRR4nMzQ=; b=lb3ZdgYF4zhcC0xu5L1E7GlvE1746VVSgmnCW9U8TrpbLSfNrVVCrzodKtEj2nOtOI +0Aa/b52Flb1bFsYUdetH/0mTfJq7y4/kFYGEzWtu5tfBjLxblJvHgoW4Y8dFcZlyFmt +zo/s8h6oiAnW37FHAsM7kKlXYujqfzVWYnUqeT8qSRtpYGeVBqtgy9pfJ+kCD/HvvTn bDzpap+Hzc9loPvuFE2kv9kl4uDUyzhuWRo8HYqePMKnD5Gl6LYwXBrknpfNcOrXwO9h CzhSYScdYewjrBmOVkc+hVEt0T1MceIhGJRG/pUuJqnFnpLMHfi90nxMbkJcYDxp4mDX HVmg== X-Gm-Message-State: ABUngvdg010nr+O1iPKciOcJ/I38mgUqjSiyfxRAqas2Q8F/U36sre7C1xJRPZjPLUSVGw== X-Received: by 10.99.113.14 with SMTP id m14mr28434273pgc.57.1478340445585; Sat, 05 Nov 2016 03:07:25 -0700 (PDT) Received: from calancha-pc (57.92.100.220.dy.bbexcite.jp. [220.100.92.57]) by smtp.gmail.com with ESMTPSA id c142sm23862573pfb.23.2016.11.05.03.07.24 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 05 Nov 2016 03:07:25 -0700 (PDT) From: Tino Calancha To: control@debbugs.gnu.org Date: Sat, 05 Nov 2016 19:07:22 +0900 Message-ID: <87y40yme91.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 2.0 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: severity 24880 wishlist [...] Content analysis details: (2.0 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (tino.calancha[at]gmail.com) -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [209.85.192.172 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [209.85.192.172 listed in wl.mailspike.net] 0.0 T_DKIM_INVALID DKIM-Signature header exists but is not valid 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 2.0 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: severity 24880 wishlist [...] Content analysis details: (2.0 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [209.85.192.172 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [209.85.192.172 listed in wl.mailspike.net] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (tino.calancha[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record 0.0 T_DKIM_INVALID DKIM-Signature header exists but is not valid 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject 0.0 TVD_SPACE_RATIO No description available. severity 24880 wishlist From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 05 06:17:11 2016 Received: (at 24880) by debbugs.gnu.org; 5 Nov 2016 10:17:11 +0000 Received: from localhost ([127.0.0.1]:45425 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c2y2B-0005WX-6Q for submit@debbugs.gnu.org; Sat, 05 Nov 2016 06:17:11 -0400 Received: from eggs.gnu.org ([208.118.235.92]:51697) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c2y29-0005WK-Cp for 24880@debbugs.gnu.org; Sat, 05 Nov 2016 06:17:09 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c2y20-0007bP-TA for 24880@debbugs.gnu.org; Sat, 05 Nov 2016 06:17:04 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_40,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:55012) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c2y20-0007bI-Pd; Sat, 05 Nov 2016 06:17:00 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3434 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1c2y1z-0007BD-Vb; Sat, 05 Nov 2016 06:17:00 -0400 Date: Sat, 05 Nov 2016 12:17:25 +0200 Message-Id: <83a8dejkne.fsf@gnu.org> From: Eli Zaretskii To: Tino Calancha In-reply-to: <871syqnsyo.fsf@gmail.com> (message from Tino Calancha on Sat, 05 Nov 2016 19:04:15 +0900) Subject: Re: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers References: <871syqnsyo.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -7.3 (-------) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -7.3 (-------) > From: Tino Calancha > Date: Sat, 05 Nov 2016 19:04:15 +0900 > > I miss in this package a command to unmark all buffers bound to 'U'. > How about the following? No objections from me, but please add suitable changes to NEWS and the user manual. Also, wrt this: > * lisp/buff-menu.el (Buffer-menu-unmark-all): > New command; cancel all requested operations on buffers. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ I'd suggest to say "remove all flags from all the lines" instead, as it describes better what is being done. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Sun Nov 06 07:21:44 2016 Received: (at 24880) by debbugs.gnu.org; 6 Nov 2016 12:21:44 +0000 Received: from localhost ([127.0.0.1]:46473 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c3MSG-0006xH-1U for submit@debbugs.gnu.org; Sun, 06 Nov 2016 07:21:44 -0500 Received: from mail-pf0-f195.google.com ([209.85.192.195]:34016) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c3MSE-0006wz-3V for 24880@debbugs.gnu.org; Sun, 06 Nov 2016 07:21:42 -0500 Received: by mail-pf0-f195.google.com with SMTP id y68so13271471pfb.1 for <24880@debbugs.gnu.org>; Sun, 06 Nov 2016 04:21:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:references:cc:date:in-reply-to:message-id :user-agent:mime-version; bh=29a32I8yQjQHtXVVTaQfu518cAtHS4IEqX0pQXjDkno=; b=sM0ydtISF+nsC0k9O9s2hCv4p6ZYDdViyip1iuJSEKwVhcPNj6voomgbfquuaL7v5d rsHiyCkgfvXCb3qv+/JwglmZNPWQaAx2t0goHt9ZfapK7WsewOWxLP21qQB2mI1r7Lg5 zFQdbnIJ2cmh3dXqj80poP1zuVJWOE9aAvop4B+hJydzRC819jA3aJ2Rq5klS90AVNAu BIzcBUFo6RWHBhWHFGK2htw+UyGuHfQMVWhaQFnYqeRq6Sqi/HR7VkMaG7zg+TgTTadT gmsW6d/j6Lqr55/qVWsh5H5okHO6xCLV6D8sNqPi2UsFsgDgNQzZTb0Wg1baeW1ZNvXs JNUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:references:cc:date:in-reply-to :message-id:user-agent:mime-version; bh=29a32I8yQjQHtXVVTaQfu518cAtHS4IEqX0pQXjDkno=; b=CwxhjnPqJgE6edID8Ull98n78R2b2xJfE0nDAi14E3K/6x7//YayVjdmrI6PJpZQaP ftu4RFFIgbpkKbcMIjbTZhCVDaVOOpyAGK/dLXGtc6Sb/X3zUBrmSsulp6EgD9Y+Agsq /H7KRg7EMwF4eJq/yZROwI8ciWM5k19GhjwqeFwGAIxVfIRJGtlNILsZJRw1iRt/JLz/ IatRuSTUnso5o+r7RBgwFKYRUwukaWI7WyAQhPNQxkzDWud5c4bzyfvKhx8GCDywAWP7 ULymFI3Y1wWzwFO3rL0G/H06xgoRfFobqmuSRhwQFXtrGpL9OwUsgHUP11fk5ZHt+Bz8 0fQA== X-Gm-Message-State: ABUngvfVC+OfQ9b7Z14kACwMGxrMuAb37wRFe+OR7cW39KloDub6SZKoshcdLhqrHMHpbg== X-Received: by 10.99.173.3 with SMTP id g3mr3187547pgf.12.1478434896133; Sun, 06 Nov 2016 04:21:36 -0800 (PST) Received: from calancha-pc ([240f:6e:c00e:1:6875:2e94:598b:96cb]) by smtp.gmail.com with ESMTPSA id 123sm32933572pfe.41.2016.11.06.04.21.33 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 06 Nov 2016 04:21:35 -0800 (PST) From: Tino Calancha To: Eli Zaretskii Subject: Re: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers References: <871syqnsyo.fsf@gmail.com> <83a8dejkne.fsf@gnu.org> Date: Sun, 06 Nov 2016 21:21:29 +0900 In-Reply-To: <83a8dejkne.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 05 Nov 2016 12:17:25 +0200") Message-ID: <87eg2ox0hi.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.9 (/) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org, Tino Calancha X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.9 (/) Eli Zaretskii writes: >> From: Tino Calancha >> Date: Sat, 05 Nov 2016 19:04:15 +0900 >> >> I miss in this package a command to unmark all buffers bound to 'U'. >> How about the following? > > No objections from me, but please add suitable changes to NEWS and the > user manual. > > Also, wrt this: > >> * lisp/buff-menu.el (Buffer-menu-unmark-all): >> New command; cancel all requested operations on buffers. > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > I'd suggest to say "remove all flags from all the lines" instead, as > it describes better what is being done. Done. Thank you! I realized that `bs.el' and `ebuff-menu.el' can also benefit for a command unmarking all; so i have included them in the patch. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; >From a84c5962f1300c8d858087ebf8fe356beb7586fb Mon Sep 17 00:00:00 2001 From: Tino Calancha Date: Sun, 6 Nov 2016 21:18:17 +0900 Subject: [PATCH] buff-menu: Add command to unmark all buffers Bind 'U' in buff-menu, bs and electric-buff-menu to commands to unmark all buffers (Bug#24880). * lisp/emacs-lisp/tabulated-list.el (tabulated-list-header-overlay-p): New predicate; return non-nil if tabulated-list has a fake header. * lisp/buff-menu.el (Buffer-menu-unmark-all): New command; remove all flags from all the lines. Bind it to 'U'. (Buffer-menu-mode-map): Update menus. (Buffer-menu-mode): Update mode doc. * lisp/bs.el (bs-unmark-all, bs-unmark-previous): New commands. (bs-mode-map): Bind them to 'U' and '' respectively. (bs-mode): Update mode doc. * lisp/ebuff-menu.el (electric-buffer-menu-mode-map): Bind Buffer-menu-unmark-all to 'U'. (electric-buffer-list): Update mode doc. * doc/emacs/buffers.texi (Several Buffers): Mention Buffer-menu-unmark-all. ; * etc/NEWS: Add an entry per each new feature. --- doc/emacs/buffers.texi | 6 ++++++ etc/NEWS | 16 ++++++++++++++++ lisp/bs.el | 33 +++++++++++++++++++++++++++++++++ lisp/buff-menu.el | 17 +++++++++++++++++ lisp/ebuff-menu.el | 2 ++ lisp/emacs-lisp/tabulated-list.el | 6 ++++++ 6 files changed, 80 insertions(+) diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi index 2eb837f..beb23df 100644 --- a/doc/emacs/buffers.texi +++ b/doc/emacs/buffers.texi @@ -413,6 +413,12 @@ Several Buffers (@code{Buffer-menu-backup-unmark}). @end table +@item U +@findex Buffer-menu-unmark-all +@kindex U @r{(Buffer Menu)} +Remove all flags from all the lines +(@code{Buffer-menu-unmark-all}). + @noindent The commands for adding or removing flags, @kbd{d}, @kbd{C-d}, @kbd{s} and @kbd{u}, all accept a numeric argument as a repeat count. diff --git a/etc/NEWS b/etc/NEWS index 4bf5332..6c9bca0 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -259,6 +259,22 @@ the file's actual content before prompting the user. * Changes in Specialized Modes and Packages in Emacs 26.1 +** Electric-Buffer-menu + +--- +*** Key 'U' is bound to 'Buffer-menu-unmark-all'. + +** bs + +--- +*** Two new commands 'bs-unmark-all', bound to 'U', and +'bs-unmark-previous', bound to . + +** Buffer-menu + +--- +*** A new command 'Buffer-menu-unmark-all'; bound to 'U'. + ** Ibuffer --- diff --git a/lisp/bs.el b/lisp/bs.el index 8351169..f5f4436 100644 --- a/lisp/bs.el +++ b/lisp/bs.el @@ -491,6 +491,8 @@ bs-mode-map (define-key map "t" 'bs-visit-tags-table) (define-key map "m" 'bs-mark-current) (define-key map "u" 'bs-unmark-current) + (define-key map "U" 'bs-unmark-all) + (define-key map "\177" 'bs-unmark-previous) (define-key map ">" 'scroll-right) (define-key map "<" 'scroll-left) (define-key map "?" 'bs-help) @@ -635,6 +637,8 @@ bs-mode \\[bs-clear-modified] -- clear modified-flag on that buffer. \\[bs-mark-current] -- mark current line's buffer to be displayed. \\[bs-unmark-current] -- unmark current line's buffer to be displayed. +\\[bs-unmark-all] -- unmark all buffer lines. +\\[bs-unmark-previous] -- unmark previous line's buffer to be displayed. \\[bs-show-sorted] -- display buffer list sorted by next sort aspect. \\[bs-set-configuration-and-refresh] -- ask user for a configuration and \ apply selected configuration. @@ -882,6 +886,35 @@ bs-unmark-current (lambda (buf) (setq bs--marked-buffers (delq buf bs--marked-buffers))))) +(defun bs-unmark-previous (count) + "Unmark previous COUNT buffers. +Move cursor vertically up COUNT lines." + (interactive "p") + (when (natnump count) + (setq count (- count))) + (forward-line count) + (save-excursion + (bs-unmark-current (- count)))) + +(defun bs-unmark-all () + "Unmark all buffers." + (interactive) + (let ((marked (string-to-char bs-string-marked)) + (current (string-to-char bs-string-current)) + (marked-cur (string-to-char bs-string-current-marked)) + (unmarked (string-to-char bs-string-show-normally)) + (inhibit-read-only t)) + (save-excursion + (goto-char (point-min)) + (forward-line 2) + (while (not (eobp)) + (if (eq (char-after) marked) + (subst-char-in-region (point) (1+ (point)) marked unmarked) + (when (eq (char-after) marked-cur) + (subst-char-in-region (point) (1+ (point)) marked-cur current))) + (forward-line 1)) + (setq bs--marked-buffers nil)))) + (defun bs--show-config-message (what) "Show message indicating the new showing status WHAT. WHAT is a value of nil, `never', or `always'." diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el index 4742628..87aab71 100644 --- a/lisp/buff-menu.el +++ b/lisp/buff-menu.el @@ -121,6 +121,7 @@ Buffer-menu-mode-map (define-key map "\177" 'Buffer-menu-backup-unmark) (define-key map "~" 'Buffer-menu-not-modified) (define-key map "u" 'Buffer-menu-unmark) + (define-key map "U" 'Buffer-menu-unmark-all) (define-key map "m" 'Buffer-menu-mark) (define-key map "t" 'Buffer-menu-visit-tags-table) (define-key map "%" 'Buffer-menu-toggle-read-only) @@ -197,6 +198,9 @@ Buffer-menu-mode-map (bindings--define-key menu-map [umk] '(menu-item "Unmark" Buffer-menu-unmark :help "Cancel all requested operations on buffer on this line and move down")) + (bindings--define-key menu-map [umka] + '(menu-item "Unmark all" Buffer-menu-unmark-all + :help "Cancel all requested operations on buffers")) (bindings--define-key menu-map [mk] '(menu-item "Mark" Buffer-menu-mark :help "Mark buffer on this line for being displayed by v command")) @@ -239,6 +243,7 @@ Buffer-menu-mode \\[Buffer-menu-execute] Delete or save marked buffers. \\[Buffer-menu-unmark] Remove all marks from current line. With prefix argument, also move up one line. +\\[Buffer-menu-unmark-all] Remove all marks from all lines. \\[Buffer-menu-backup-unmark] Back up a line and remove marks. \\[Buffer-menu-toggle-read-only] Toggle read-only status of buffer on this line. \\[revert-buffer] Update the list of buffers. @@ -356,6 +361,18 @@ Buffer-menu-unmark (Buffer-menu--unmark) (forward-line (if backup -1 1))) +(defun Buffer-menu-unmark-all () + "Cancel all requested operations on buffers." + (interactive) + (save-excursion + (goto-char (point-min)) + (when (tabulated-list-header-overlay-p) + (forward-line)) + (while (not (eobp)) + (unless (string= "." (aref (tabulated-list-get-entry) 0)) + (tabulated-list-set-col 0 " " t)) + (forward-line)))) + (defun Buffer-menu-backup-unmark () "Move up and cancel all requested operations on buffer on line above." (interactive) diff --git a/lisp/ebuff-menu.el b/lisp/ebuff-menu.el index 5536f94..3b8e12d 100644 --- a/lisp/ebuff-menu.el +++ b/lisp/ebuff-menu.el @@ -55,6 +55,7 @@ electric-buffer-menu-mode-map (define-key map "\177" 'Buffer-menu-backup-unmark) (define-key map "~" 'Buffer-menu-not-modified) (define-key map "u" 'Buffer-menu-unmark) + (define-key map "U" 'Buffer-menu-unmark-all) (let ((i ?0)) (while (<= i ?9) (define-key map (char-to-string i) 'digit-argument) @@ -114,6 +115,7 @@ electric-buffer-list \\[Buffer-menu-save] -- mark that buffer to be saved. \\[Buffer-menu-delete] or \\[Buffer-menu-delete-backwards] -- mark that buffer to be deleted. \\[Buffer-menu-unmark] -- remove all kinds of marks from current line. +\\[Buffer-menu-unmark-all] -- remove all kinds of marks from all lines. \\[Electric-buffer-menu-mode-view-buffer] -- view buffer, returning when done. \\[Buffer-menu-backup-unmark] -- back up a line and remove marks." (interactive "P") diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el index 00b029d..2757feb 100644 --- a/lisp/emacs-lisp/tabulated-list.el +++ b/lisp/emacs-lisp/tabulated-list.el @@ -257,6 +257,12 @@ tabulated-list-print-fake-header (make-overlay (point-min) (point)))) (overlay-put tabulated-list--header-overlay 'face 'underline)))) +(defsubst tabulated-list-header-overlay-p (&optional pos) + "Return non-nil if there is a fake header. +Optional arg POS is a buffer position where to look for a fake header; +defaults to `point-min'." + (overlays-at (or pos (point-min)))) + (defun tabulated-list-revert (&rest ignored) "The `revert-buffer-function' for `tabulated-list-mode'. It runs `tabulated-list-revert-hook', then calls `tabulated-list-print'." -- 2.10.1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; In GNU Emacs 26.0.50.2 (x86_64-pc-linux-gnu, GTK+ Version 3.22.2) of 2016-11-05 built on calancha-pc Repository revision: 3424c27abb7c8ea64c32eaf54cf53fc58323e5ce From debbugs-submit-bounces@debbugs.gnu.org Sun Nov 06 12:22:36 2016 Received: (at 24880) by debbugs.gnu.org; 6 Nov 2016 17:22:36 +0000 Received: from localhost ([127.0.0.1]:47094 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c3R9Q-00014C-JH for submit@debbugs.gnu.org; Sun, 06 Nov 2016 12:22:36 -0500 Received: from aserp1040.oracle.com ([141.146.126.69]:21279) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c3R9P-00013t-C7 for 24880@debbugs.gnu.org; Sun, 06 Nov 2016 12:22:35 -0500 Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id uA6HMS0u008226 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 6 Nov 2016 17:22:28 GMT Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserv0022.oracle.com (8.14.4/8.13.8) with ESMTP id uA6HMRcP018274 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 6 Nov 2016 17:22:28 GMT Received: from abhmp0009.oracle.com (abhmp0009.oracle.com [141.146.116.15]) by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id uA6HMQ2e022546; Sun, 6 Nov 2016 17:22:26 GMT MIME-Version: 1.0 Message-ID: Date: Sun, 6 Nov 2016 09:22:25 -0800 (PST) From: Drew Adams To: Tino Calancha , Eli Zaretskii Subject: RE: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers References: <871syqnsyo.fsf@gmail.com> <83a8dejkne.fsf@gnu.org> <87eg2ox0hi.fsf@gmail.com> In-Reply-To: <87eg2ox0hi.fsf@gmail.com> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 12.0.6753.5000 (x86)] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Source-IP: aserv0022.oracle.com [141.146.126.234] X-Spam-Score: -5.2 (-----) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.2 (-----) It would be far better, IMHO, to take the approach used by Dired for this.=20 In Dired, `M-DEL' (or `* ?') unmarks a specific mark (e.g. D). Or if it is followed directly by `RET', it unmarks all marks. This is relevant and useful behavior for all contexts, such as `*Buffer List*' (aka Buffer Menu), that let you mark things in more than one way. Users should be able to use `M-DEL' to selectively remove any one of the marks (D, S, >,...) _or_ all marks together (via `M-DEL RET'). The same approach should be taken for other, similar buffers that list objects that can be marked in more than one way, whether the objects be buffers (e.g. Ibuffer), packages, files, bookmarks, or whatever else. Besides giving users much more control, this provides a consistent UI. Users will then use `M-DEL RET' as the standard way to completely unmark an object. This is the approach I took with Bookmark+, for instance. It takes a tiny bit more work to implement, but the result is far more useful for users. (Just one opinion.) From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 07 13:38:04 2016 Received: (at 24880) by debbugs.gnu.org; 7 Nov 2016 18:38:04 +0000 Received: from localhost ([127.0.0.1]:48665 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c3oo0-0003Q4-Jx for submit@debbugs.gnu.org; Mon, 07 Nov 2016 13:38:04 -0500 Received: from eggs.gnu.org ([208.118.235.92]:47682) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c3onz-0003PU-RF for 24880@debbugs.gnu.org; Mon, 07 Nov 2016 13:38:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c3onr-0007Uf-LS for 24880@debbugs.gnu.org; Mon, 07 Nov 2016 13:37:58 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_20,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:40619) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c3onr-0007UU-Hl; Mon, 07 Nov 2016 13:37:55 -0500 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2195 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1c3ono-0007jq-N8; Mon, 07 Nov 2016 13:37:55 -0500 Date: Mon, 07 Nov 2016 20:38:12 +0200 Message-Id: <83vavzgmp7.fsf@gnu.org> From: Eli Zaretskii To: Tino Calancha In-reply-to: <87eg2ox0hi.fsf@gmail.com> (message from Tino Calancha on Sun, 06 Nov 2016 21:21:29 +0900) Subject: Re: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers References: <871syqnsyo.fsf@gmail.com> <83a8dejkne.fsf@gnu.org> <87eg2ox0hi.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -7.9 (-------) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -7.9 (-------) > From: Tino Calancha > CC: 24880@debbugs.gnu.org, Tino Calancha > Date: Sun, 06 Nov 2016 21:21:29 +0900 > > diff --git a/etc/NEWS b/etc/NEWS > index 4bf5332..6c9bca0 100644 > --- a/etc/NEWS > +++ b/etc/NEWS > @@ -259,6 +259,22 @@ the file's actual content before prompting the user. > > * Changes in Specialized Modes and Packages in Emacs 26.1 > > +** Electric-Buffer-menu > + > +--- > +*** Key 'U' is bound to 'Buffer-menu-unmark-all'. That "---" should actually be "+++", since you have added the documentation to the manual. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 14 05:29:26 2016 Received: (at 24880) by debbugs.gnu.org; 14 Nov 2016 10:29:26 +0000 Received: from localhost ([127.0.0.1]:56385 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c6EVy-0003N3-6i for submit@debbugs.gnu.org; Mon, 14 Nov 2016 05:29:26 -0500 Received: from mail-pf0-f194.google.com ([209.85.192.194]:36599) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c6EVw-0003Mq-OL for 24880@debbugs.gnu.org; Mon, 14 Nov 2016 05:29:25 -0500 Received: by mail-pf0-f194.google.com with SMTP id c4so3430469pfb.3 for <24880@debbugs.gnu.org>; Mon, 14 Nov 2016 02:29:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:date:to:cc:subject:in-reply-to:message-id:references :user-agent:mime-version; bh=C7s6SYMBgkgp88wAjiQTsiwA4cdoURy6qvDG46zu5hs=; b=DJgc8G799vxaiDhHeoDkTI9Zu9wSzl+5ReHPe0JvjTvitzTozWnQAfR0iYnkLg5eA4 4L0SKOmHAFTEyllLwQIwz2LNdWk68HZtT6mOglZrZpZMRZvBMZEFJaxk03kFcIQKKN/6 uMV7rMQwCAZeLTEO4qcAsZ9v+DVlds6cQ9dRPqFnYq4PCMNNZbXZAxmkEEfUKzn2QJM3 kYKurM7RoeXnisKlpv/qQWYlw5R4siyTv6UpC4Mb0skHoV5vr4JHW5tLgqRdgvf/PDgi tGykc/tj8an4cmfM2oCffN3h5HIeMR5dzwvWgsdXS2jtlKruAlBYpZh5vtpfhOLNwlzn yytw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:date:to:cc:subject:in-reply-to:message-id :references:user-agent:mime-version; bh=C7s6SYMBgkgp88wAjiQTsiwA4cdoURy6qvDG46zu5hs=; b=OClsghMimOErPLiYGCKBufvrL8+qm9eoj7x46O1aRDBHdurAHDC8S5yTJ6U3jkev+C 3mXSrWjH9liDnfFfJgoVLrwQs1lLjvuFcY98dmqbUmBjBbYvgbJAL5o4FpMStLiE85YL zOnJP0hw0t+f0JgmqAic40kxilaOUjhWdi92VLAOmJ/g+k2A76MdMYPlfr1x1spLWCer 9BvhL02SdOxG/XLM/hrkJe0ff8UPuLVy1Km2DA0EkGS3VnFxiO+nNXwFI02njwQyD5t3 v6i/p7Tnp3Jg497ykYqRA+at4ZfxvkcbA0mMlmJoemzANvY0FDDNa/Tjgt8eo8queWOV rKSg== X-Gm-Message-State: ABUngvd9ZVErDbYG2r7czRqiMjWRA36iHbHcXaZHu656k/EVhEvxHBJGz76HmIwXOONYVw== X-Received: by 10.98.149.81 with SMTP id p78mr34589229pfd.95.1479119358942; Mon, 14 Nov 2016 02:29:18 -0800 (PST) Received: from calancha-pc (57.92.100.220.dy.bbexcite.jp. [220.100.92.57]) by smtp.gmail.com with ESMTPSA id 64sm34222953pfu.17.2016.11.14.02.29.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 14 Nov 2016 02:29:18 -0800 (PST) From: Tino Calancha X-Google-Original-From: Tino Calancha Date: Mon, 14 Nov 2016 19:29:14 +0900 (JST) X-X-Sender: calancha@calancha-pc To: Drew Adams Subject: RE: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers In-Reply-To: Message-ID: References: <871syqnsyo.fsf@gmail.com> <83a8dejkne.fsf@gnu.org> <87eg2ox0hi.fsf@gmail.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org, Eli Zaretskii , Tino Calancha X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) On Sun, 6 Nov 2016, Drew Adams wrote: > It would be far better, IMHO, to take the approach used by > Dired for this. > > In Dired, `M-DEL' (or `* ?') unmarks a specific mark (e.g. D). > Or if it is followed directly by `RET', it unmarks all marks. > > This is relevant and useful behavior for all contexts, such > as `*Buffer List*' (aka Buffer Menu), that let you mark > things in more than one way. > > Users should be able to use `M-DEL' to selectively remove > any one of the marks (D, S, >,...) _or_ all marks together > (via `M-DEL RET'). > > The same approach should be taken for other, similar > buffers that list objects that can be marked in more than > one way, whether the objects be buffers (e.g. Ibuffer), > packages, files, bookmarks, or whatever else. > > Besides giving users much more control, this provides a > consistent UI. Users will then use `M-DEL RET' as the > standard way to completely unmark an object. > > This is the approach I took with Bookmark+, for instance. > It takes a tiny bit more work to implement, but the result > is far more useful for users. Thank you. I totally agree with your suggestion. I have added a command `Buffer-menu-unmark-all-buffers' which remove a specific flag. I bind it to `M-DEL'. That is for buff-menu.el and ebuff-menu.el. In bs.el i haven't added such command because this file does support just one flag: if you push 'd' it doesn't flag for deletion, it just delete the buffer at point. This is the amended patch: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; >From 7a4d4bdfc8a31ff9e4607081cea294c4aa101839 Mon Sep 17 00:00:00 2001 From: Tino Calancha Date: Mon, 14 Nov 2016 19:11:40 +0900 Subject: [PATCH] buff-menu: Add command to unmark all buffers Bind 'U' in buff-menu, bs and electric-buff-menu to commands to unmark all buffers (Bug#24880). * lisp/emacs-lisp/tabulated-list.el (tabulated-list-header-overlay-p): New predicate; return non-nil if tabulated-list has a fake header. * lisp/buff-menu.el (Buffer-menu-unmark-all-buffers): New command; remove all flags that use a particular mark from all the lines. Bind it to 'M-DEL'. (Buffer-menu-unmark-all): New command; remove all flags from all the lines. Bind it to 'U'. (Buffer-menu-marker-char, Buffer-menu-del-char): New variables. (Buffer-menu-delete, Buffer-menu-mark): Use them. (Buffer-menu-mode-map): Update menus. (Buffer-menu-mode): Update mode doc. * lisp/bs.el (bs-unmark-all, bs-unmark-previous): New commands. (bs-mode-map): Bind them to 'U' and '' respectively. (bs-mode): Update mode doc. * lisp/ebuff-menu.el (electric-buffer-menu-mode-map): Bind Buffer-menu-unmark-all to 'U' and Buffer-menu-unmark-all-buffers to 'M-DEL'. (electric-buffer-list): Update mode doc. * doc/emacs/buffers.texi (Several Buffers): Mention Buffer-menu-unmark-all and Buffer-menu-unmark-all-buffers. ; * etc/NEWS: Add an entry per each new feature. --- doc/emacs/buffers.texi | 12 +++++++++++ etc/NEWS | 18 +++++++++++++++++ lisp/bs.el | 33 ++++++++++++++++++++++++++++++ lisp/buff-menu.el | 42 ++++++++++++++++++++++++++++++++++++--- lisp/ebuff-menu.el | 3 +++ lisp/emacs-lisp/tabulated-list.el | 6 ++++++ 6 files changed, 111 insertions(+), 3 deletions(-) diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi index 2eb837f..561289a 100644 --- a/doc/emacs/buffers.texi +++ b/doc/emacs/buffers.texi @@ -411,6 +411,18 @@ Several Buffers @kindex DEL @r{(Buffer Menu)} Move to the previous line and remove all flags on that line (@code{Buffer-menu-backup-unmark}). + +@item M-@key{DEL} @var{markchar} +@findex Buffer-menu-unmark-all-buffers +@kindex M-DEL @r{(Buffer Menu)} +Remove all flags that use the character @var{markchar} from all lines +(@code{Buffer-menu-unmark-all-buffers}). + +@item U +@findex Buffer-menu-unmark-all +@kindex U @r{(Buffer Menu)} +Remove all flags from all the lines +(@code{Buffer-menu-unmark-all}). @end table @noindent diff --git a/etc/NEWS b/etc/NEWS index 03c4990..037dd0d 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -269,6 +269,24 @@ the file's actual content before prompting the user. * Changes in Specialized Modes and Packages in Emacs 26.1 +** Electric-Buffer-menu + ++++ +*** Key 'U' is bound to 'Buffer-menu-unmark-all' and key 'M-DEL' is +bound to 'Buffer-menu-unmark-all-buffers'. + +** bs + +--- +*** Two new commands 'bs-unmark-all', bound to 'U', and +'bs-unmark-previous', bound to . + +** Buffer-menu + ++++ +*** Two new commands 'Buffer-menu-unmark-all', bound to 'U' and +'Buffer-menu-unmark-all-buffers', bound to 'M-DEL'. + ** Ibuffer --- diff --git a/lisp/bs.el b/lisp/bs.el index 8351169..f5f4436 100644 --- a/lisp/bs.el +++ b/lisp/bs.el @@ -491,6 +491,8 @@ bs-mode-map (define-key map "t" 'bs-visit-tags-table) (define-key map "m" 'bs-mark-current) (define-key map "u" 'bs-unmark-current) + (define-key map "U" 'bs-unmark-all) + (define-key map "\177" 'bs-unmark-previous) (define-key map ">" 'scroll-right) (define-key map "<" 'scroll-left) (define-key map "?" 'bs-help) @@ -635,6 +637,8 @@ bs-mode \\[bs-clear-modified] -- clear modified-flag on that buffer. \\[bs-mark-current] -- mark current line's buffer to be displayed. \\[bs-unmark-current] -- unmark current line's buffer to be displayed. +\\[bs-unmark-all] -- unmark all buffer lines. +\\[bs-unmark-previous] -- unmark previous line's buffer to be displayed. \\[bs-show-sorted] -- display buffer list sorted by next sort aspect. \\[bs-set-configuration-and-refresh] -- ask user for a configuration and \ apply selected configuration. @@ -882,6 +886,35 @@ bs-unmark-current (lambda (buf) (setq bs--marked-buffers (delq buf bs--marked-buffers))))) +(defun bs-unmark-previous (count) + "Unmark previous COUNT buffers. +Move cursor vertically up COUNT lines." + (interactive "p") + (when (natnump count) + (setq count (- count))) + (forward-line count) + (save-excursion + (bs-unmark-current (- count)))) + +(defun bs-unmark-all () + "Unmark all buffers." + (interactive) + (let ((marked (string-to-char bs-string-marked)) + (current (string-to-char bs-string-current)) + (marked-cur (string-to-char bs-string-current-marked)) + (unmarked (string-to-char bs-string-show-normally)) + (inhibit-read-only t)) + (save-excursion + (goto-char (point-min)) + (forward-line 2) + (while (not (eobp)) + (if (eq (char-after) marked) + (subst-char-in-region (point) (1+ (point)) marked unmarked) + (when (eq (char-after) marked-cur) + (subst-char-in-region (point) (1+ (point)) marked-cur current))) + (forward-line 1)) + (setq bs--marked-buffers nil)))) + (defun bs--show-config-message (what) "Show message indicating the new showing status WHAT. WHAT is a value of nil, `never', or `always'." diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el index 4742628..42fd032 100644 --- a/lisp/buff-menu.el +++ b/lisp/buff-menu.el @@ -37,6 +37,12 @@ Buffer-menu :group 'tools :group 'convenience) +(defvar Buffer-menu-marker-char ?> + "The mark character for marked buffers.") + +(defvar Buffer-menu-del-char ?D + "Character used to flag buffers for deletion.") + (defcustom Buffer-menu-use-header-line t "If non-nil, use the header line to display Buffer Menu column titles." :type 'boolean @@ -121,6 +127,8 @@ Buffer-menu-mode-map (define-key map "\177" 'Buffer-menu-backup-unmark) (define-key map "~" 'Buffer-menu-not-modified) (define-key map "u" 'Buffer-menu-unmark) + (define-key map "\M-\C-?" 'Buffer-menu-unmark-all-buffers) + (define-key map "U" 'Buffer-menu-unmark-all) (define-key map "m" 'Buffer-menu-mark) (define-key map "t" 'Buffer-menu-visit-tags-table) (define-key map "%" 'Buffer-menu-toggle-read-only) @@ -197,6 +205,12 @@ Buffer-menu-mode-map (bindings--define-key menu-map [umk] '(menu-item "Unmark" Buffer-menu-unmark :help "Cancel all requested operations on buffer on this line and move down")) + (bindings--define-key menu-map [umkab] + '(menu-item "Unmark all buffers with mark" Buffer-menu-unmark-all-buffers + :help "Cancel a requested operation on buffers")) + (bindings--define-key menu-map [umka] + '(menu-item "Unmark all" Buffer-menu-unmark-all + :help "Cancel all requested operations on buffers")) (bindings--define-key menu-map [mk] '(menu-item "Mark" Buffer-menu-mark :help "Mark buffer on this line for being displayed by v command")) @@ -239,6 +253,8 @@ Buffer-menu-mode \\[Buffer-menu-execute] Delete or save marked buffers. \\[Buffer-menu-unmark] Remove all marks from current line. With prefix argument, also move up one line. +\\[Buffer-menu-unmark-all-buffers] Remove a particular mark from all lines. +\\[Buffer-menu-unmark-all] Remove all marks from all lines. \\[Buffer-menu-backup-unmark] Back up a line and remove marks. \\[Buffer-menu-toggle-read-only] Toggle read-only status of buffer on this line. \\[revert-buffer] Update the list of buffers. @@ -346,7 +362,7 @@ Buffer-menu-mark "Mark the Buffer menu entry at point for later display. It will be displayed by the \\\\[Buffer-menu-select] command." (interactive) - (tabulated-list-set-col 0 ">" t) + (tabulated-list-set-col 0 (char-to-string Buffer-menu-marker-char) t) (forward-line)) (defun Buffer-menu-unmark (&optional backup) @@ -356,6 +372,26 @@ Buffer-menu-unmark (Buffer-menu--unmark) (forward-line (if backup -1 1))) +(defun Buffer-menu-unmark-all-buffers (mark) + "Cancel a requested operation on all buffers." + (interactive "cRemove marks (RET means all):") + (save-excursion + (goto-char (point-min)) + (when (tabulated-list-header-overlay-p) + (forward-line)) + (while (not (eobp)) + (let ((xmarks (list (aref (tabulated-list-get-entry) 0) + (aref (tabulated-list-get-entry) 2)))) + (when (or (char-equal mark ?\r) + (member (char-to-string mark) xmarks)) + (Buffer-menu--unmark))) + (forward-line)))) + +(defun Buffer-menu-unmark-all () + "Cancel all requested operations on buffers." + (interactive) + (Buffer-menu-unmark-all-buffers ?\r)) + (defun Buffer-menu-backup-unmark () "Move up and cancel all requested operations on buffer on line above." (interactive) @@ -382,12 +418,12 @@ Buffer-menu-delete (setq arg 1)) (while (> arg 0) (when (Buffer-menu-buffer) - (tabulated-list-set-col 0 "D" t)) + (tabulated-list-set-col 0 (char-to-string Buffer-menu-del-char) t)) (forward-line 1) (setq arg (1- arg))) (while (< arg 0) (when (Buffer-menu-buffer) - (tabulated-list-set-col 0 "D" t)) + (tabulated-list-set-col 0 (char-to-string Buffer-menu-del-char) t)) (forward-line -1) (setq arg (1+ arg)))) diff --git a/lisp/ebuff-menu.el b/lisp/ebuff-menu.el index 5536f94..48be32a 100644 --- a/lisp/ebuff-menu.el +++ b/lisp/ebuff-menu.el @@ -55,6 +55,8 @@ electric-buffer-menu-mode-map (define-key map "\177" 'Buffer-menu-backup-unmark) (define-key map "~" 'Buffer-menu-not-modified) (define-key map "u" 'Buffer-menu-unmark) + (define-key map "\M-\C-?" 'Buffer-menu-unmark-all-buffers) + (define-key map "U" 'Buffer-menu-unmark-all) (let ((i ?0)) (while (<= i ?9) (define-key map (char-to-string i) 'digit-argument) @@ -114,6 +116,7 @@ electric-buffer-list \\[Buffer-menu-save] -- mark that buffer to be saved. \\[Buffer-menu-delete] or \\[Buffer-menu-delete-backwards] -- mark that buffer to be deleted. \\[Buffer-menu-unmark] -- remove all kinds of marks from current line. +\\[Buffer-menu-unmark-all] -- remove all kinds of marks from all lines. \\[Electric-buffer-menu-mode-view-buffer] -- view buffer, returning when done. \\[Buffer-menu-backup-unmark] -- back up a line and remove marks." (interactive "P") diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el index cf297f1..9523d5e 100644 --- a/lisp/emacs-lisp/tabulated-list.el +++ b/lisp/emacs-lisp/tabulated-list.el @@ -259,6 +259,12 @@ tabulated-list-print-fake-header (make-overlay (point-min) (point)))) (overlay-put tabulated-list--header-overlay 'face 'underline)))) +(defsubst tabulated-list-header-overlay-p (&optional pos) + "Return non-nil if there is a fake header. +Optional arg POS is a buffer position where to look for a fake header; +defaults to `point-min'." + (overlays-at (or pos (point-min)))) + (defun tabulated-list-revert (&rest ignored) "The `revert-buffer-function' for `tabulated-list-mode'. It runs `tabulated-list-revert-hook', then calls `tabulated-list-print'." -- 2.10.2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; In GNU Emacs 26.0.50.2 (x86_64-pc-linux-gnu, GTK+ Version 3.22.2) of 2016-11-14 Repository revision: db43613307bb05d0f43d2d5649b5bb2f29876cee From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 15 11:03:49 2016 Received: (at 24880) by debbugs.gnu.org; 15 Nov 2016 16:03:49 +0000 Received: from localhost ([127.0.0.1]:58368 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c6gD7-0002Rc-0Q for submit@debbugs.gnu.org; Tue, 15 Nov 2016 11:03:49 -0500 Received: from eggs.gnu.org ([208.118.235.92]:36230) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c6gD5-0002RM-Os for 24880@debbugs.gnu.org; Tue, 15 Nov 2016 11:03:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c6gCx-0007Nc-I6 for 24880@debbugs.gnu.org; Tue, 15 Nov 2016 11:03:42 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:59698) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c6gCx-0007NV-Ej; Tue, 15 Nov 2016 11:03:39 -0500 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3161 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1c6gCw-0007l6-Pn; Tue, 15 Nov 2016 11:03:39 -0500 Date: Tue, 15 Nov 2016 18:03:35 +0200 Message-Id: <83h978hgrs.fsf@gnu.org> From: Eli Zaretskii To: Tino Calancha In-reply-to: (message from Tino Calancha on Mon, 14 Nov 2016 19:29:14 +0900 (JST)) Subject: Re: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers References: <871syqnsyo.fsf@gmail.com> <83a8dejkne.fsf@gnu.org> <87eg2ox0hi.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -7.8 (-------) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org, drew.adams@oracle.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -7.8 (-------) > From: Tino Calancha > Date: Mon, 14 Nov 2016 19:29:14 +0900 (JST) > cc: Tino Calancha , Eli Zaretskii , > 24880@debbugs.gnu.org > > This is the amended patch: Thanks, please see a few comments below. > +@item M-@key{DEL} @var{markchar} Please remove the @var{markchar} part, we don't usually show user input after the keys. > +(defun bs-unmark-previous (count) > + "Unmark previous COUNT buffers. > +Move cursor vertically up COUNT lines." > + (interactive "p") The doc string should describe the effect of the prefix argument in interactive usage. Also, we prefer to say "move point", not "move cursor", since that's what the commands do; cursor movement is then performed by redisplay as the side effect. > + (define-key map "\M-\C-?" 'Buffer-menu-unmark-all-buffers) I'd prefer to use "\M-\177" instead, for consistency with DEL. (Yes, I know that other packages use \C-?, but we must start somewhere.) > + (bindings--define-key menu-map [umkab] > + '(menu-item "Unmark all buffers with mark" Buffer-menu-unmark-all-buffers Labels of menu items which invoke commands that prompt user for input should end in "...", as an indication that user input will be required. Also, "unmark ... with mark" sounds confusing, and is also quite long. How about "Remove marks..."? > + :help "Cancel a requested operation on buffers")) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ This should say "all buffers", right? > +(defun Buffer-menu-unmark-all-buffers (mark) > + "Cancel a requested operation on all buffers." > + (interactive "cRemove marks (RET means all):") This doc string should mention the argument MARK, and should also tell that the in interactive use the user is prompted for the character. From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 16 05:09:32 2016 Received: (at 24880) by debbugs.gnu.org; 16 Nov 2016 10:09:32 +0000 Received: from localhost ([127.0.0.1]:58834 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c6x9o-0007Ee-75 for submit@debbugs.gnu.org; Wed, 16 Nov 2016 05:09:32 -0500 Received: from mail-pf0-f195.google.com ([209.85.192.195]:34171) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c6x9m-0007ER-5y for 24880@debbugs.gnu.org; Wed, 16 Nov 2016 05:09:30 -0500 Received: by mail-pf0-f195.google.com with SMTP id y68so9622016pfb.1 for <24880@debbugs.gnu.org>; Wed, 16 Nov 2016 02:09:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:date:to:cc:subject:in-reply-to:message-id:references :user-agent:mime-version; bh=lf6MAYdmX1uh370gKYoq0fBJaMNoRzuapI3Sx6zvR9w=; b=J6vDOfrnm0ThtteTB5QujAOhDOZC2sDr/gFnNO4uuU4fCKUrmWFJOoEg6SYJctu+4e YG/kCxhLDb7ce1+juUUY6yrUldpEfy+4yehj190vz4knvvQI4JSdFVwYP8smDREVHfD1 jsBJbcpNpbENGXoT2ewD3gw9mCXIrgrO+dtiYxfQzsjoG2lLteEylJmmtbiFj4F4yjQZ +WeWTdkRMrVdK5BFr0565yPssx2PJnj0zpHc7EPJTuHurtdqJieoJRmvMA4WF5YAmnkN WqUvmxwi+0uBQn+cHBIqVcPwIkBFGpyQfExDFrZT73GyGIFPyXRmEoyfV5PQRZnXOJUJ 5xFA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:date:to:cc:subject:in-reply-to:message-id :references:user-agent:mime-version; bh=lf6MAYdmX1uh370gKYoq0fBJaMNoRzuapI3Sx6zvR9w=; b=OOdaLE39BQfP5ZuZWqAjRm9lj/F9HwW2s/lwvpB1Nq67/S6dwbdjpi4uS9AUW+Uix2 3D7D4UGcZqTN8cC9xeePiYBCeU8hUz3VMIgBqiuDwgj2u7kwrkPpOPDlAaa24UZ3YtQ+ EyP9u4s61GhAAPSKlJI5z4CCWGfIM0IYhV8UwdcqmRidtp0IQwJhXgjUFyMGSiTPfnJ0 oxGu0H0SXgcFa0WZwXV6kN1qAxeGX+KJv+0+Th8du0ADES5lqw4ckYjIQrYKQh3VCdtu gwqOvLUV5KTefIYK7Qwo16pRHdYMplGxEnPCXgkkDWiI0IhlBGGJxbXzvtWW8c/+qGlk ZA+A== X-Gm-Message-State: ABUngvfFFto9hJpzJBlleIcuElaXOFrgBjitQMmC9nqTcwAKVlF3xjnJ/penGY3lsQklWA== X-Received: by 10.98.89.6 with SMTP id n6mr3369140pfb.43.1479290964519; Wed, 16 Nov 2016 02:09:24 -0800 (PST) Received: from calancha-pc (57.92.100.220.dy.bbexcite.jp. [220.100.92.57]) by smtp.gmail.com with ESMTPSA id m19sm19127951pfi.24.2016.11.16.02.09.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 16 Nov 2016 02:09:23 -0800 (PST) From: Tino Calancha X-Google-Original-From: Tino Calancha Date: Wed, 16 Nov 2016 19:09:19 +0900 (JST) X-X-Sender: calancha@calancha-pc To: Eli Zaretskii Subject: Re: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers In-Reply-To: <83h978hgrs.fsf@gnu.org> Message-ID: References: <871syqnsyo.fsf@gmail.com> <83a8dejkne.fsf@gnu.org> <87eg2ox0hi.fsf@gmail.com> <83h978hgrs.fsf@gnu.org> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org, Drew Adams , Tino Calancha X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.5 (/) On Tue, 15 Nov 2016, Eli Zaretskii wrote: >> This is the amended patch: > > Thanks, please see a few comments below. Thank you. I have implemented your comments. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; >From bcc00e4f1da3f9c6bbb484c403fc7a107ccafb8d Mon Sep 17 00:00:00 2001 From: Tino Calancha Date: Wed, 16 Nov 2016 19:01:21 +0900 Subject: [PATCH] buff-menu: Add command to unmark all buffers Bind 'U' in buff-menu, bs and electric-buff-menu to commands to unmark all buffers (Bug#24880). * lisp/emacs-lisp/tabulated-list.el (tabulated-list-header-overlay-p): New predicate; return non-nil if tabulated-list has a fake header. * lisp/buff-menu.el (Buffer-menu-unmark-all-buffers): New command; remove all flags that use a particular mark from all the lines. Bind it to 'M-DEL'. (Buffer-menu-unmark-all): New command; remove all flags from all the lines. Bind it to 'U'. (Buffer-menu-marker-char, Buffer-menu-del-char): New variables. (Buffer-menu-delete, Buffer-menu-mark): Use them. (Buffer-menu-mode-map): Update menus. (Buffer-menu-mode): Update mode doc. * lisp/bs.el (bs-unmark-all, bs-unmark-previous): New commands. (bs-mode-map): Bind them to 'U' and '' respectively. (bs-mode): Update mode doc. * lisp/ebuff-menu.el (electric-buffer-menu-mode-map): Bind Buffer-menu-unmark-all to 'U' and Buffer-menu-unmark-all-buffers to 'M-DEL'. (electric-buffer-list): Update mode doc. * doc/emacs/buffers.texi (Several Buffers): Mention Buffer-menu-unmark-all and Buffer-menu-unmark-all-buffers. ; * etc/NEWS: Add an entry per each new feature. --- doc/emacs/buffers.texi | 12 +++++++++++ etc/NEWS | 18 ++++++++++++++++ lisp/bs.el | 31 +++++++++++++++++++++++++++ lisp/buff-menu.el | 44 ++++++++++++++++++++++++++++++++++++--- lisp/ebuff-menu.el | 3 +++ lisp/emacs-lisp/tabulated-list.el | 6 ++++++ 6 files changed, 111 insertions(+), 3 deletions(-) diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi index 2eb837f..c70e583 100644 --- a/doc/emacs/buffers.texi +++ b/doc/emacs/buffers.texi @@ -411,6 +411,18 @@ Several Buffers @kindex DEL @r{(Buffer Menu)} Move to the previous line and remove all flags on that line (@code{Buffer-menu-backup-unmark}). + +@item M-@key{DEL} +@findex Buffer-menu-unmark-all-buffers +@kindex M-DEL @r{(Buffer Menu)} +Remove a particular flag from all lines +(@code{Buffer-menu-unmark-all-buffers}). + +@item U +@findex Buffer-menu-unmark-all +@kindex U @r{(Buffer Menu)} +Remove all flags from all the lines +(@code{Buffer-menu-unmark-all}). @end table @noindent diff --git a/etc/NEWS b/etc/NEWS index 15c264f..4b2af50 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -280,6 +280,24 @@ the file's actual content before prompting the user. * Changes in Specialized Modes and Packages in Emacs 26.1 +** Electric-Buffer-menu + ++++ +*** Key 'U' is bound to 'Buffer-menu-unmark-all' and key 'M-DEL' is +bound to 'Buffer-menu-unmark-all-buffers'. + +** bs + +--- +*** Two new commands 'bs-unmark-all', bound to 'U', and +'bs-unmark-previous', bound to . + +** Buffer-menu + ++++ +*** Two new commands 'Buffer-menu-unmark-all', bound to 'U' and +'Buffer-menu-unmark-all-buffers', bound to 'M-DEL'. + ** Ibuffer --- diff --git a/lisp/bs.el b/lisp/bs.el index 8351169..2ee0a5b 100644 --- a/lisp/bs.el +++ b/lisp/bs.el @@ -491,6 +491,8 @@ bs-mode-map (define-key map "t" 'bs-visit-tags-table) (define-key map "m" 'bs-mark-current) (define-key map "u" 'bs-unmark-current) + (define-key map "U" 'bs-unmark-all) + (define-key map "\177" 'bs-unmark-previous) (define-key map ">" 'scroll-right) (define-key map "<" 'scroll-left) (define-key map "?" 'bs-help) @@ -635,6 +637,8 @@ bs-mode \\[bs-clear-modified] -- clear modified-flag on that buffer. \\[bs-mark-current] -- mark current line's buffer to be displayed. \\[bs-unmark-current] -- unmark current line's buffer to be displayed. +\\[bs-unmark-all] -- unmark all buffer lines. +\\[bs-unmark-previous] -- unmark previous line's buffer to be displayed. \\[bs-show-sorted] -- display buffer list sorted by next sort aspect. \\[bs-set-configuration-and-refresh] -- ask user for a configuration and \ apply selected configuration. @@ -882,6 +886,33 @@ bs-unmark-current (lambda (buf) (setq bs--marked-buffers (delq buf bs--marked-buffers))))) +(defun bs-unmark-previous (count) + "Unmark previous COUNT buffers. +Move point vertically up COUNT lines. +When called interactively a numeric prefix argument sets COUNT." + (interactive "p") + (forward-line (- count)) + (save-excursion (bs-unmark-current count))) + +(defun bs-unmark-all () + "Unmark all buffers." + (interactive) + (let ((marked (string-to-char bs-string-marked)) + (current (string-to-char bs-string-current)) + (marked-cur (string-to-char bs-string-current-marked)) + (unmarked (string-to-char bs-string-show-normally)) + (inhibit-read-only t)) + (save-excursion + (goto-char (point-min)) + (forward-line 2) + (while (not (eobp)) + (if (eq (char-after) marked) + (subst-char-in-region (point) (1+ (point)) marked unmarked) + (when (eq (char-after) marked-cur) + (subst-char-in-region (point) (1+ (point)) marked-cur current))) + (forward-line 1)) + (setq bs--marked-buffers nil)))) + (defun bs--show-config-message (what) "Show message indicating the new showing status WHAT. WHAT is a value of nil, `never', or `always'." diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el index 4742628..f34c814 100644 --- a/lisp/buff-menu.el +++ b/lisp/buff-menu.el @@ -37,6 +37,12 @@ Buffer-menu :group 'tools :group 'convenience) +(defvar Buffer-menu-marker-char ?> + "The mark character for marked buffers.") + +(defvar Buffer-menu-del-char ?D + "Character used to flag buffers for deletion.") + (defcustom Buffer-menu-use-header-line t "If non-nil, use the header line to display Buffer Menu column titles." :type 'boolean @@ -121,6 +127,8 @@ Buffer-menu-mode-map (define-key map "\177" 'Buffer-menu-backup-unmark) (define-key map "~" 'Buffer-menu-not-modified) (define-key map "u" 'Buffer-menu-unmark) + (define-key map "\M-\177" 'Buffer-menu-unmark-all-buffers) + (define-key map "U" 'Buffer-menu-unmark-all) (define-key map "m" 'Buffer-menu-mark) (define-key map "t" 'Buffer-menu-visit-tags-table) (define-key map "%" 'Buffer-menu-toggle-read-only) @@ -197,6 +205,12 @@ Buffer-menu-mode-map (bindings--define-key menu-map [umk] '(menu-item "Unmark" Buffer-menu-unmark :help "Cancel all requested operations on buffer on this line and move down")) + (bindings--define-key menu-map [umkab] + '(menu-item "Remove marks..." Buffer-menu-unmark-all-buffers + :help "Cancel a requested operation on all buffers")) + (bindings--define-key menu-map [umka] + '(menu-item "Unmark all" Buffer-menu-unmark-all + :help "Cancel all requested operations on buffers")) (bindings--define-key menu-map [mk] '(menu-item "Mark" Buffer-menu-mark :help "Mark buffer on this line for being displayed by v command")) @@ -239,6 +253,8 @@ Buffer-menu-mode \\[Buffer-menu-execute] Delete or save marked buffers. \\[Buffer-menu-unmark] Remove all marks from current line. With prefix argument, also move up one line. +\\[Buffer-menu-unmark-all-buffers] Remove a particular mark from all lines. +\\[Buffer-menu-unmark-all] Remove all marks from all lines. \\[Buffer-menu-backup-unmark] Back up a line and remove marks. \\[Buffer-menu-toggle-read-only] Toggle read-only status of buffer on this line. \\[revert-buffer] Update the list of buffers. @@ -346,7 +362,7 @@ Buffer-menu-mark "Mark the Buffer menu entry at point for later display. It will be displayed by the \\\\[Buffer-menu-select] command." (interactive) - (tabulated-list-set-col 0 ">" t) + (tabulated-list-set-col 0 (char-to-string Buffer-menu-marker-char) t) (forward-line)) (defun Buffer-menu-unmark (&optional backup) @@ -356,6 +372,28 @@ Buffer-menu-unmark (Buffer-menu--unmark) (forward-line (if backup -1 1))) +(defun Buffer-menu-unmark-all-buffers (mark) + "Cancel a requested operation on all buffers. +MARK is the character to flag the operation on the buffers. +When called interactively prompt for MARK; RET remove all marks." + (interactive "cRemove marks (RET means all):") + (save-excursion + (goto-char (point-min)) + (when (tabulated-list-header-overlay-p) + (forward-line)) + (while (not (eobp)) + (let ((xmarks (list (aref (tabulated-list-get-entry) 0) + (aref (tabulated-list-get-entry) 2)))) + (when (or (char-equal mark ?\r) + (member (char-to-string mark) xmarks)) + (Buffer-menu--unmark))) + (forward-line)))) + +(defun Buffer-menu-unmark-all () + "Cancel all requested operations on buffers." + (interactive) + (Buffer-menu-unmark-all-buffers ?\r)) + (defun Buffer-menu-backup-unmark () "Move up and cancel all requested operations on buffer on line above." (interactive) @@ -382,12 +420,12 @@ Buffer-menu-delete (setq arg 1)) (while (> arg 0) (when (Buffer-menu-buffer) - (tabulated-list-set-col 0 "D" t)) + (tabulated-list-set-col 0 (char-to-string Buffer-menu-del-char) t)) (forward-line 1) (setq arg (1- arg))) (while (< arg 0) (when (Buffer-menu-buffer) - (tabulated-list-set-col 0 "D" t)) + (tabulated-list-set-col 0 (char-to-string Buffer-menu-del-char) t)) (forward-line -1) (setq arg (1+ arg)))) diff --git a/lisp/ebuff-menu.el b/lisp/ebuff-menu.el index 5536f94..74a9dd5 100644 --- a/lisp/ebuff-menu.el +++ b/lisp/ebuff-menu.el @@ -55,6 +55,8 @@ electric-buffer-menu-mode-map (define-key map "\177" 'Buffer-menu-backup-unmark) (define-key map "~" 'Buffer-menu-not-modified) (define-key map "u" 'Buffer-menu-unmark) + (define-key map "\M-\177" 'Buffer-menu-unmark-all-buffers) + (define-key map "U" 'Buffer-menu-unmark-all) (let ((i ?0)) (while (<= i ?9) (define-key map (char-to-string i) 'digit-argument) @@ -114,6 +116,7 @@ electric-buffer-list \\[Buffer-menu-save] -- mark that buffer to be saved. \\[Buffer-menu-delete] or \\[Buffer-menu-delete-backwards] -- mark that buffer to be deleted. \\[Buffer-menu-unmark] -- remove all kinds of marks from current line. +\\[Buffer-menu-unmark-all] -- remove all kinds of marks from all lines. \\[Electric-buffer-menu-mode-view-buffer] -- view buffer, returning when done. \\[Buffer-menu-backup-unmark] -- back up a line and remove marks." (interactive "P") diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el index cf297f1..9523d5e 100644 --- a/lisp/emacs-lisp/tabulated-list.el +++ b/lisp/emacs-lisp/tabulated-list.el @@ -259,6 +259,12 @@ tabulated-list-print-fake-header (make-overlay (point-min) (point)))) (overlay-put tabulated-list--header-overlay 'face 'underline)))) +(defsubst tabulated-list-header-overlay-p (&optional pos) + "Return non-nil if there is a fake header. +Optional arg POS is a buffer position where to look for a fake header; +defaults to `point-min'." + (overlays-at (or pos (point-min)))) + (defun tabulated-list-revert (&rest ignored) "The `revert-buffer-function' for `tabulated-list-mode'. It runs `tabulated-list-revert-hook', then calls `tabulated-list-print'." -- 2.10.2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; In GNU Emacs 26.0.50.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.3) of 2016-11-16 Repository revision: 36b99556dea23f17d5598bbed366e7201eec9fbb From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 18 05:09:15 2016 Received: (at 24880) by debbugs.gnu.org; 18 Nov 2016 10:09:15 +0000 Received: from localhost ([127.0.0.1]:33136 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7g6d-0003Dg-If for submit@debbugs.gnu.org; Fri, 18 Nov 2016 05:09:15 -0500 Received: from eggs.gnu.org ([208.118.235.92]:48040) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7g6b-0003DU-So for 24880@debbugs.gnu.org; Fri, 18 Nov 2016 05:09:14 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c7g6T-0001Oj-K3 for 24880@debbugs.gnu.org; Fri, 18 Nov 2016 05:09:08 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_40,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:34628) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c7g6T-0001Of-Gq; Fri, 18 Nov 2016 05:09:05 -0500 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2383 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1c7g6S-0007xw-Q6; Fri, 18 Nov 2016 05:09:05 -0500 Date: Fri, 18 Nov 2016 12:09:09 +0200 Message-Id: <83shqpcd6i.fsf@gnu.org> From: Eli Zaretskii To: Tino Calancha In-reply-to: (message from Tino Calancha on Wed, 16 Nov 2016 19:09:19 +0900 (JST)) Subject: Re: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers References: <871syqnsyo.fsf@gmail.com> <83a8dejkne.fsf@gnu.org> <87eg2ox0hi.fsf@gmail.com> <83h978hgrs.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -7.9 (-------) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org, drew.adams@oracle.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -7.9 (-------) > From: Tino Calancha > Date: Wed, 16 Nov 2016 19:09:19 +0900 (JST) > cc: Tino Calancha , > Drew Adams , 24880@debbugs.gnu.org > > > > On Tue, 15 Nov 2016, Eli Zaretskii wrote: > > >> This is the amended patch: > > > > Thanks, please see a few comments below. > Thank you. I have implemented your comments. Please give this a few more days, and if no further comments are posted, push to master. (Should this be mentioned in NEWS?) Thanks. From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 18 05:18:00 2016 Received: (at 24880) by debbugs.gnu.org; 18 Nov 2016 10:18:00 +0000 Received: from localhost ([127.0.0.1]:33140 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7gF6-0003RI-EL for submit@debbugs.gnu.org; Fri, 18 Nov 2016 05:18:00 -0500 Received: from mail-pg0-f42.google.com ([74.125.83.42]:33047) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7gF4-0003R5-RF for 24880@debbugs.gnu.org; Fri, 18 Nov 2016 05:17:59 -0500 Received: by mail-pg0-f42.google.com with SMTP id 3so101901757pgd.0 for <24880@debbugs.gnu.org>; Fri, 18 Nov 2016 02:17:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:date:to:cc:subject:in-reply-to:message-id:references :user-agent:mime-version; bh=sPTxadPd7A+rALjyUaQ+qtz0KAk66zhZjFukFe1Xlsw=; b=x6vq27DQFjQgPJpO3p6uIjke2IOfWB6xHY1ifVNNQuiu3YengYAYrzZ7EqGcUzGFRl Ssy9hneh8tQx4J6VSicmN/H3Nc2w2UfShx+te29ARLrbfqYzoKxzybYb3mhaBKMX6MTn iK8wChlSA5rtlZZGE3EoQakiHKLnNEPC8c8coSGNxeYH/toBzVgkWFwb6We9LDiQsBWH Dej+dFVyyb88LyWT+BDXsWP8mabvM74L48Q552UehBt0eW0QZiYuLkrvIZ0qi8hcRE2o QAZUZ+qdFIo/rUDPUu2P/54f9JrLREe9CfNbVFvyqGxyh/m6FTklznWOCjIj+GHT28Wi mpuQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:date:to:cc:subject:in-reply-to:message-id :references:user-agent:mime-version; bh=sPTxadPd7A+rALjyUaQ+qtz0KAk66zhZjFukFe1Xlsw=; b=kXzIUARbc0rtg+JL8ukoTO76RgzGagnBwxdEes4K++1MVYoRpLn5kvJNwD7kXHpLnZ h4Uy5K/mrg8C4pv7CBboT7dQCjYpAfNuCiVHOzRMm8saomHSiTW98woSFZyKge95i/WA mQldI4L97v/ZVdVfEvDNfjoKPATmxGsclFnasQ0KKvK68iZdNn/7ZaDaw/nrgDiiCLiG shPA3jLMua2qiU2A5BDcg3CfwavxH615MapDngHW7Krg/Z/pjZadoTWlv6YA6oGjUgSA Qx43ZRjUqLJRZNtNT8Bu/BsT237orsfVCOtqpaT0bR60uh+UQjnIB4V99glrWKKxqe7O kCIQ== X-Gm-Message-State: ABUngvdThyFV+DB7xsFBl32yp9RuppzXdgup5JCugo+pPHMZ/gFqC1lThQhbzLEXig2+KA== X-Received: by 10.99.66.198 with SMTP id p189mr17758497pga.30.1479464273004; Fri, 18 Nov 2016 02:17:53 -0800 (PST) Received: from calancha-pc (57.92.100.220.dy.bbexcite.jp. [220.100.92.57]) by smtp.gmail.com with ESMTPSA id y189sm16273461pfy.32.2016.11.18.02.17.50 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 18 Nov 2016 02:17:52 -0800 (PST) From: Tino Calancha X-Google-Original-From: Tino Calancha Date: Fri, 18 Nov 2016 19:17:48 +0900 (JST) X-X-Sender: calancha@calancha-pc To: Eli Zaretskii Subject: Re: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers In-Reply-To: <83shqpcd6i.fsf@gnu.org> Message-ID: References: <871syqnsyo.fsf@gmail.com> <83a8dejkne.fsf@gnu.org> <87eg2ox0hi.fsf@gmail.com> <83h978hgrs.fsf@gnu.org> <83shqpcd6i.fsf@gnu.org> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset=US-ASCII X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org, drew.adams@oracle.com, Tino Calancha X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) On Fri, 18 Nov 2016, Eli Zaretskii wrote: > Please give this a few more days, and if no further comments are > posted, push to master. OK, thanks. I will wait until next tuesday 15th. > (Should this be mentioned in NEWS?) I can skip the NEWS entries, or reduce their length. From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 18 06:05:18 2016 Received: (at 24880) by debbugs.gnu.org; 18 Nov 2016 11:05:18 +0000 Received: from localhost ([127.0.0.1]:33159 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7gys-0004hh-8V for submit@debbugs.gnu.org; Fri, 18 Nov 2016 06:05:18 -0500 Received: from eggs.gnu.org ([208.118.235.92]:36316) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7gyp-0004hT-Vc for 24880@debbugs.gnu.org; Fri, 18 Nov 2016 06:05:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c7gyg-0001QS-Go for 24880@debbugs.gnu.org; Fri, 18 Nov 2016 06:05:10 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_20,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:38140) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c7gyg-0001QL-Dw; Fri, 18 Nov 2016 06:05:06 -0500 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2428 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1c7gyf-0004oi-Py; Fri, 18 Nov 2016 06:05:06 -0500 Date: Fri, 18 Nov 2016 13:05:09 +0200 Message-Id: <83poltcal6.fsf@gnu.org> From: Eli Zaretskii To: Tino Calancha In-reply-to: (message from Tino Calancha on Fri, 18 Nov 2016 19:17:48 +0900 (JST)) Subject: Re: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers References: <871syqnsyo.fsf@gmail.com> <83a8dejkne.fsf@gnu.org> <87eg2ox0hi.fsf@gmail.com> <83h978hgrs.fsf@gnu.org> <83shqpcd6i.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -7.9 (-------) X-Debbugs-Envelope-To: 24880 Cc: 24880@debbugs.gnu.org, drew.adams@oracle.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -7.9 (-------) > From: Tino Calancha > Date: Fri, 18 Nov 2016 19:17:48 +0900 (JST) > cc: Tino Calancha , drew.adams@oracle.com, > 24880@debbugs.gnu.org > > On Fri, 18 Nov 2016, Eli Zaretskii wrote: > > > Please give this a few more days, and if no further comments are > > posted, push to master. > OK, thanks. I will wait until next tuesday 15th. Thanks. > > (Should this be mentioned in NEWS?) > I can skip the NEWS entries, or reduce their length. Sorry, I somehow managed to miss the fact that the NEWS entries were part of the patch. From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 22 01:30:55 2016 Received: (at 24880-done) by debbugs.gnu.org; 22 Nov 2016 06:30:55 +0000 Received: from localhost ([127.0.0.1]:37713 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c94bW-0003TY-UK for submit@debbugs.gnu.org; Tue, 22 Nov 2016 01:30:55 -0500 Received: from mail-pf0-f193.google.com ([209.85.192.193]:36087) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c94bV-0003TL-Ar for 24880-done@debbugs.gnu.org; Tue, 22 Nov 2016 01:30:53 -0500 Received: by mail-pf0-f193.google.com with SMTP id c4so740499pfb.3 for <24880-done@debbugs.gnu.org>; Mon, 21 Nov 2016 22:30:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:date:message-id:mime-version; bh=Jabe2WjOXBCWeVuHmczHtk9yABpheGR5Fd5ToSGnYH8=; b=qBykrBqNY4EczbL4w7nA6dowYCZDvw9FYIFN6IWMBEu+wQ6f52fHeiEZ81rA2KOV1f BiLMGl46cki8CMPioF7xJNisXhiJ1XvgUW/pTiUpQteZBznwAgWsoLk4AIw5UylpM2PZ su7EldmxosyFnbbXg8WOrrOtvBFN1H17SqqCzuo2Fa7LbUSJhuxHWJQBOBHFCd3y26vl 93HF64nMF4tm1tZL0+xz02mjz4p6SHBUgxMgw00iYpQac1FpFPbGRTJRzmdtDSBYiOfx wiBKOmD7sYKStmjNrcV7R0p7droNWoixaFmwPv7fbqELCpiD/rgmRlt6ek3+FnZzN2jf kgzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:mime-version; bh=Jabe2WjOXBCWeVuHmczHtk9yABpheGR5Fd5ToSGnYH8=; b=ROozsU6x7qkaF+tMjDuO62rl8c/t3e6fLkhoYs4MC4lBYtA135QXCJ5EcV1S5LfHrs vW1dvW7sgk3JUURfMRjIj+35LQOpmTWf8HLnRy4B+zBXX5J4BtDeBn97NQrNDgIKY1It RP3BJLGfBuAXLNyTj/T73Fpb9QltO537P/Ux4pJPCfQnvJwLD74eFqGhfRXtbSTSTEDn 9A5auBsGgUSY2MmVQCgqF6xpwty4agQKS8hfw6XP+J2+6BKmsfNT8RdMXiE6R6fng7yi bqJKOcAAwiyjQaOdImBnTuY3lQfMiFnTcQvDH9++utbKW+0+0t7nlRsBfOkfen7H4xU3 o+Zg== X-Gm-Message-State: AKaTC01xR+qRP1T1a/Ld616tJE8opMOdiQnzm/Ho0mC5cDYpXCSIvTvBV2vBRlI7AcwFvg== X-Received: by 10.99.99.195 with SMTP id x186mr41077505pgb.100.1479796247337; Mon, 21 Nov 2016 22:30:47 -0800 (PST) Received: from calancha-pc (57.92.100.220.dy.bbexcite.jp. [220.100.92.57]) by smtp.gmail.com with ESMTPSA id t21sm41949677pfa.1.2016.11.21.22.30.45 for <24880-done@debbugs.gnu.org> (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 21 Nov 2016 22:30:46 -0800 (PST) From: Tino Calancha To: 24880-done@debbugs.gnu.org Subject: bug#24880: 26.0.50; buff-menu: Command to unmark all buffers Date: Tue, 22 Nov 2016 15:30:32 +0900 Message-ID: <87h9706n7b.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 24880-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) Eli Zaretskii writes: > Please give this a few more days, and if no further comments are > posted, push to master. Pushed to master branch as commit: 27b754c From unknown Wed Jun 25 00:23:54 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 20 Dec 2016 12:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator