summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Guerry <bzg@altern.org>2014-05-26 07:10:16 +0200
committerBastien Guerry <bzg@altern.org>2014-05-26 07:10:16 +0200
commit2affa4d33355313f0a45de80fb4fb10618081529 (patch)
tree082f78a9169462460627455d5c9a9d45507e1c38
parentabe931dca9c4c634fe9495eff7579ca952eb8b98 (diff)
downloadorg-mode-2affa4d33355313f0a45de80fb4fb10618081529.tar.gz
org.el (org-sort-entries): Improve TODO entries sorting
* org.el (org-sort-entries): When sorting by TODO keywords, put TODO entries first, then entries without a TODO keyword, then DONE entries. Thanks to Eric Abrahamsen for triggering this.
-rw-r--r--lisp/org.el5
1 files changed, 3 insertions, 2 deletions
diff --git a/lisp/org.el b/lisp/org.el
index dc223b4..f2963b2 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -8904,8 +8904,9 @@ When sorting is done, call `org-after-sorting-entries-or-items-hook'."
(or (org-entry-get nil property) ""))
((= dcst ?o)
(if (looking-at org-complex-heading-regexp)
- (- 9999 (length (member (match-string 2)
- org-todo-keywords-1)))))
+ (let* ((m (match-string 2))
+ (s (if (member m org-done-keywords) '- '+)))
+ (- 99 (funcall s (length (member m org-todo-keywords-1)))))))
((= dcst ?f)
(if getkey-func
(progn