summaryrefslogtreecommitdiff
path: root/lisp/ibuf-macs.el
diff options
context:
space:
mode:
authorJohn Paul Wallington <jpw@pobox.com>2008-05-01 01:19:26 +0000
committerJohn Paul Wallington <jpw@pobox.com>2008-05-01 01:19:26 +0000
commite3b714390480e3082a6fab0ea636cb1d8a6c93e5 (patch)
treeea19022cca67f5f9ce6d232d798d2ea9a24549fb /lisp/ibuf-macs.el
parente782065477917c10759d618e43b2ec18330ffae3 (diff)
downloademacs-e3b714390480e3082a6fab0ea636cb1d8a6c93e5.tar.gz
(define-ibuffer-sorter): Define the sorter to reverse sorting order if
last sorting mode was the sorter's.
Diffstat (limited to 'lisp/ibuf-macs.el')
-rw-r--r--lisp/ibuf-macs.el5
1 files changed, 4 insertions, 1 deletions
diff --git a/lisp/ibuf-macs.el b/lisp/ibuf-macs.el
index d3a4da54e50..947c2b7040a 100644
--- a/lisp/ibuf-macs.el
+++ b/lisp/ibuf-macs.el
@@ -150,7 +150,10 @@ value if and only if `a' is \"less than\" `b'.
,(or documentation "No :documentation specified for this sorting method.")
(interactive)
(setq ibuffer-sorting-mode ',name)
- (ibuffer-redisplay t))
+ (when (eq ibuffer-sorting-mode ibuffer-last-sorting-mode)
+ (setq ibuffer-sorting-reversep (not ibuffer-sorting-reversep)))
+ (ibuffer-redisplay t)
+ (setq ibuffer-last-sorting-mode ',name))
(push (list ',name ,description
#'(lambda (a b)
,@body))