diff --git a/dot_config/emacs/lisp/init-org.el b/dot_config/emacs/lisp/init-org.el index b457714..f46ff72 100644 --- a/dot_config/emacs/lisp/init-org.el +++ b/dot_config/emacs/lisp/init-org.el @@ -36,67 +36,87 @@ ("C-c c" . org-capture) ("C-c l" . org-store-link)) :config - (setopt org-agenda-files (list (concat org-directory "/personal") - (concat org-directory "/projects") - (concat org-directory "/work")) + (setopt org-agenda-files (directory-files-recursively org-directory "org$") + org-agenda-skip-deadline-if-done t + org-agenda-skip-scheduled-if-done t + org-agenda-start-on-weekday nil + org-archive-location (concat org-directory "/archive.org::* From %s") + org-blank-before-new-entry '((heading . auto) + (plain-list-item . auto)) + org-enforce-todo-dependencies t + org-fontify-quote-and-verse-blocks t org-hide-emphasis-markers t org-log-done 'time + org-refile-targets '((nil :maxlevel . 2) + (org-agenda-files :maxlevel . 2)) + org-refile-use-outline-path 'file org-return-follows-link t - org-todo-keywords '((sequence "TODO(t)" "IN-PROGRESS(i@/!)" "|" - "DONE(d!)" "BLOCKED(b@)" "WONT-DO(w@/!)" )) + org-src-preserve-indentation t + org-startup-folded 'content + org-todo-keywords '((sequence "BLOCKED(b@/!)" "IN-PROGRESS(i@/!)" + "TODO(t)" "WAITING(i@/!)" "|" "DONE(d!)" + "WONT-DO(w@/!)")) org-todo-keyword-faces '(("TODO" . (icon-button)) ("IN-PROGRESS" . (tool-bar)) ("BLOCKED" . (match)) ("WONT-DO" . (org-done)))) - (setopt org-capture-templates + (setq org-capture-templates `( ("m" "Personal") ("mj" "Log Entry" - entry (file+datetree ,(concat org-directory "/personal/log.org")) - "* %?" + entry (file+datetree ,(concat org-directory "/personal_log.org")) + "** %?" :empty-lines 1) ("mn" "Note" - entry (file+headline ,(concat org-directory "/personal/notes.org") "Note to self...") - "* %?" + entry (file+headline ,(concat org-directory "/notes.org") "Note to self...") + "** %?" :empty-lines 1) ("mt" "Todo" - entry (file+headline ,(concat org-directory "/personal/todo.org") "Personal Tasks") - "* TODO [#B] %?\n:Created: %T\n " + entry (file+headline ,(concat org-directory "/inbox.org") "You can do it!") + "** TODO [#B] %?\n:Created: %U\nSCHEDULED: %^{SCHEDULED: }T\n " :empty-lines 1) ("p" "Projects") ("pn" "Note" - entry (file+headline ,(concat org-directory "/projects/notes.org") "Project Notes") + entry (file+headline ,(concat org-directory "/notes.org") "Project Notes") "** %?" :empty-lines 1) ("pt" "Todo" - entry (file+headline ,(concat org-directory "/projects/todo.org") "Project Tasks") - "* TODO [#B] %?\n:Created: %T\n%i\n%a\nNotes: " - :empty-lines 0) + entry (file+headline ,(concat org-directory "/inbox.org") "Project Tasks") + "** TODO [#B] %?\n:Created: %U\nSCHEDULED: %^{SCHEDULED: }T\n%i\n%a\nNotes: " + :empty-lines 1) ("w" "Work") ("wn" "Note" - entry (file+headline "~/Nextcloud/Documents/org/work/notes.org" "Work notes") + entry (file+headline ,(concat org-directory "/notes.org") "Work Notes") "** %?" - :empty-lines 0) + :empty-lines 1) ("wt" "Todo" - entry (file+headline "~/Nextcloud/Documents/org/work/todo.org" "Work tasks") - "* TODO [#B] %?\n:Created: %T\n%i\n%a\nNotes: " - :empty-lines 0))) + entry (file+headline ,(concat org-directory "/inbox.org") "Work Tasks") + "** TODO [#B] %?\n:Created: %U\nSCHEDULED: %^{SCHEDULED: }T\n%i\n%a\nNotes: " + :empty-lines 1))) :hook (org-mode . org-indent-mode) :init (setopt org-directory "~/Nextcloud/Documents/org") - ;; (bind-keys :prefix-map as/org-prefix-map - ;; :prefix "C-c o" - ;; ("d" . org-priority-down) - ;; ("u" . org-priority-up) - ;; ("r" . org-shiftmetaright) - ;; ("l" . org-shiftmetaleft)) - ) + (bind-keys :prefix-map as/org-prefix-map + :prefix "C-c o" + ("n" . org-priority-down) + ("p" . org-priority-up) + ("f" . org-shiftmetaright) + ("b" . org-shiftmetaleft))) + +(use-package org-timeblock + :bind + (:map as/org-prefix-map + ("t" . org-timeblock)) + :config + (setopt org-timeblock-new-task-time 'pick + org-timeblock-show-future-repeats 'next + org-timeblock-span 3)) (provide 'init-org) ;;; org-mode.el ends here