|
@@ -4500,9 +4500,9 @@ is active."
|
|
|
(setq files (org-agenda-files nil 'ifmode))
|
|
|
;; Add `org-agenda-text-search-extra-files' unless there is some
|
|
|
;; restriction.
|
|
|
- (unless (get 'org-agenda-files 'org-restrict)
|
|
|
- (when (eq (car org-agenda-text-search-extra-files) 'agenda-archives)
|
|
|
- (pop org-agenda-text-search-extra-files)
|
|
|
+ (when (eq (car org-agenda-text-search-extra-files) 'agenda-archives)
|
|
|
+ (pop org-agenda-text-search-extra-files)
|
|
|
+ (unless (get 'org-agenda-files 'org-restrict)
|
|
|
(setq files (org-add-archive-files files))))
|
|
|
;; Uniquify files. However, let `org-check-agenda-file' handle
|
|
|
;; non-existent ones.
|
|
@@ -4763,11 +4763,11 @@ The prefix arg TODO-ONLY limits the search to TODO entries."
|
|
|
(format "*Org Agenda(%s:%s)*"
|
|
|
(or org-keys (or (and todo-only "M") "m")) match)
|
|
|
(format "*Org Agenda(%s)*" (or (and todo-only "M") "m")))))
|
|
|
+ (setq matcher (org-make-tags-matcher match))
|
|
|
;; Prepare agendas (and `org-tag-alist-for-agenda') before
|
|
|
;; expanding tags within `org-make-tags-matcher'
|
|
|
(org-agenda-prepare (concat "TAGS " match))
|
|
|
- (setq matcher (org-make-tags-matcher match)
|
|
|
- match (car matcher)
|
|
|
+ (setq match (car matcher)
|
|
|
matcher (cdr matcher))
|
|
|
(org-compile-prefix-format 'tags)
|
|
|
(org-set-sorting-strategy 'tags)
|
|
@@ -6001,29 +6001,24 @@ specification like [h]h:mm."
|
|
|
(org-agenda--timestamp-to-absolute
|
|
|
s base 'future (current-buffer) pos)))))
|
|
|
(diff (- deadline current))
|
|
|
- (suppress-prewarning
|
|
|
- (let ((scheduled
|
|
|
- (and org-agenda-skip-deadline-prewarning-if-scheduled
|
|
|
- (org-entry-get nil "SCHEDULED"))))
|
|
|
- (cond
|
|
|
- ((not scheduled) nil)
|
|
|
- ;; The current item has a scheduled date, so
|
|
|
- ;; evaluate its prewarning lead time.
|
|
|
- ((integerp org-agenda-skip-deadline-prewarning-if-scheduled)
|
|
|
- ;; Use global prewarning-restart lead time.
|
|
|
- org-agenda-skip-deadline-prewarning-if-scheduled)
|
|
|
- ((eq org-agenda-skip-deadline-prewarning-if-scheduled
|
|
|
- 'pre-scheduled)
|
|
|
- ;; Set pre-warning to no earlier than SCHEDULED.
|
|
|
- (min (- deadline
|
|
|
- (org-agenda--timestamp-to-absolute scheduled))
|
|
|
- org-deadline-warning-days))
|
|
|
- ;; Set pre-warning to deadline.
|
|
|
- (t 0))))
|
|
|
- (wdays (if suppress-prewarning
|
|
|
- (let ((org-deadline-warning-days suppress-prewarning))
|
|
|
- (org-get-wdays s))
|
|
|
- (org-get-wdays s))))
|
|
|
+ (wdays
|
|
|
+ (cond
|
|
|
+ ;; The current item has a scheduled date, so
|
|
|
+ ;; evaluate its prewarning lead time.
|
|
|
+ ((integerp org-agenda-skip-deadline-prewarning-if-scheduled)
|
|
|
+ ;; Use global prewarning-restart lead time.
|
|
|
+ org-agenda-skip-deadline-prewarning-if-scheduled)
|
|
|
+ ((eq org-agenda-skip-deadline-prewarning-if-scheduled
|
|
|
+ 'pre-scheduled)
|
|
|
+ ;; Set pre-warning to no earlier than SCHEDULED.
|
|
|
+ (min (- deadline
|
|
|
+ (org-agenda--timestamp-to-absolute
|
|
|
+ (org-entry-get nil "SCHEDULED")))
|
|
|
+ org-deadline-warning-days))
|
|
|
+ ;; Set pre-warning to 0
|
|
|
+ (org-agenda-skip-deadline-prewarning-if-scheduled 0)
|
|
|
+ ;; Set pre-warning to deadline.
|
|
|
+ (t (org-get-wdays s)))))
|
|
|
(cond
|
|
|
;; Only display deadlines at their base date, at future
|
|
|
;; repeat occurrences or in today agenda.
|