From b911096899b823fabd779edcd972b75662e3c8e2 Mon Sep 17 00:00:00 2001 From: Random936 Date: Fri, 24 Nov 2023 14:34:45 -0800 Subject: [PATCH] Added some custom capture template functions for daily todos --- .emacs.d/config.org | 3 +++ .emacs.d/functions.org | 19 ++++++++++++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/.emacs.d/config.org b/.emacs.d/config.org index 39dd218..bbfbc3a 100644 --- a/.emacs.d/config.org +++ b/.emacs.d/config.org @@ -569,6 +569,9 @@ Org mode by default contains an /agenda/ system which is like a basic calendar t (setq org-agenda-start-with-log-mode t) (setq org-log-done 'time) (setq org-log-into-drawer t) + +(setq org-priority-default ?D) +(setq org-priority-lowest ?D) #+end_src *** Refresh Org Agenda Files diff --git a/.emacs.d/functions.org b/.emacs.d/functions.org index 21ccc06..4977a0c 100644 --- a/.emacs.d/functions.org +++ b/.emacs.d/functions.org @@ -2,7 +2,24 @@ As of now, I haven't added anything here, though I do expect to start adding some custom functions as I learn more about Elisp. +* Capture Template Functions + +These functions are for my org roam daily capture template. + #+begin_src emacs-lisp -(message "functions.org: No functions yet!") +(defun jm/get-todos-with-priority (priority files) + (let ((items '())) + (org-map-entries + (lambda () + (when (equal priority (cdr (assoc "PRIORITY" (org-entry-properties)))) + (push (cdr (assoc "ITEM" (org-entry-properties))) items))) + "TODO=\"TODO\"" + files) + items)) + +(defun jm/format-org-todo-items (items) + (mapconcat (lambda (item) (concat "- [ ] " item)) + items + "\n")) #+end_src