diff options
-rw-r--r-- | org-urgency.el | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/org-urgency.el b/org-urgency.el index 85c0bec..2e0fd53 100644 --- a/org-urgency.el +++ b/org-urgency.el @@ -123,10 +123,26 @@ total urgency, or nil." (when (org-get-scheduled-time (get 'org-marker)) n)) +(org-urgency-define scheduled-today? () + (when-let ((scheduled (org-get-scheduled-time (get 'org-marker))) + (today? (= (time-to-days scheduled) + (org-today)))) + n)) + (org-urgency-define deadline? () (when (org-get-deadline-time (get 'org-marker)) n)) +(org-urgency-define near-deadline () + (when-let* ((deadline (org-get-deadline-time (get 'org-marker))) + (remaining (float-time + (time-subtract + deadline (org-current-time)))) + (remaining (max remaining 0)) + (maximum (* org-deadline-warning-days 24 60 60)) + (coeff (- maximum remaining))) + (* n coeff))) + (org-urgency-define tag? (tag) (when (member tag (get 'tags)) n)) @@ -143,6 +159,11 @@ total urgency, or nil." (org-urgency-define effort () (* (or (get 'effort-minutes) 60.0) n)) +(org-urgency-define random () + (random (concat (format-time-string "%Y %m %d %A ") h)) + (prog1 (random n) + (random t))) + ;;;###autoload (defun org-urgency-list (list) "Process LIST to make it a suitable value for `org-urgency-functions'. |