summaryrefslogtreecommitdiff
path: root/emacs-config.org
diff options
context:
space:
mode:
Diffstat (limited to 'emacs-config.org')
-rw-r--r--emacs-config.org209
1 files changed, 209 insertions, 0 deletions
diff --git a/emacs-config.org b/emacs-config.org
index d012c39..0884401 100644
--- a/emacs-config.org
+++ b/emacs-config.org
@@ -931,6 +931,215 @@ Set default clocktable parameters.
'(:link t :fileskip0 t :hidefiles t :formatter +org-clocktable-format))
#+end_src
+*** Org Capture
+#+begin_src elisp :noweb yes
+ (with-eval-after-load 'org-capture
+ <<org-capture-quick-keys>>
+ <<org-capture-personal-keys>>)
+#+end_src
+
+**** Capture Templates
+Task template.
+#+begin_src elisp :tangle no :noweb-ref capture-task-template
+ "* IDLE %^{Task} %^G
+ :PROPERTIES:
+ :CAPTURED: %U
+ :END:"
+#+end_src
+
+Event template.
+#+begin_src elisp :tangle no :noweb-ref capture-event-template
+ "* %^{Event}
+ SCHEDULED: %^T
+ :PROPERTIES:
+ :CAPTURED: %U
+ :END:"
+#+end_src
+
+Note template.
+#+begin_src elisp :tangle no :noweb-ref capture-note-template
+ "* %^{Note} %^G
+ :PROPERTIES:
+ :CAPTURED: %U
+ :END:"
+#+end_src
+
+Meeting template.
+#+begin_src elisp :tangle no :noweb-ref capture-meeting-template
+ "* TODO Meeting with: *%\\1* at *%\\2* :meeting:
+ SCHEDULED: %^T
+ :PROPERTIES:
+ :CAPTURED: %U
+ :NAME: %^{Name}
+ :LOCATION: %^{Location}
+ :END:"
+#+end_src
+
+Goal setting template.
+#+begin_src elisp :tangle no :noweb-ref capture-goal-template
+ "* [/] %^{Goal Title} :goal:
+ DEADLINE: %^{When do you expect this goal to be completed?}t
+ :PROPERTIES:
+ :CAPTURED: %U
+ :END:
+
+ :SMART:
+ :SPECIFIC: %^{What SPECIFICALLY is the goal?}
+ :MEASURABLE: %^{What RESULTS will determine the completion of the goal?}
+ :ACTIONABLE: %^{What ACTIONS will you take to accomplish this goal?}
+ :RELEVANT: %^{Why is it IMPORTANT to accomplish this goal?}
+ :TIMELY: Due by =DEADLINE=
+ :END:"
+#+end_src
+
+Daily review template.
+#+begin_src elisp :tangle no :noweb-ref capture-weekly-review-template
+ ":PROPERTIES:
+ :CAPTURED: %U
+ :END:
+ %?
+ ,,#+BEGIN: clocktable :scope agenda-with-archives :block %t
+ ,,#+END:"
+#+end_src
+
+Weekly review template.
+#+begin_src elisp :tangle no :noweb-ref capture-weekly-review-template
+ ":PROPERTIES:
+ :CAPTURED: %U
+ :END:
+ %?
+ ,,#+BEGIN: clocktable :scope agenda-with-archives :block %<%Y>-W%<%V>
+ ,,#+END:"
+#+end_src
+
+Monthly review template.
+#+begin_src elisp :tangle no :noweb-ref capture-monthly-review-template
+ ":PROPERTIES:
+ :CAPTURED: %U
+ :END:
+ %?
+ ,,#+BEGIN: clocktable :scope agenda-with-archives :block %<%Y-%m>
+ ,,#+END:"
+#+end_src
+
+**** Capture Template Quick Keys
+:PROPERTIES:
+:header-args:elisp: :tangle no :noweb-ref org-capture-quick-keys
+:END:
+
+Capture a quick task.
+#+begin_src elisp :noweb yes
+ (cl-pushnew
+ '("c" "Quick Task (personal)" entry
+ (file "agenda/tasks.org")
+ <<capture-task-template>>
+ :prepend t
+ :empty-lines-after 1
+ :immediate-finish t)
+ org-capture-templates)
+#+end_src
+
+Capture event.
+#+begin_src elisp
+ (cl-pushnew
+ '("v" "Event" entry
+ (file "agenda/events.org")
+ <<capture-event>>
+ :prepend t
+ :empty-lines-after 1
+ :immediate-finish t)
+ org-capture-templates)
+#+end_src
+
+Captured to last clocked file.
+#+begin_src elisp
+ (cl-pushnew
+ '("l" "Clocked File" item (clock) nil)
+ org-capture-templates)
+#+end_src
+
+**** Capture Template Personal Keys
+:PROPERTIES:
+:header-args:elisp: :tangle no :noweb-ref org-capture-personal-keys
+:END:
+
+Personal capture templates.
+#+begin_src elisp
+ (cl-pushnew '("p" "personal...") org-capture-templates)
+
+ (cl-pushnew
+ '("pt" "Task" entry
+ (file "agenda/tasks.org")
+ <<capture-task-template>>
+ :prepend t
+ :empty-lines-after 1
+ :immediate-finish t)
+ org-capture-templates)
+
+ (cl-pushnew
+ '("pT" "Detailed Task" entry
+ (file "agenda/tasks.org")
+ <<capture-task-template>>
+ :prepend t
+ :empty-lines-after 1)
+ org-capture-templates)
+
+ (cl-pushnew
+ '("pp" "Plan Today" checkitem
+ (file+olp+datetree "agenda/planner.org")
+ nil
+ :empty-lines-after 1
+ :jump-to-captured t)
+ org-capture-templates)
+
+ (cl-pushnew
+ '("pn" "Note" entry (file "notes/notes.org")
+ <<capture-note-template>>
+ :empty-lines-after 1)
+ org-capture-templates)
+
+ (cl-pushnew
+ '("pe" "Meeting" entry
+ (file "agenda/tasks.org")
+ <<capture-meeting-template>>
+ :prepend t
+ :empty-lines-after 1)
+ org-capture-templates)
+#+end_src
+
+Review captures.
+#+begin_src elisp
+ (cl-pushnew '("pr" "Review") org-capture-templates)
+
+ (cl-pushnew
+ '("prd" "Daily Review" plain
+ (file+olp+datetree "agenda/planner.org" "Reviews" "Daily")
+ <<capture-daily-review-template>>
+ :time-prompt t
+ :empty-lines-after 1)
+ org-capture-templates)
+
+ (cl-pushnew
+ '("prw" "Weekly Review" plain
+ (file+olp+datetree "agenda/planner.org" "Reviews" "Weekly")
+ <<capture-weekly-review-template>>
+ :time-prompt t
+ :tree-type week
+ :jump-to-captured t
+ :empty-lines-after 1)
+ org-capture-templates)
+
+ (cl-pushnew
+ '("prm" "Monthly Review" plain
+ (file+olp+datetree "agenda/planner.org" "Reviews" "Monthly")
+ <<capture-monthly-review-template>>
+ :time-prompt t
+ :tree-type month
+ :jump-to-captured t
+ :empty-lines-after 1)
+ org-capture-templates)
+#+end_src
+
** Error Checking
Enable flymake for programming modes.
#+begin_src elisp