[Orgmode] sorting entries
Hi, When sorting entries (C-c ^ t), I now get the following error: Sorting entries... Wrong type argument: listp, 1231542000.0 Emacs 22, 6.27trans (yesterday's), Mac OS X 10.5.7 This used to work. Thanks, Jörg ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] sorting entries
Fixed, thanks. - Carsten On Jun 3, 2009, at 2:57 PM, Jörg Hagmann wrote: Hi, When sorting entries (C-c ^ t), I now get the following error: Sorting entries... Wrong type argument: listp, 1231542000.0 Emacs 22, 6.27trans (yesterday's), Mac OS X 10.5.7 This used to work. Thanks, Jörg ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
[Orgmode] sorting entries on date created?
Dear All, I use remember to add todo entries. Mine look like this ** TODO kpdf as standard pdf viewer from auctex [2008-07-19 Sat] where the inactive timestamp is added at creation. I'd like to use org-sort to sort such entries by creation date. I'd assume I could use sorting-type ?f with a suitable getkey-func. So, is there already a function in org that I could use to extract this date? Thanks, Marko pgpWGibP6Mx2g.pgp Description: PGP signature ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] sorting entries on date created?
Marko Schütz wrote: > I use remember to add todo entries. Mine look like this > > ** TODO kpdf as standard pdf viewer from auctex >[2008-07-19 Sat] > > where the inactive timestamp is added at creation. > > I'd like to use org-sort to sort such entries by creation date. I'd > assume I could use sorting-type ?f with a suitable getkey-func. So, is > there already a function in org that I could use to extract this date? > Not sure if this helps (it does not answer your question directly): There are two places in org-sort-entries-or-items (which is called by org-sort under the conditions at hand) where a regexp, org-ts-regexp, is used when sorting-type is selected to be ?t: one is for when you are sorting plain lists and the other is when you are sorting top-level entries or the active region. If you change the relevant instance of org-ts-regexp to org-ts-regexp-both, it will match both active and inactive timestamps and sort appropriately. I have not tried to figure out what happens if there are multiple timestamps, active or inactive, in an entry. But if you just have a single inactive timestamp per entry, as you have indicated above, that should work. HTH, Nick ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] sorting entries on date created?
On Apr 29, 2009, at 7:41 PM, Nick Dokos wrote: Marko Schütz wrote: I use remember to add todo entries. Mine look like this ** TODO kpdf as standard pdf viewer from auctex [2008-07-19 Sat] where the inactive timestamp is added at creation. I'd like to use org-sort to sort such entries by creation date. I'd assume I could use sorting-type ?f with a suitable getkey-func. So, is there already a function in org that I could use to extract this date? Not sure if this helps (it does not answer your question directly): There are two places in org-sort-entries-or-items (which is called by org-sort under the conditions at hand) where a regexp, org-ts- regexp, is used when sorting-type is selected to be ?t: one is for when you are sorting plain lists and the other is when you are sorting top-level entries or the active region. If you change the relevant instance of org-ts-regexp to org-ts-regexp-both, it will match both active and inactive timestamps and sort appropriately. I have not tried to figure out what happens if there are multiple timestamps, active or inactive, in an entry. But if you just have a single inactive timestamp per entry, as you have indicated above, that should work. Hi the real problem is to find the correct time stamp even in entries that have multiple time stamps, just as Nick is saying. Your best bet will indeed be to write a custom sorting function for ?f, because the way this function has to be written depends on how your entries look. For example, if we assume that the creation time is the first inactive time stamp that is at the beginning of a line (to exclude things like a CLOSED time stamp), you could use (defun sort-by-creation-time () (let ((end (save-excursion (outline-next-heading) (point (if (re-search-forward (concat "^[ \t]*\\[" org-ts-regexp1 "\\]") end t) (time-to-seconds (org-time-string-to-time (match-string 0))) (time-to-seconds now HTH - Carsten ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] sorting entries on date created?
On May 6, 2009, at 10:11 AM, Carsten Dominik wrote: On Apr 29, 2009, at 7:41 PM, Nick Dokos wrote: Marko Schütz wrote: I use remember to add todo entries. Mine look like this ** TODO kpdf as standard pdf viewer from auctex [2008-07-19 Sat] where the inactive timestamp is added at creation. I'd like to use org-sort to sort such entries by creation date. I'd assume I could use sorting-type ?f with a suitable getkey-func. So, is there already a function in org that I could use to extract this date? Not sure if this helps (it does not answer your question directly): There are two places in org-sort-entries-or-items (which is called by org-sort under the conditions at hand) where a regexp, org-ts- regexp, is used when sorting-type is selected to be ?t: one is for when you are sorting plain lists and the other is when you are sorting top-level entries or the active region. If you change the relevant instance of org-ts-regexp to org-ts-regexp-both, it will match both active and inactive timestamps and sort appropriately. I have not tried to figure out what happens if there are multiple timestamps, active or inactive, in an entry. But if you just have a single inactive timestamp per entry, as you have indicated above, that should work. Hi the real problem is to find the correct time stamp even in entries that have multiple time stamps, just as Nick is saying. Your best bet will indeed be to write a custom sorting function for ?f, because the way this function has to be written depends on how your entries look. For example, if we assume that the creation time is the first inactive time stamp that is at the beginning of a line (to exclude things like a CLOSED time stamp), you could use (defun sort-by-creation-time () (let ((end (save-excursion (outline-next-heading) (point (if (re-search-forward (concat "^[ \t]*\\[" org-ts-regexp1 "\\]") end t) (time-to-seconds (org-time-string-to-time (match-string 0))) (time-to-seconds now HTH - Carsten Time sorting is now improved, with the following new sorting methods: t By date/time, either the first active time stamp in the entry, or, if none exist, by the first inactive one. In items, only the first line will be chekced. s By the scheduled date/time. d By deadline date/time. c By creation time, which is assumed to be the first inactive time stamp at the beginning of a line. HTH - Carsten ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode