summaryrefslogtreecommitdiff
path: root/lisp/ibuf-ext.el
diff options
context:
space:
mode:
authorTino Calancha <tino.calancha@gmail.com>2016-11-19 20:48:17 +0900
committerTino Calancha <tino.calancha@gmail.com>2016-11-19 20:48:17 +0900
commit92b3528cf3e6d366086e89b9a909f0c81614a064 (patch)
tree2e0c85f1ff51952888d5875b0ca448dd91a7ea5c /lisp/ibuf-ext.el
parent4cdd14eabe5a6121691daa2d9c5e814c5f53f3e5 (diff)
downloademacs-92b3528cf3e6d366086e89b9a909f0c81614a064.tar.gz
ibuffer-exchange-filters: Simplify code
* lisp/ibuf-ext.el (ibuffer-exchange-filters): Use cl-rotatef.
Diffstat (limited to 'lisp/ibuf-ext.el')
-rw-r--r--lisp/ibuf-ext.el13
1 files changed, 5 insertions, 8 deletions
diff --git a/lisp/ibuf-ext.el b/lisp/ibuf-ext.el
index b3d14522cbd..5ef07469772 100644
--- a/lisp/ibuf-ext.el
+++ b/lisp/ibuf-ext.el
@@ -869,14 +869,11 @@ turned into two separate filters [name: foo] and [mode: bar-mode]."
(defun ibuffer-exchange-filters ()
"Exchange the top two filters on the stack in this buffer."
(interactive)
- (when (< (length ibuffer-filtering-qualifiers)
- 2)
- (error "Need two filters to exchange"))
- (let ((first (pop ibuffer-filtering-qualifiers))
- (second (pop ibuffer-filtering-qualifiers)))
- (push first ibuffer-filtering-qualifiers)
- (push second ibuffer-filtering-qualifiers))
- (ibuffer-update nil t))
+ (let ((filters ibuffer-filtering-qualifiers))
+ (when (< (length filters) 2)
+ (error "Need two filters to exchange"))
+ (cl-rotatef (car filters) (cadr filters))
+ (ibuffer-update nil t)))
;;;###autoload
(defun ibuffer-negate-filter ()