diff --git a/emacs/init.org b/emacs/init.org index 95e3551..03239cd 100755 --- a/emacs/init.org +++ b/emacs/init.org @@ -603,26 +603,32 @@ Always show inline images: ** Agenda files #+BEGIN_SRC emacs-lisp - (setq org-agenda-files '("~/org")) + (defun agenda-files (&optional file) + (let ((agenda-dir (concat (file-name-as-directory (get-dropbox-directory)) "org"))) + (if file + (concat (file-name-as-directory agenda-dir) file) + agenda-dir))) + + (setq org-agenda-files `(,(agenda-files))) #+END_SRC ** Capture templates #+BEGIN_SRC emacs-lisp (setq org-capture-templates - '(("t" "Task" entry - (file "~/org/todo.org") + `(("t" "Task" entry + (file ,(agenda-files "todo.org")) "* TODO %i%?") ("b" "Backlog task" entry - (file "~/org/backlog.org") + (file ,(agenda-files "backlog.org")) "* TODO %i%?") ("n" "Note" entry - (file "~/org/notes.org") + (file ,(agenda-files "notes.org")) "* %^{Description}\n%i%?") ("j" "Journal entry" entry - (file "~/org/journal.org") + (file ,(agenda-files "journal.org")) "* %<%Y-%m-%d %H:%M:%S>%?") ("p" "Project" entry - (file "~/org/notes.org") + (file ,(agenda-files "notes.org")) "* %^{Project name}\n\n** What's it supposed to do?\n%?\n** How can I test that it works?\n\n** How can I test that it didn't break anything?\n\n** What alternative approaches are there - what trade-offs can be made?\n\n** What assumptions have I made?\n\n** What deployables will I need to deploy?\n") ("b" "Brain" plain (function org-brain-goto-end) "* %i%?" :empty-lines 1))) @@ -631,8 +637,8 @@ Always show inline images: ** Refile targets #+BEGIN_SRC emacs-lisp (setq org-refile-use-outline-path 'file - org-refile-targets '(("~/org/todo.org" :level . 0) - ("~/org/backlog.org" :level . 0))) + org-refile-targets `((,(agenda-files "todo.org") :level . 0) + (,(agenda-files "backlog.org") :level . 0))) #+END_SRC ** Todo keywords @@ -644,18 +650,15 @@ Always show inline images: ** Agenda views #+BEGIN_SRC emacs-lisp (setq org-agenda-custom-commands - '(("t" "Todo list" + '(("T" "Todo list" ((agenda) - (todo "TODO" ((org-agenda-files '("~/org/todo.org" - "~/org/scheduled.org")))))) - ("b" "backlog" + (todo "TODO" ((org-agenda-files `(,(agenda-files "todo.org") + ,(agenda-files "scheduled.org"))))))) + ("B" "backlog" ((agenda) - (todo "TODO" ((org-agenda-files '("~/org/todo.org" - "~/org/backlog.org" - "~/org/scheduled.org")))))) - ("a" "all" - ((agenda) - (todo "TODO" ((org-agenda-files '("~/org")))))))) + (todo "TODO" ((org-agenda-files `(,(agenda-files "todo.org") + ,(agenda-files "backlog.org") + ,(agenda-files "scheduled.org"))))))))) #+END_SRC ** Keybindings