Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lisp 0.99 KB | None | 0 0
  1. (defun my/org-refile-to-journal ()
  2.   "Refile an entry to journal file's date-tree. Journal file needs to be an agenda file."
  3.   (interactive)
  4.   (require 'org-datetree)
  5.   (let ((journal (expand-file-name "journal.org" org-directory))
  6.         post-date)
  7.     (setq post-date (or (org-entry-get (point) "TIMESTAMP_IA")
  8.                         (org-entry-get (point) "TIMESTAMP")))
  9.     (setq post-date (nthcdr 3 (parse-time-string post-date)))
  10.     (setq post-date (list (cadr post-date)
  11.                           (car post-date)
  12.                           (caddr post-date)))
  13.     (org-cut-subtree)
  14.     (with-current-buffer (or (find-buffer-visiting journal)
  15.                              (find-file-noselect journal))
  16.       (save-excursion
  17.         (org-datetree-file-entry-under (current-kill 0) post-date)
  18.         (bookmark-set "org-refile-last-stored")))
  19.     (message "Refiled to %s" journal)
  20.     (setq org-map-continue-from (point-min))))
  21.  
  22. (org-map-entries 'my/org-refile-to-journal "LEVEL=1")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement