emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] tsia-up sorting strategy sorts agenda by date and ignores time.


From: Arkady Grudzinsky
Subject: Re: [O] tsia-up sorting strategy sorts agenda by date and ignores time. How can I change that?
Date: Wed, 22 Mar 2017 10:13:32 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

On Wed, Mar 22 2017, Arkady Grudzinsky wrote:

> On Tue, Mar 21 2017, Matt Lundin wrote:
>
>> You could use something like this and then add user-defined-up or
>> user-defined-down where desired in org-agenda-sorting-strategy:
>>
>> (defun my-sort-by-inactive-timestamp-incl-time (a b)
>>   (let* ((ma (get-text-property 1 'org-marker a))
>>          (mb (get-text-property 1 'org-marker b))
>>          (tsa (with-current-buffer (marker-buffer ma)
>>                  (org-entry-get (marker-position ma) "TIMESTAMP_IA")))
>>          (tsb (with-current-buffer (marker-buffer mb)
>>                  (org-entry-get (marker-position mb) "TIMESTAMP_IA")))
>>          (seca (if tsa (org-time-string-to-seconds tsa) 0))
>>          (secb (if tsb (org-time-string-to-seconds tsb) 0)))
>>     (cond ((> seca secb) 1)
>>           ((> secb seca) -1)
>>           (t nil))))
>>
>> (setq org-agenda-cmp-user-defined 'my-sort-by-inactive-timestamp-incl-time)
>>
>> I imagine there are ways to do this more elegantly (e.g., by iterating
>> over a and b), but this gets the job done for me.
>
> This works.  Awesome!  Thanks.  

When this user-defined-up is set in agenda view (C-c a a), the
agenda view throws an error message.

,----
| set-buffer: Wrong type argument: markerp, nil
`----

It works in the todo list views, though, which is good enough for me.

Thanks again.  Just wanted to mention this for the record.

-- 
Arkady



reply via email to

[Prev in Thread] Current Thread [Next in Thread]