aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChong Yidong2011-08-14 14:08:20 -0400
committerChong Yidong2011-08-14 14:08:20 -0400
commitd024fb4ec9dd59c0364e01768514ef67e2d17457 (patch)
tree1c0630c10350a406968f12996c4ad8a29f58c006
parent5cf2b69bdba39fd653d34c74e207ac3e4c48260d (diff)
downloademacs-d024fb4ec9dd59c0364e01768514ef67e2d17457.tar.gz
emacs-d024fb4ec9dd59c0364e01768514ef67e2d17457.zip
Avoid deleting ibuffer named filters by default.
* lisp/ibuf-ext.el (ibuffer-filter-disable): New arg for deleting filter groups. (ibuffer-included-in-filter-p-1): Use it. Suggested by Noam Postavsky. Fixes: debbugs:8804
-rw-r--r--lisp/ChangeLog7
-rw-r--r--lisp/ibuf-ext.el15
2 files changed, 16 insertions, 6 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 07f45b34a54..510f594465c 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
12011-08-14 Chong Yidong <cyd@stupidchicken.com>
2
3 * ibuf-ext.el (ibuffer-filter-disable): New arg for deleting
4 filter groups.
5 (ibuffer-included-in-filter-p-1): Use it. Suggested by Noam
6 Postavsky (Bug#8804).
7
12011-08-12 Juanma Barranquero <lekktu@gmail.com> 82011-08-12 Juanma Barranquero <lekktu@gmail.com>
2 9
3 * startup.el (argi): Declare as global variable (bug#9275). 10 * startup.el (argi): Declare as global variable (bug#9275).
diff --git a/lisp/ibuf-ext.el b/lisp/ibuf-ext.el
index f4b729458e6..073efaeee2a 100644
--- a/lisp/ibuf-ext.el
+++ b/lisp/ibuf-ext.el
@@ -505,7 +505,7 @@ To evaluate a form without viewing the buffer, see `ibuffer-do-eval'."
505 (assoc (cdr filter) 505 (assoc (cdr filter)
506 ibuffer-saved-filters))) 506 ibuffer-saved-filters)))
507 (unless data 507 (unless data
508 (ibuffer-filter-disable) 508 (ibuffer-filter-disable t)
509 (error "Unknown saved filter %s" (cdr filter))) 509 (error "Unknown saved filter %s" (cdr filter)))
510 (ibuffer-included-in-filters-p buf (cadr data)))) 510 (ibuffer-included-in-filters-p buf (cadr data))))
511 (t 511 (t
@@ -514,7 +514,7 @@ To evaluate a form without viewing the buffer, see `ibuffer-do-eval'."
514 ;; filterdat should be like (TYPE DESCRIPTION FUNC) 514 ;; filterdat should be like (TYPE DESCRIPTION FUNC)
515 ;; just a sanity check 515 ;; just a sanity check
516 (unless filterdat 516 (unless filterdat
517 (ibuffer-filter-disable) 517 (ibuffer-filter-disable t)
518 (error "Undefined filter %s" (car filter))) 518 (error "Undefined filter %s" (car filter)))
519 (not 519 (not
520 (not 520 (not
@@ -768,11 +768,14 @@ The value from `ibuffer-saved-filter-groups' is used."
768 (ibuffer-update nil t)) 768 (ibuffer-update nil t))
769 769
770;;;###autoload 770;;;###autoload
771(defun ibuffer-filter-disable () 771(defun ibuffer-filter-disable (&optional delete-filter-groups)
772 "Disable all filters currently in effect in this buffer." 772 "Disable all filters currently in effect in this buffer.
773With optional arg DELETE-FILTER-GROUPS non-nil, delete all filter
774group definitions by setting `ibuffer-filter-groups' to nil."
773 (interactive) 775 (interactive)
774 (setq ibuffer-filtering-qualifiers nil 776 (setq ibuffer-filtering-qualifiers nil)
775 ibuffer-filter-groups nil) 777 (if delete-filter-groups
778 (setq ibuffer-filter-groups nil))
776 (let ((buf (ibuffer-current-buffer))) 779 (let ((buf (ibuffer-current-buffer)))
777 (ibuffer-update nil t) 780 (ibuffer-update nil t)
778 (when buf 781 (when buf