Merge: 0.3.2
This commit is contained in:
commit
d5c26b7f60
5 changed files with 26 additions and 6 deletions
|
|
@ -388,6 +388,13 @@ Expands into a call to ~org-ql-select~ with the same arguments. For convenience
|
||||||
*Internal*
|
*Internal*
|
||||||
+ Added generic node data cache to speed up recursive, tree-based queries.
|
+ Added generic node data cache to speed up recursive, tree-based queries.
|
||||||
|
|
||||||
|
** 0.3.2
|
||||||
|
|
||||||
|
*Fixed*
|
||||||
|
+ In =org-ql-search=, accept symbol as ~:super-groups~ argument.
|
||||||
|
+ In the =This week= and =Next week= default =org-ql-views= views, set timestamps for beginning-of-week to 00:00:00 and end-of-week to 23:59:59.
|
||||||
|
+ Plain quoted-phrases in non-sexp queries.
|
||||||
|
|
||||||
** 0.3.1
|
** 0.3.1
|
||||||
|
|
||||||
*Fixed*
|
*Fixed*
|
||||||
|
|
|
||||||
|
|
@ -212,7 +212,9 @@ necessary."
|
||||||
(org-ql-view-super-groups super-groups)
|
(org-ql-view-super-groups super-groups)
|
||||||
(org-ql-view-title title))
|
(org-ql-view-title title))
|
||||||
(when super-groups
|
(when super-groups
|
||||||
(let ((org-super-agenda-groups super-groups))
|
(let ((org-super-agenda-groups (cl-etypecase super-groups
|
||||||
|
(symbol (symbol-value super-groups))
|
||||||
|
(list super-groups))))
|
||||||
(setf strings (org-super-agenda--group-items strings))))
|
(setf strings (org-super-agenda--group-items strings))))
|
||||||
(org-ql-view--display :buffer buffer :header header
|
(org-ql-view--display :buffer buffer :header header
|
||||||
:string (s-join "\n" strings)))))
|
:string (s-join "\n" strings)))))
|
||||||
|
|
|
||||||
|
|
@ -147,8 +147,13 @@ See info node `(elisp)Cyclic Window Ordering'."
|
||||||
(cons "This week" (lambda ()
|
(cons "This week" (lambda ()
|
||||||
"Show items with an active timestamp during this calendar week."
|
"Show items with an active timestamp during this calendar week."
|
||||||
(interactive)
|
(interactive)
|
||||||
(let* ((beg-of-week (ts-adjust 'day (- (ts-dow (ts-now))) (ts-now)))
|
(let* ((ts (ts-now))
|
||||||
(end-of-week (ts-adjust 'day (- 6 (ts-dow (ts-now))) (ts-now))))
|
(beg-of-week (->> ts
|
||||||
|
(ts-adjust 'day (- (ts-dow (ts-now))))
|
||||||
|
(ts-apply :hour 0 :minute 0 :second 0)))
|
||||||
|
(end-of-week (->> ts
|
||||||
|
(ts-adjust 'day (- 6 (ts-dow (ts-now))))
|
||||||
|
(ts-apply :hour 23 :minute 59 :second 59))))
|
||||||
(org-ql-search (org-agenda-files)
|
(org-ql-search (org-agenda-files)
|
||||||
`(ts-active :from ,beg-of-week
|
`(ts-active :from ,beg-of-week
|
||||||
:to ,end-of-week)
|
:to ,end-of-week)
|
||||||
|
|
@ -159,8 +164,12 @@ See info node `(elisp)Cyclic Window Ordering'."
|
||||||
"Show items with an active timestamp during the next calendar week."
|
"Show items with an active timestamp during the next calendar week."
|
||||||
(interactive)
|
(interactive)
|
||||||
(let* ((ts (ts-adjust 'day 7 (ts-now)))
|
(let* ((ts (ts-adjust 'day 7 (ts-now)))
|
||||||
(beg-of-week (ts-adjust 'day (- (ts-dow (ts-now))) ts))
|
(beg-of-week (->> ts
|
||||||
(end-of-week (ts-adjust 'day (- 6 (ts-dow (ts-now))) ts)))
|
(ts-adjust 'day (- (ts-dow (ts-now))))
|
||||||
|
(ts-apply :hour 0 :minute 0 :second 0)))
|
||||||
|
(end-of-week (->> ts
|
||||||
|
(ts-adjust 'day (- 6 (ts-dow (ts-now))))
|
||||||
|
(ts-apply :hour 23 :minute 59 :second 59))))
|
||||||
(org-ql-search (org-agenda-files)
|
(org-ql-search (org-agenda-files)
|
||||||
`(ts-active :from ,beg-of-week
|
`(ts-active :from ,beg-of-week
|
||||||
:to ,end-of-week)
|
:to ,end-of-week)
|
||||||
|
|
|
||||||
|
|
@ -1496,7 +1496,7 @@ Multiple predicates are combined with BOOLEAN."
|
||||||
(positive-term (or (and predicate-with-args `(pred args -- (cons (intern pred) args)))
|
(positive-term (or (and predicate-with-args `(pred args -- (cons (intern pred) args)))
|
||||||
(and predicate-without-args `(pred -- (list (intern pred))))
|
(and predicate-without-args `(pred -- (list (intern pred))))
|
||||||
(and plain-string `(s -- (list 'regexp s)))))
|
(and plain-string `(s -- (list 'regexp s)))))
|
||||||
(plain-string (substring (+ (not (syntax-class whitespace)) (any))))
|
(plain-string (or quoted-arg unquoted-arg))
|
||||||
(predicate-with-args (substring predicate) ":" args)
|
(predicate-with-args (substring predicate) ":" args)
|
||||||
(predicate-without-args (substring predicate) ":")
|
(predicate-without-args (substring predicate) ":")
|
||||||
(predicate (or ,@predicates))
|
(predicate (or ,@predicates))
|
||||||
|
|
|
||||||
|
|
@ -246,6 +246,8 @@ RESULTS should be a list of strings as returned by
|
||||||
(expect (org-ql--plain-query "scheduled")
|
(expect (org-ql--plain-query "scheduled")
|
||||||
;; No colon after keyword, so not a predicate query.
|
;; No colon after keyword, so not a predicate query.
|
||||||
:to-equal '(regexp "scheduled"))
|
:to-equal '(regexp "scheduled"))
|
||||||
|
(expect (org-ql--plain-query "\"quoted phrase\"")
|
||||||
|
:to-equal '(regexp "quoted phrase"))
|
||||||
(expect (org-ql--plain-query "regexp:word")
|
(expect (org-ql--plain-query "regexp:word")
|
||||||
:to-equal '(regexp "word"))
|
:to-equal '(regexp "word"))
|
||||||
(expect (org-ql--plain-query "regexp:\"quoted phrase\"")
|
(expect (org-ql--plain-query "regexp:\"quoted phrase\"")
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue