(define-ibuffer-sorter): Define the sorter to reverse sorting order if
authorJohn Paul Wallington <jpw@pobox.com>
Thu, 1 May 2008 01:19:26 +0000 (01:19 +0000)
committerJohn Paul Wallington <jpw@pobox.com>
Thu, 1 May 2008 01:19:26 +0000 (01:19 +0000)
last sorting mode was the sorter's.

lisp/ibuf-macs.el

index d3a4da5..947c2b7 100644 (file)
@@ -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))