Fix: Compatibility with org>=9.2
The API for `org-get-tags-at` and `org-timestamp--to-internal-time` changed in org-mode version 9.2.
This commit is contained in:
parent
c7ea875e51
commit
6c7ec1cead
2 changed files with 13 additions and 4 deletions
|
|
@ -50,6 +50,9 @@
|
||||||
(defvar org-super-agenda-groups)
|
(defvar org-super-agenda-groups)
|
||||||
(declare-function org-super-agenda--group-items "org-super-agenda")
|
(declare-function org-super-agenda--group-items "org-super-agenda")
|
||||||
|
|
||||||
|
(when (version< org-version "9.2")
|
||||||
|
(defalias 'org-get-tags 'org-get-tags-at))
|
||||||
|
|
||||||
;;;; Variables
|
;;;; Variables
|
||||||
|
|
||||||
(defvar org-ql-agenda-buffer-name "*Org Agenda NG*"
|
(defvar org-ql-agenda-buffer-name "*Org Agenda NG*"
|
||||||
|
|
@ -328,8 +331,8 @@ Its property list should be the second item in the list, as returned by `org-ele
|
||||||
(if-let ((marker (or (org-element-property :org-hd-marker element)
|
(if-let ((marker (or (org-element-property :org-hd-marker element)
|
||||||
(org-element-property :org-marker element))))
|
(org-element-property :org-marker element))))
|
||||||
(with-current-buffer (marker-buffer marker)
|
(with-current-buffer (marker-buffer marker)
|
||||||
;; I wish `org-get-tags-at' used the correct buffer automatically.
|
;; I wish `org-get-tags' used the correct buffer automatically.
|
||||||
(org-get-tags-at marker (not org-use-tag-inheritance)))
|
(org-get-tags marker (not org-use-tag-inheritance)))
|
||||||
;; No marker found
|
;; No marker found
|
||||||
(warn "No marker found for item: %s" title)
|
(warn "No marker found for item: %s" title)
|
||||||
(org-element-property :tags element))
|
(org-element-property :tags element))
|
||||||
|
|
|
||||||
10
org-ql.el
10
org-ql.el
|
|
@ -25,6 +25,12 @@
|
||||||
|
|
||||||
(require 'dash)
|
(require 'dash)
|
||||||
|
|
||||||
|
;;;; Compatibility
|
||||||
|
|
||||||
|
(when (version< org-version "9.2")
|
||||||
|
(defalias 'org-get-tags 'org-get-tags-at)
|
||||||
|
(defalias 'org-timestamp-to-time 'org-timestamp--to-internal-time))
|
||||||
|
|
||||||
;;;; Variables
|
;;;; Variables
|
||||||
|
|
||||||
(defvar org-ql--today nil)
|
(defvar org-ql--today nil)
|
||||||
|
|
@ -457,8 +463,8 @@ With KEYWORDS, return non-nil if its keyword is one of KEYWORDS (a list of strin
|
||||||
(org-ql--defpredicate tags (&rest tags)
|
(org-ql--defpredicate tags (&rest tags)
|
||||||
"Return non-nil if current heading has one or more of TAGS (a list of strings)."
|
"Return non-nil if current heading has one or more of TAGS (a list of strings)."
|
||||||
;; TODO: Try to use `org-make-tags-matcher' to improve performance. It would be nice to not have
|
;; TODO: Try to use `org-make-tags-matcher' to improve performance. It would be nice to not have
|
||||||
;; to run `org-get-tags-at' for every heading, especially with inheritance.
|
;; to run `org-get-tags' for every heading, especially with inheritance.
|
||||||
(when-let ((tags-at (org-get-tags-at (point) (not org-use-tag-inheritance))))
|
(when-let ((tags-at (org-get-tags (point) (not org-use-tag-inheritance))))
|
||||||
(cl-typecase tags
|
(cl-typecase tags
|
||||||
(null t)
|
(null t)
|
||||||
(otherwise (seq-intersection tags tags-at)))))
|
(otherwise (seq-intersection tags tags-at)))))
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue