125 lines
4.5 KiB
EmacsLisp
125 lines
4.5 KiB
EmacsLisp
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
; inspiration for conditional capture template : https://storax.github.io/blog/2016/05/02/org-capture-tricks/
|
|
|
|
; helper functions
|
|
(defvar my-capture-prmt-history nil
|
|
"History of prompt answers for org capture.")
|
|
(defun my/prmt (prompt variable)
|
|
"PROMPT for string, save it to VARIABLE and insert it."
|
|
(make-local-variable variable)
|
|
(set variable (read-string (concat prompt ": ") nil my-capture-prmt-history)))
|
|
(defun my/inc (what text &rest fmtvars)
|
|
"Ask user to include WHAT. If user agrees return TEXT."
|
|
(when (y-or-n-p (concat "Include " what "?"))
|
|
(apply 'format text fmtvars)))
|
|
(defun my/inc_date (what prefix)
|
|
"Ask user to include a date. If user agrees prompt for date."
|
|
(when (y-or-n-p (concat "Include " what "?"))
|
|
(concat prefix (org-time-stamp nil))))
|
|
|
|
; orgmode capture templates
|
|
(setq org-capture-templates '(
|
|
("b" "Book to buy / process" entry
|
|
(file "~/org/orgzly/_slipbox.org")
|
|
(file "~/org/_org-capture-templates/template_book.org")
|
|
:prepend t
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
)
|
|
("d" "TODO (Main)" entry
|
|
(file "~/org/orgzly/_todo.org")
|
|
(file "~/org/_org-capture-templates/template_todo.org")
|
|
:prepend t
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
)
|
|
("s" "TODO (Slipbox)" entry
|
|
(file "~/org/orgzly/_slipbox.org")
|
|
(file "~/org/_org-capture-templates/template_slipbox.org")
|
|
:prepend t
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
)
|
|
("b" "Blog Post" entry
|
|
(file+headline "~/org/blog/_blog.org" "Drafts")
|
|
(file "~/org/_org-capture-templates/template_blog.org")
|
|
)
|
|
("g" "Gaming")
|
|
("gd" "Destiny")
|
|
("gdc" "To Do - Crafted Gun"
|
|
entry (id "65a28e9e-e484-4722-8a25-4fbf0a8dea2c")
|
|
(file "~/org/_org-capture-templates/template_game_destiny_gun.org")
|
|
:prepend t
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
:unnarrowed "t"
|
|
)
|
|
("gw" "Warframe")
|
|
("gwd" "Daily Reset"
|
|
entry (file+headline "~/org/games/games_warframe.org" "Daily / Weekly Reset")
|
|
(file "~/org/_org-capture-templates/template_game_warframe_daily_reset.org")
|
|
:prepend t
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
:unnarrowed "t"
|
|
)
|
|
("gww" "Weekly Reset"
|
|
entry (file+headline "~/org/games/games_warframe.org" "Daily / Weekly Reset")
|
|
(file "~/org/_org-capture-templates/template_game_warframe_weekly_reset.org")
|
|
:prepend t
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
:unnarrowed "t"
|
|
)
|
|
("gwt" "To Do"
|
|
entry (file+headline "~/org/games/games_warframe.org" "To Do")
|
|
"** TODO %^{Heading}\n:LOGBOOK:\n- Created: %U\n:END:%?"
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
:unnarrowed "t"
|
|
:prepend "t"
|
|
)
|
|
("h" "Health")
|
|
("hc" "Couples")
|
|
("hcd" "Appointment noteworthy developments / [time] in review"
|
|
entry (file "~/org/orgzly/_slipbox.org")
|
|
(file "~/org/_org-capture-templates/template_couples_apt_developments.org")
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
:unnarrowed "t"
|
|
:prepend "t"
|
|
)
|
|
("hm" "Mike")
|
|
("hmd" "Appointment noteworthy developments / [time] in review"
|
|
entry (file "~/org/orgzly/_slipbox.org")
|
|
"* READY [#A] %^{Heading} :health:appointment:%^g\nDEADLINE: %^t\n:LOGBOOK:\n- Created: %U\n:END:%?"
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
:unnarrowed "t"
|
|
:prepend "t"
|
|
)
|
|
("m" "Music import (beets)" entry
|
|
(file "~/org/orgzly/_slipbox.org")
|
|
(file "~/org/_org-capture-templates/template_beets.org")
|
|
:prepend t
|
|
:immediate-finish "f"
|
|
:jump-to-captured "t"
|
|
)
|
|
("r" "Recipe")
|
|
("rs" "Standard" plain
|
|
(file "~/org/culinary/_recipes.org")
|
|
(file "~/org/_org-capture-templates/template_culinary_recipe.org")
|
|
:empty-lines-before 1
|
|
)
|
|
("rb" "Budget Bytes" plain
|
|
(file "~/org/culinary/_recipes.org")
|
|
(file "~/org/_org-capture-templates/template_culinary_budget_bytes.org")
|
|
:empty-lines-before 1
|
|
)
|
|
("t" "Trip" entry
|
|
(file+headline "~/org/trips.org" "Planned")
|
|
(file "~/org/_org-capture-templates/template_trip.org")
|
|
:empty-lines-before 1
|
|
)
|
|
))
|