aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/ibuf-ext.el7
-rw-r--r--lisp/ibuf-macs.el16
2 files changed, 15 insertions, 8 deletions
diff --git a/lisp/ibuf-ext.el b/lisp/ibuf-ext.el
index 686bc392b60..2c841fa7e0a 100644
--- a/lisp/ibuf-ext.el
+++ b/lisp/ibuf-ext.el
@@ -1033,8 +1033,11 @@ group definitions by setting `ibuffer-filter-groups' to nil."
1033 (ibuffer-jump-to-buffer (buffer-name buf))))) 1033 (ibuffer-jump-to-buffer (buffer-name buf)))))
1034 1034
1035(defun ibuffer-push-filter (filter-specification) 1035(defun ibuffer-push-filter (filter-specification)
1036 "Add FILTER-SPECIFICATION to `ibuffer-filtering-qualifiers'." 1036 "Add FILTER-SPECIFICATION to `ibuffer-filtering-qualifiers'.
1037 (push filter-specification ibuffer-filtering-qualifiers)) 1037If FILTER-SPECIFICATION is already in the list then return nil. Otherwise,
1038return the updated list."
1039 (unless (member filter-specification ibuffer-filtering-qualifiers)
1040 (push filter-specification ibuffer-filtering-qualifiers)))
1038 1041
1039;;;###autoload 1042;;;###autoload
1040(defun ibuffer-decompose-filter () 1043(defun ibuffer-decompose-filter ()
diff --git a/lisp/ibuf-macs.el b/lisp/ibuf-macs.el
index e0c91e20edd..c30067f2f58 100644
--- a/lisp/ibuf-macs.el
+++ b/lisp/ibuf-macs.el
@@ -301,12 +301,16 @@ bound to the current value of the filter.
301 (defun ,fn-name (qualifier) 301 (defun ,fn-name (qualifier)
302 ,(or documentation "This filter is not documented.") 302 ,(or documentation "This filter is not documented.")
303 (interactive (list ,reader)) 303 (interactive (list ,reader))
304 (ibuffer-push-filter (cons ',name qualifier)) 304 (if (null (ibuffer-push-filter (cons ',name qualifier)))
305 (message "%s" 305 (message "%s"
306 (format ,(concat (format "Filter by %s added: " description) 306 (format ,(concat (format "Filter by %s already applied: " description)
307 " %s") 307 " %s")
308 qualifier)) 308 qualifier))
309 (ibuffer-update nil t)) 309 (message "%s"
310 (format ,(concat (format "Filter by %s added: " description)
311 " %s")
312 qualifier))
313 (ibuffer-update nil t)))
310 (push (list ',name ,description 314 (push (list ',name ,description
311 (lambda (buf qualifier) 315 (lambda (buf qualifier)
312 (condition-case nil 316 (condition-case nil