From b8284c8f5caf16a1c6b4408344477eff0991ba7c Mon Sep 17 00:00:00 2001 From: Adam Porter Date: Wed, 26 Jun 2024 09:58:11 -0500 Subject: [PATCH 1/8] Meta: v0.8.7-pre --- README.org | 4 + org-ql.el | 2 +- org-ql.info | 241 +++++++++++++++++++++++++++------------------------- 3 files changed, 131 insertions(+), 116 deletions(-) diff --git a/README.org b/README.org index e4f791ee..e38b31c7 100644 --- a/README.org +++ b/README.org @@ -553,6 +553,10 @@ Simple links may also be written manually in either sexp or non-sexp form, like: /Note:/ Breaking changes may be made before version 1.0, but in the event of major changes, attempts at backward compatibility will be made with obsolescence declarations, translation of arguments, etc. Users who need stability guarantees before 1.0 may choose to use tagged stable releases. +** 0.8.7-pre + +Nothing new yet. + ** 0.8.6 *Fixes* diff --git a/org-ql.el b/org-ql.el index f8a84bbb..ead158ef 100644 --- a/org-ql.el +++ b/org-ql.el @@ -4,7 +4,7 @@ ;; Author: Adam Porter ;; Url: https://github.com/alphapapa/org-ql -;; Version: 0.8.6 +;; Version: 0.8.7-pre ;; Package-Requires: ((emacs "27.1") (compat "29.1") (dash "2.18.1") (f "0.17.2") (map "2.1") (org "9.0") (org-super-agenda "1.2") (ov "1.0.6") (peg "1.0.1") (s "1.12.0") (transient "0.1") (ts "0.2-pre")) ;; Keywords: hypermedia, outlines, Org, agenda diff --git a/org-ql.info b/org-ql.info index 519a64f1..dffc0ab7 100644 --- a/org-ql.info +++ b/org-ql.info @@ -72,6 +72,7 @@ Functions / Macros Changelog +* 0.8.7-pre: 087-pre. * 0.8.6: 086. * 0.8.5: 085. * 0.8.4: 084. @@ -1034,6 +1035,7 @@ releases. * Menu: +* 0.8.7-pre: 087-pre. * 0.8.6: 086. * 0.8.5: 085. * 0.8.4: 084. @@ -1073,9 +1075,17 @@ releases. * 0.1: 01.  -File: README.info, Node: 086, Next: 085, Up: Changelog +File: README.info, Node: 087-pre, Next: 086, Up: Changelog -5.1 0.8.6 +5.1 0.8.7-pre +============= + +Nothing new yet. + + +File: README.info, Node: 086, Next: 085, Prev: 087-pre, Up: Changelog + +5.2 0.8.6 ========= *Fixes* @@ -1085,7 +1095,7 @@ File: README.info, Node: 086, Next: 085, Up: Changelog  File: README.info, Node: 085, Next: 084, Prev: 086, Up: Changelog -5.2 0.8.5 +5.3 0.8.5 ========= *Fixes* @@ -1102,7 +1112,7 @@ File: README.info, Node: 085, Next: 084, Prev: 086, Up: Changelog  File: README.info, Node: 084, Next: 083, Prev: 085, Up: Changelog -5.3 0.8.4 +5.4 0.8.4 ========= *Fixes* @@ -1116,7 +1126,7 @@ File: README.info, Node: 084, Next: 083, Prev: 085, Up: Changelog  File: README.info, Node: 083, Next: 082, Prev: 084, Up: Changelog -5.4 0.8.3 +5.5 0.8.3 ========= *Fixes* @@ -1129,7 +1139,7 @@ File: README.info, Node: 083, Next: 082, Prev: 084, Up: Changelog  File: README.info, Node: 082, Next: 081, Prev: 083, Up: Changelog -5.5 0.8.2 +5.6 0.8.2 ========= *Fixes* @@ -1143,7 +1153,7 @@ File: README.info, Node: 082, Next: 081, Prev: 083, Up: Changelog  File: README.info, Node: 081, Next: 08, Prev: 082, Up: Changelog -5.6 0.8.1 +5.7 0.8.1 ========= *Fixes* @@ -1158,7 +1168,7 @@ File: README.info, Node: 081, Next: 08, Prev: 082, Up: Changelog  File: README.info, Node: 08, Next: 074, Prev: 081, Up: Changelog -5.7 0.8 +5.8 0.8 ======= *Additions* @@ -1214,7 +1224,7 @@ File: README.info, Node: 08, Next: 074, Prev: 081, Up: Changelog  File: README.info, Node: 074, Next: 073, Prev: 08, Up: Changelog -5.8 0.7.4 +5.9 0.7.4 ========= *Fixes* @@ -1224,8 +1234,8 @@ File: README.info, Node: 074, Next: 073, Prev: 08, Up: Changelog  File: README.info, Node: 073, Next: 072, Prev: 074, Up: Changelog -5.9 0.7.3 -========= +5.10 0.7.3 +========== *Fixes* • Disable ‘case-fold-search’ when collecting headings in outline @@ -1242,7 +1252,7 @@ File: README.info, Node: 073, Next: 072, Prev: 074, Up: Changelog  File: README.info, Node: 072, Next: 071, Prev: 073, Up: Changelog -5.10 0.7.2 +5.11 0.7.2 ========== *Fixes* @@ -1263,7 +1273,7 @@ File: README.info, Node: 072, Next: 071, Prev: 073, Up: Changelog  File: README.info, Node: 071, Next: 07, Prev: 072, Up: Changelog -5.11 0.7.1 +5.12 0.7.1 ========== *Fixes* @@ -1282,7 +1292,7 @@ File: README.info, Node: 071, Next: 07, Prev: 072, Up: Changelog  File: README.info, Node: 07, Next: 063, Prev: 071, Up: Changelog -5.12 0.7 +5.13 0.7 ======== *Added* @@ -1341,7 +1351,7 @@ File: README.info, Node: 07, Next: 063, Prev: 071, Up: Changelog  File: README.info, Node: 063, Next: 062, Prev: 07, Up: Changelog -5.13 0.6.3 +5.14 0.6.3 ========== *Fixed* @@ -1357,7 +1367,7 @@ File: README.info, Node: 063, Next: 062, Prev: 07, Up: Changelog  File: README.info, Node: 062, Next: 061, Prev: 063, Up: Changelog -5.14 0.6.2 +5.15 0.6.2 ========== *Fixed* @@ -1368,7 +1378,7 @@ File: README.info, Node: 062, Next: 061, Prev: 063, Up: Changelog  File: README.info, Node: 061, Next: 06, Prev: 062, Up: Changelog -5.15 0.6.1 +5.16 0.6.1 ========== *Fixed* @@ -1386,7 +1396,7 @@ File: README.info, Node: 061, Next: 06, Prev: 062, Up: Changelog  File: README.info, Node: 06, Next: 052, Prev: 061, Up: Changelog -5.16 0.6 +5.17 0.6 ======== *Added* @@ -1453,7 +1463,7 @@ File: README.info, Node: 06, Next: 052, Prev: 061, Up: Changelog  File: README.info, Node: 052, Next: 051, Prev: 06, Up: Changelog -5.17 0.5.2 +5.18 0.5.2 ========== *Fixed* @@ -1464,7 +1474,7 @@ File: README.info, Node: 052, Next: 051, Prev: 06, Up: Changelog  File: README.info, Node: 051, Next: 05, Prev: 052, Up: Changelog -5.18 0.5.1 +5.19 0.5.1 ========== *Fixed* @@ -1477,7 +1487,7 @@ File: README.info, Node: 051, Next: 05, Prev: 052, Up: Changelog  File: README.info, Node: 05, Next: 049, Prev: 051, Up: Changelog -5.19 0.5 +5.20 0.5 ======== *Added* @@ -1518,7 +1528,7 @@ File: README.info, Node: 05, Next: 049, Prev: 051, Up: Changelog  File: README.info, Node: 049, Next: 048, Prev: 05, Up: Changelog -5.20 0.4.9 +5.21 0.4.9 ========== *Fixed* @@ -1529,7 +1539,7 @@ File: README.info, Node: 049, Next: 048, Prev: 05, Up: Changelog  File: README.info, Node: 048, Next: 047, Prev: 049, Up: Changelog -5.21 0.4.8 +5.22 0.4.8 ========== *Fixed* @@ -1541,7 +1551,7 @@ File: README.info, Node: 048, Next: 047, Prev: 049, Up: Changelog  File: README.info, Node: 047, Next: 046, Prev: 048, Up: Changelog -5.22 0.4.7 +5.23 0.4.7 ========== *Fixed* @@ -1554,7 +1564,7 @@ File: README.info, Node: 047, Next: 046, Prev: 048, Up: Changelog  File: README.info, Node: 046, Next: 045, Prev: 047, Up: Changelog -5.23 0.4.6 +5.24 0.4.6 ========== *Fixed* @@ -1567,7 +1577,7 @@ File: README.info, Node: 046, Next: 045, Prev: 047, Up: Changelog  File: README.info, Node: 045, Next: 044, Prev: 046, Up: Changelog -5.24 0.4.5 +5.25 0.4.5 ========== *Fixed* @@ -1579,7 +1589,7 @@ File: README.info, Node: 045, Next: 044, Prev: 046, Up: Changelog  File: README.info, Node: 044, Next: 043, Prev: 045, Up: Changelog -5.25 0.4.4 +5.26 0.4.4 ========== *Fixed* @@ -1591,7 +1601,7 @@ File: README.info, Node: 044, Next: 043, Prev: 045, Up: Changelog  File: README.info, Node: 043, Next: 042, Prev: 044, Up: Changelog -5.26 0.4.3 +5.27 0.4.3 ========== *Fixed* @@ -1601,7 +1611,7 @@ File: README.info, Node: 043, Next: 042, Prev: 044, Up: Changelog  File: README.info, Node: 042, Next: 041, Prev: 043, Up: Changelog -5.27 0.4.2 +5.28 0.4.2 ========== *Fixed* @@ -1610,7 +1620,7 @@ File: README.info, Node: 042, Next: 041, Prev: 043, Up: Changelog  File: README.info, Node: 041, Next: 04, Prev: 042, Up: Changelog -5.28 0.4.1 +5.29 0.4.1 ========== *Fixed* @@ -1620,7 +1630,7 @@ File: README.info, Node: 041, Next: 04, Prev: 042, Up: Changelog  File: README.info, Node: 04, Next: 032, Prev: 041, Up: Changelog -5.29 0.4 +5.30 0.4 ======== _Note:_ The next release, 0.5, may include changes which will require @@ -1701,7 +1711,7 @@ automatically, as they will be pushed to the ‘master’ branch when ready.  File: README.info, Node: 032, Next: 031, Prev: 04, Up: Changelog -5.30 0.3.2 +5.31 0.3.2 ========== *Fixed* @@ -1714,7 +1724,7 @@ File: README.info, Node: 032, Next: 031, Prev: 04, Up: Changelog  File: README.info, Node: 031, Next: 03, Prev: 032, Up: Changelog -5.31 0.3.1 +5.32 0.3.1 ========== *Fixed* @@ -1724,7 +1734,7 @@ File: README.info, Node: 031, Next: 03, Prev: 032, Up: Changelog  File: README.info, Node: 03, Next: 023, Prev: 031, Up: Changelog -5.32 0.3 +5.33 0.3 ======== *Added* @@ -1792,7 +1802,7 @@ File: README.info, Node: 03, Next: 023, Prev: 031, Up: Changelog  File: README.info, Node: 023, Next: 022, Prev: 03, Up: Changelog -5.33 0.2.3 +5.34 0.2.3 ========== *Fixed* @@ -1802,7 +1812,7 @@ File: README.info, Node: 023, Next: 022, Prev: 03, Up: Changelog  File: README.info, Node: 022, Next: 021, Prev: 023, Up: Changelog -5.34 0.2.2 +5.35 0.2.2 ========== *Fixed* @@ -1813,7 +1823,7 @@ File: README.info, Node: 022, Next: 021, Prev: 023, Up: Changelog  File: README.info, Node: 021, Next: 02, Prev: 022, Up: Changelog -5.35 0.2.1 +5.36 0.2.1 ========== *Fixed* @@ -1823,7 +1833,7 @@ File: README.info, Node: 021, Next: 02, Prev: 022, Up: Changelog  File: README.info, Node: 02, Next: 01, Prev: 021, Up: Changelog -5.36 0.2 +5.37 0.2 ======== *Added* @@ -1906,7 +1916,7 @@ File: README.info, Node: 02, Next: 01, Prev: 021, Up: Changelog  File: README.info, Node: 01, Prev: 02, Up: Changelog -5.37 0.1 +5.38 0.1 ======== First tagged release. @@ -1964,82 +1974,83 @@ GPLv3  Tag Table: Node: Top225 -Node: Contents1935 -Node: Screenshots2058 -Node: Installation2176 -Node: Quelpa2690 -Node: Helm support3218 -Node: Usage3621 -Node: Commands4019 -Node: org-ql-find4484 -Node: org-ql-open-link5392 -Node: org-ql-refile6247 -Node: org-ql-search6575 -Node: helm-org-ql8506 -Node: org-ql-view8884 -Node: org-ql-view-sidebar9414 -Node: org-ql-view-recent-items9794 -Node: org-ql-sparse-tree10290 -Node: Queries11090 -Node: Non-sexp query syntax12207 -Node: General predicates13966 -Node: Ancestor/descendant predicates20891 -Node: Date/time predicates22019 -Node: Functions / Macros25143 -Node: Agenda-like views25441 -Ref: Function org-ql-block25603 -Node: Listing / acting-on results26864 -Ref: Caching27072 -Ref: Function org-ql-select27985 -Ref: Function org-ql-query30411 -Ref: Macro org-ql (deprecated)32185 -Node: Custom predicates32500 -Ref: Macro org-ql-defpred32724 -Node: Dynamic block36165 -Node: Links38889 -Node: Tips39576 -Node: Changelog39900 -Node: 08640800 -Node: 08541022 -Node: 08441678 -Node: 08342130 -Node: 08242471 -Node: 08142864 -Node: 0843285 -Node: 07446009 -Node: 07346232 -Node: 07246964 -Node: 07147885 -Node: 0748696 -Node: 06351562 -Node: 06252095 -Node: 06152402 -Node: 0652972 -Node: 05256028 -Node: 05156330 -Node: 0556755 -Node: 04958286 -Node: 04858568 -Node: 04758917 -Node: 04659326 -Node: 04559734 -Node: 04460095 -Node: 04360454 -Node: 04260657 -Node: 04160818 -Node: 0461065 -Node: 03265166 -Node: 03165569 -Node: 0365766 -Node: 02369066 -Node: 02269300 -Node: 02169580 -Node: 0269785 -Node: 0173863 -Node: Notes73964 -Node: Comparison with Org Agenda searches74126 -Node: org-sidebar75015 -Node: License75294 +Node: Contents1957 +Node: Screenshots2080 +Node: Installation2198 +Node: Quelpa2712 +Node: Helm support3240 +Node: Usage3643 +Node: Commands4041 +Node: org-ql-find4506 +Node: org-ql-open-link5414 +Node: org-ql-refile6269 +Node: org-ql-search6597 +Node: helm-org-ql8528 +Node: org-ql-view8906 +Node: org-ql-view-sidebar9436 +Node: org-ql-view-recent-items9816 +Node: org-ql-sparse-tree10312 +Node: Queries11112 +Node: Non-sexp query syntax12229 +Node: General predicates13988 +Node: Ancestor/descendant predicates20913 +Node: Date/time predicates22041 +Node: Functions / Macros25165 +Node: Agenda-like views25463 +Ref: Function org-ql-block25625 +Node: Listing / acting-on results26886 +Ref: Caching27094 +Ref: Function org-ql-select28007 +Ref: Function org-ql-query30433 +Ref: Macro org-ql (deprecated)32207 +Node: Custom predicates32522 +Ref: Macro org-ql-defpred32746 +Node: Dynamic block36187 +Node: Links38911 +Node: Tips39598 +Node: Changelog39922 +Node: 087-pre40844 +Node: 08640956 +Node: 08541194 +Node: 08441850 +Node: 08342302 +Node: 08242643 +Node: 08143036 +Node: 0843457 +Node: 07446181 +Node: 07346404 +Node: 07247138 +Node: 07148059 +Node: 0748870 +Node: 06351736 +Node: 06252269 +Node: 06152576 +Node: 0653146 +Node: 05256202 +Node: 05156504 +Node: 0556929 +Node: 04958460 +Node: 04858742 +Node: 04759091 +Node: 04659500 +Node: 04559908 +Node: 04460269 +Node: 04360628 +Node: 04260831 +Node: 04160992 +Node: 0461239 +Node: 03265340 +Node: 03165743 +Node: 0365940 +Node: 02369240 +Node: 02269474 +Node: 02169754 +Node: 0269959 +Node: 0174037 +Node: Notes74138 +Node: Comparison with Org Agenda searches74300 +Node: org-sidebar75189 +Node: License75468  End Tag Table From 0d9c46247db0971c44a3c67ae38c148ea07146da Mon Sep 17 00:00:00 2001 From: Ihor Radchenko Date: Sun, 8 Aug 2021 16:34:43 +0800 Subject: [PATCH 2/8] org-ql-regexp-part-ts-time: Fix for time intervals --- org-ql.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/org-ql.el b/org-ql.el index ead158ef..569bdaa0 100644 --- a/org-ql.el +++ b/org-ql.el @@ -170,7 +170,8 @@ regexps.") Includes leading space character.") (defvar org-ql-regexp-part-ts-time - (rx " " (repeat 1 2 digit) ":" (repeat 2 digit)) + (rx " " (repeat 1 2 digit) ":" (repeat 2 digit) + (optional "-" (repeat 1 2 digit) ":" (repeat 2 digit))) "Matches the inner, time part of an Org timestamp (i.e. HH:MM). Includes leading space character. Used to build other timestamp regexps.") From 02b4213826fe21bebed562e9860e1d2a7a393ce2 Mon Sep 17 00:00:00 2001 From: Adam Porter Date: Wed, 26 Jun 2024 09:56:14 -0500 Subject: [PATCH 3/8] Tests: Timestamps with inner time ranges --- tests/data-ts.org | 23 +++++++++++++++++++++++ tests/test-org-ql.el | 31 ++++++++++++++++++++++++++++++- 2 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 tests/data-ts.org diff --git a/tests/data-ts.org b/tests/data-ts.org new file mode 100644 index 00000000..01ebd574 --- /dev/null +++ b/tests/data-ts.org @@ -0,0 +1,23 @@ +#+title: Timestamp-specific tests + +/Timestamps in this file are active ones./ + +* Single-timestamp ranges + +** Single-timestamp, without repeater +<2024-06-25 Tue 08:00-09:00> + +** Single-timestamp, with repeater (deadline) +DEADLINE: <2024-06-25 Tue 08:00-09:00 ++7d> + +* Multi-timestamp ranges + +/Not sure that it would make sense to use repeaters for this kind of range./ + +** Multi-timestamp, without repeater +<2024-06-25 Tue 08:00>--<2024-06-26 Wed 08:00> + +* Canary + +/This entry should never be matched./ + diff --git a/tests/test-org-ql.el b/tests/test-org-ql.el index 8d2b84c0..8721e0fa 100644 --- a/tests/test-org-ql.el +++ b/tests/test-org-ql.el @@ -1688,7 +1688,36 @@ with keyword arg NOW in PLIST." (org-ql-expect ((org-ql--query-string-to-sexp "ts-active:with-time=")) '("Take over the universe" "Take over the world" "Visit Mars" "Visit the moon" "Practice leaping tall buildings in a single bound" "Get haircut" "Internet" "Spaceship lease" "Fix flux capacitor" "/r/emacs" "Shop for groceries" "Rewrite Emacs in Common Lisp")) (org-ql-expect ((org-ql--query-string-to-sexp "ts-active:with-time=t")) - '("Skype with president of Antarctica" "Renew membership in supervillain club" "Order a pizza")))) + '("Skype with president of Antarctica" "Renew membership in supervillain club" "Order a pizza"))) + + (describe "matches timestamps with inner time ranges" + (before-each + (setq org-ql-test-buffer (org-ql-test-data-buffer "data-ts.org") + org-ql-test-num-headings (with-current-buffer org-ql-test-buffer + (org-with-wide-buffer + (goto-char (point-min)) + ;; Exclude the "Canary" heading. + (1- (cl-loop while (re-search-forward org-heading-regexp nil t) + sum 1)))))) + + (org-ql-it "without specified timestamp" + (org-ql-expect ('(ts-active)) + '("Single-timestamp, without repeater" "Single-timestamp, with repeater (deadline)" "Multi-timestamp, without repeater"))) + (org-ql-it "with specified timestamps" + (org-ql-expect ('(ts-active :on "2024-06-25")) + '("Single-timestamp, without repeater" "Single-timestamp, with repeater (deadline)" "Multi-timestamp, without repeater")) + (org-ql-expect ('(ts-active :on "2024-06-26")) + '("Multi-timestamp, without repeater"))) + (org-ql-it "with specified time values" + (org-ql-expect ('(ts-active :to "2024-06-25 09:00")) + '("Single-timestamp, without repeater" "Single-timestamp, with repeater (deadline)" "Multi-timestamp, without repeater")) + ;; FIXME: The test below fails because timestamps with + ;; ranges are not yet parsed into multiple timestamps and + ;; compared as a range. This will have to be addressed in + ;; a new version. + ;; (org-ql-expect ('(ts-active :from "2024-06-25 08:30")) + ;; '("Single-timestamp, without repeater" "Single-timestamp, with repeater (deadline)" "Multi-timestamp, without repeater")) + ))) (describe "inactive" From e3b956e54d6d66a346e18683f9d6be48022f1935 Mon Sep 17 00:00:00 2001 From: Adam Porter Date: Wed, 26 Jun 2024 10:22:09 -0500 Subject: [PATCH 4/8] Docs: Update changelog --- README.org | 3 +- org-ql.info | 92 +++++++++++++++++++++++++++++------------------------ 2 files changed, 52 insertions(+), 43 deletions(-) diff --git a/README.org b/README.org index e38b31c7..2b73078a 100644 --- a/README.org +++ b/README.org @@ -555,7 +555,8 @@ Simple links may also be written manually in either sexp or non-sexp form, like: ** 0.8.7-pre -Nothing new yet. +*Fixes* ++ Timestamps with internal time ranges (e.g. ~<2024-06-26 10:00-11:00>~) are matched for simple queries. (This support is not yet comprehensive, e.g. a query that depends on the specific inner time range may not behave as expected. Previously such timestamps were not matched at all. See [[https://github.com/alphapapa/org-ql/pull/237][#237]] and [[https://github.com/alphapapa/org-ql/issues/371][#371]]. Thanks to [[https://github.com/yantar92][Ihor Radchenko]].) ** 0.8.6 diff --git a/org-ql.info b/org-ql.info index dffc0ab7..711f1695 100644 --- a/org-ql.info +++ b/org-ql.info @@ -1080,7 +1080,15 @@ File: README.info, Node: 087-pre, Next: 086, Up: Changelog 5.1 0.8.7-pre ============= -Nothing new yet. +*Fixes* + • Timestamps with internal time ranges (e.g. ‘<2024-06-26 + 10:00-11:00>’) are matched for simple queries. (This support is + not yet comprehensive, e.g. a query that depends on the specific + inner time range may not behave as expected. Previously such + timestamps were not matched at all. See #237 + (https://github.com/alphapapa/org-ql/pull/237) and #371 + (https://github.com/alphapapa/org-ql/issues/371). Thanks to Ihor + Radchenko (https://github.com/yantar92).)  File: README.info, Node: 086, Next: 085, Prev: 087-pre, Up: Changelog @@ -2010,47 +2018,47 @@ Node: Links38911 Node: Tips39598 Node: Changelog39922 Node: 087-pre40844 -Node: 08640956 -Node: 08541194 -Node: 08441850 -Node: 08342302 -Node: 08242643 -Node: 08143036 -Node: 0843457 -Node: 07446181 -Node: 07346404 -Node: 07247138 -Node: 07148059 -Node: 0748870 -Node: 06351736 -Node: 06252269 -Node: 06152576 -Node: 0653146 -Node: 05256202 -Node: 05156504 -Node: 0556929 -Node: 04958460 -Node: 04858742 -Node: 04759091 -Node: 04659500 -Node: 04559908 -Node: 04460269 -Node: 04360628 -Node: 04260831 -Node: 04160992 -Node: 0461239 -Node: 03265340 -Node: 03165743 -Node: 0365940 -Node: 02369240 -Node: 02269474 -Node: 02169754 -Node: 0269959 -Node: 0174037 -Node: Notes74138 -Node: Comparison with Org Agenda searches74300 -Node: org-sidebar75189 -Node: License75468 +Node: 08641453 +Node: 08541691 +Node: 08442347 +Node: 08342799 +Node: 08243140 +Node: 08143533 +Node: 0843954 +Node: 07446678 +Node: 07346901 +Node: 07247635 +Node: 07148556 +Node: 0749367 +Node: 06352233 +Node: 06252766 +Node: 06153073 +Node: 0653643 +Node: 05256699 +Node: 05157001 +Node: 0557426 +Node: 04958957 +Node: 04859239 +Node: 04759588 +Node: 04659997 +Node: 04560405 +Node: 04460766 +Node: 04361125 +Node: 04261328 +Node: 04161489 +Node: 0461736 +Node: 03265837 +Node: 03166240 +Node: 0366437 +Node: 02369737 +Node: 02269971 +Node: 02170251 +Node: 0270456 +Node: 0174534 +Node: Notes74635 +Node: Comparison with Org Agenda searches74797 +Node: org-sidebar75686 +Node: License75965  End Tag Table From 914e64746f382436a1024cf40e5fa5c41bd37b87 Mon Sep 17 00:00:00 2001 From: Adam Porter Date: Wed, 26 Jun 2024 10:41:58 -0500 Subject: [PATCH 5/8] Fix: (org-ql-search) Interactive narrowing Fixes #430. Closes #436. Reported-by: Akira Komamura --- README.org | 1 + org-ql-search.el | 2 +- org-ql.info | 84 +++++++++++++++++++++++++----------------------- 3 files changed, 45 insertions(+), 42 deletions(-) diff --git a/README.org b/README.org index 2b73078a..c7465287 100644 --- a/README.org +++ b/README.org @@ -557,6 +557,7 @@ Simple links may also be written manually in either sexp or non-sexp form, like: *Fixes* + Timestamps with internal time ranges (e.g. ~<2024-06-26 10:00-11:00>~) are matched for simple queries. (This support is not yet comprehensive, e.g. a query that depends on the specific inner time range may not behave as expected. Previously such timestamps were not matched at all. See [[https://github.com/alphapapa/org-ql/pull/237][#237]] and [[https://github.com/alphapapa/org-ql/issues/371][#371]]. Thanks to [[https://github.com/yantar92][Ihor Radchenko]].) ++ Command ~org-ql-search~ did not narrow properly when called interactively. ** 0.8.6 diff --git a/org-ql-search.el b/org-ql-search.el index 57215f89..b8cd148e 100644 --- a/org-ql-search.el +++ b/org-ql-search.el @@ -184,7 +184,7 @@ necessary." (interactive (list (org-ql-view--complete-buffers-files) (read-string "Query: " (when org-ql-view-query (format "%S" org-ql-view-query))) - :narrow (or org-ql-view-narrow (eq current-prefix-arg '(4))) + :narrow (or org-ql-view-narrow (equal current-prefix-arg '(4))) :super-groups (org-ql-view--complete-super-groups) :sort (org-ql-view--complete-sort))) ;; NOTE: Using `with-temp-buffer' is a hack to work around the fact that `make-local-variable' diff --git a/org-ql.info b/org-ql.info index 711f1695..cce0f1ee 100644 --- a/org-ql.info +++ b/org-ql.info @@ -1089,6 +1089,8 @@ File: README.info, Node: 087-pre, Next: 086, Up: Changelog (https://github.com/alphapapa/org-ql/pull/237) and #371 (https://github.com/alphapapa/org-ql/issues/371). Thanks to Ihor Radchenko (https://github.com/yantar92).) + • Command ‘org-ql-search’ did not narrow properly when called + interactively.  File: README.info, Node: 086, Next: 085, Prev: 087-pre, Up: Changelog @@ -2018,47 +2020,47 @@ Node: Links38911 Node: Tips39598 Node: Changelog39922 Node: 087-pre40844 -Node: 08641453 -Node: 08541691 -Node: 08442347 -Node: 08342799 -Node: 08243140 -Node: 08143533 -Node: 0843954 -Node: 07446678 -Node: 07346901 -Node: 07247635 -Node: 07148556 -Node: 0749367 -Node: 06352233 -Node: 06252766 -Node: 06153073 -Node: 0653643 -Node: 05256699 -Node: 05157001 -Node: 0557426 -Node: 04958957 -Node: 04859239 -Node: 04759588 -Node: 04659997 -Node: 04560405 -Node: 04460766 -Node: 04361125 -Node: 04261328 -Node: 04161489 -Node: 0461736 -Node: 03265837 -Node: 03166240 -Node: 0366437 -Node: 02369737 -Node: 02269971 -Node: 02170251 -Node: 0270456 -Node: 0174534 -Node: Notes74635 -Node: Comparison with Org Agenda searches74797 -Node: org-sidebar75686 -Node: License75965 +Node: 08641544 +Node: 08541782 +Node: 08442438 +Node: 08342890 +Node: 08243231 +Node: 08143624 +Node: 0844045 +Node: 07446769 +Node: 07346992 +Node: 07247726 +Node: 07148647 +Node: 0749458 +Node: 06352324 +Node: 06252857 +Node: 06153164 +Node: 0653734 +Node: 05256790 +Node: 05157092 +Node: 0557517 +Node: 04959048 +Node: 04859330 +Node: 04759679 +Node: 04660088 +Node: 04560496 +Node: 04460857 +Node: 04361216 +Node: 04261419 +Node: 04161580 +Node: 0461827 +Node: 03265928 +Node: 03166331 +Node: 0366528 +Node: 02369828 +Node: 02270062 +Node: 02170342 +Node: 0270547 +Node: 0174625 +Node: Notes74726 +Node: Comparison with Org Agenda searches74888 +Node: org-sidebar75777 +Node: License76056  End Tag Table From ffc3477013f0ebdb5e223d5af5c1ef489d8b0055 Mon Sep 17 00:00:00 2001 From: Adam Porter Date: Wed, 26 Jun 2024 10:52:31 -0500 Subject: [PATCH 6/8] Fix: (org-ql-regexp-part-ts-date) Allow punctuation in day-of-week Fixes . Closes . Reported-by: Florian D. --- README.org | 1 + org-ql.el | 5 +-- org-ql.info | 87 +++++++++++++++++++++++--------------------- tests/data-ts.org | 6 +++ tests/test-org-ql.el | 29 +++++++++++---- 5 files changed, 76 insertions(+), 52 deletions(-) diff --git a/README.org b/README.org index c7465287..61801350 100644 --- a/README.org +++ b/README.org @@ -557,6 +557,7 @@ Simple links may also be written manually in either sexp or non-sexp form, like: *Fixes* + Timestamps with internal time ranges (e.g. ~<2024-06-26 10:00-11:00>~) are matched for simple queries. (This support is not yet comprehensive, e.g. a query that depends on the specific inner time range may not behave as expected. Previously such timestamps were not matched at all. See [[https://github.com/alphapapa/org-ql/pull/237][#237]] and [[https://github.com/alphapapa/org-ql/issues/371][#371]]. Thanks to [[https://github.com/yantar92][Ihor Radchenko]].) ++ Timestamps with day-of-the-week abbreviations are matched more flexibly (allowing, e.g. a period in French locales). (See [[https://github.com/alphapapa/org-ql/discussions/429][#429]], [[https://github.com/alphapapa/org-ql/issues/432][#432]]. Thanks to [[https://github.com/neurolit][Florian D.]] for reporting.) + Command ~org-ql-search~ did not narrow properly when called interactively. ** 0.8.6 diff --git a/org-ql.el b/org-ql.el index 569bdaa0..6300dd06 100644 --- a/org-ql.el +++ b/org-ql.el @@ -157,10 +157,9 @@ This list should not contain any duplicates.")) (defvar org-ql-regexp-part-ts-date (rx (repeat 4 digit) "-" (repeat 2 digit) "-" (repeat 2 digit) ;; Day of week - (optional " " (1+ alpha))) + (optional " " (1+ (or alpha punct)))) "Matches the inner, date part of an Org timestamp, both active and inactive. -Also matches optional day-of-week. Used to build other timestamp -regexps.") +Used to build other timestamp regexps.") (defvar org-ql-regexp-part-ts-repeaters ;; Repeaters (not sure if the colon is necessary, but it's in the org.el one) diff --git a/org-ql.info b/org-ql.info index cce0f1ee..325eeb09 100644 --- a/org-ql.info +++ b/org-ql.info @@ -1089,6 +1089,11 @@ File: README.info, Node: 087-pre, Next: 086, Up: Changelog (https://github.com/alphapapa/org-ql/pull/237) and #371 (https://github.com/alphapapa/org-ql/issues/371). Thanks to Ihor Radchenko (https://github.com/yantar92).) + • Timestamps with day-of-the-week abbreviations are matched more + flexibly (allowing, e.g. a period in French locales). (See #429 + (https://github.com/alphapapa/org-ql/discussions/429), #432 + (https://github.com/alphapapa/org-ql/issues/432). Thanks to + Florian D. (https://github.com/neurolit) for reporting.) • Command ‘org-ql-search’ did not narrow properly when called interactively. @@ -2020,47 +2025,47 @@ Node: Links38911 Node: Tips39598 Node: Changelog39922 Node: 087-pre40844 -Node: 08641544 -Node: 08541782 -Node: 08442438 -Node: 08342890 -Node: 08243231 -Node: 08143624 -Node: 0844045 -Node: 07446769 -Node: 07346992 -Node: 07247726 -Node: 07148647 -Node: 0749458 -Node: 06352324 -Node: 06252857 -Node: 06153164 -Node: 0653734 -Node: 05256790 -Node: 05157092 -Node: 0557517 -Node: 04959048 -Node: 04859330 -Node: 04759679 -Node: 04660088 -Node: 04560496 -Node: 04460857 -Node: 04361216 -Node: 04261419 -Node: 04161580 -Node: 0461827 -Node: 03265928 -Node: 03166331 -Node: 0366528 -Node: 02369828 -Node: 02270062 -Node: 02170342 -Node: 0270547 -Node: 0174625 -Node: Notes74726 -Node: Comparison with Org Agenda searches74888 -Node: org-sidebar75777 -Node: License76056 +Node: 08641879 +Node: 08542117 +Node: 08442773 +Node: 08343225 +Node: 08243566 +Node: 08143959 +Node: 0844380 +Node: 07447104 +Node: 07347327 +Node: 07248061 +Node: 07148982 +Node: 0749793 +Node: 06352659 +Node: 06253192 +Node: 06153499 +Node: 0654069 +Node: 05257125 +Node: 05157427 +Node: 0557852 +Node: 04959383 +Node: 04859665 +Node: 04760014 +Node: 04660423 +Node: 04560831 +Node: 04461192 +Node: 04361551 +Node: 04261754 +Node: 04161915 +Node: 0462162 +Node: 03266263 +Node: 03166666 +Node: 0366863 +Node: 02370163 +Node: 02270397 +Node: 02170677 +Node: 0270882 +Node: 0174960 +Node: Notes75061 +Node: Comparison with Org Agenda searches75223 +Node: org-sidebar76112 +Node: License76391  End Tag Table diff --git a/tests/data-ts.org b/tests/data-ts.org index 01ebd574..a5169a75 100644 --- a/tests/data-ts.org +++ b/tests/data-ts.org @@ -17,6 +17,12 @@ DEADLINE: <2024-06-25 Tue 08:00-09:00 ++7d> ** Multi-timestamp, without repeater <2024-06-25 Tue 08:00>--<2024-06-26 Wed 08:00> +* Day-of-week abbreviations + +** French + +<2024-07-12 Fri> + * Canary /This entry should never be matched./ diff --git a/tests/test-org-ql.el b/tests/test-org-ql.el index 8721e0fa..67174723 100644 --- a/tests/test-org-ql.el +++ b/tests/test-org-ql.el @@ -1700,16 +1700,16 @@ with keyword arg NOW in PLIST." (1- (cl-loop while (re-search-forward org-heading-regexp nil t) sum 1)))))) - (org-ql-it "without specified timestamp" + (org-ql-it "without :with-time" (org-ql-expect ('(ts-active)) - '("Single-timestamp, without repeater" "Single-timestamp, with repeater (deadline)" "Multi-timestamp, without repeater"))) - (org-ql-it "with specified timestamps" - (org-ql-expect ('(ts-active :on "2024-06-25")) + '("Single-timestamp, without repeater" "Single-timestamp, with repeater (deadline)" "Multi-timestamp, without repeater" "French"))) + (org-ql-it ":with-time t" + (org-ql-expect ('(ts-active :on "2024-06-25" :with-time t)) '("Single-timestamp, without repeater" "Single-timestamp, with repeater (deadline)" "Multi-timestamp, without repeater")) - (org-ql-expect ('(ts-active :on "2024-06-26")) + (org-ql-expect ('(ts-active :on "2024-06-26" :with-time t)) '("Multi-timestamp, without repeater"))) - (org-ql-it "with specified time values" - (org-ql-expect ('(ts-active :to "2024-06-25 09:00")) + (org-ql-it ":with-time t and with specified time value in :to" + (org-ql-expect ('(ts-active :to "2024-06-25 09:00" :with-time t)) '("Single-timestamp, without repeater" "Single-timestamp, with repeater (deadline)" "Multi-timestamp, without repeater")) ;; FIXME: The test below fails because timestamps with ;; ranges are not yet parsed into multiple timestamps and @@ -1856,7 +1856,20 @@ with keyword arg NOW in PLIST." '("Visit Mars"))) (org-ql-then (:now "2019-07-07") (org-ql-expect ('(ts :on today)) - nil))))) + nil)))) + + (describe "Day-of-week abbreviations" + (before-each + (setq org-ql-test-buffer (org-ql-test-data-buffer "data-ts.org") + org-ql-test-num-headings (with-current-buffer org-ql-test-buffer + (org-with-wide-buffer + (goto-char (point-min)) + ;; Exclude the "Canary" heading. + (1- (cl-loop while (re-search-forward org-heading-regexp nil t) + sum 1)))))) + (org-ql-it "matches French abbreviations (with trailing period)" + (org-ql-expect ('(ts :on "2024-07-12")) + '("French"))))) (describe "Compound queries" From b362dd68b000c804327bdf1b58d30e73449d4f4f Mon Sep 17 00:00:00 2001 From: Adam Porter Date: Wed, 26 Jun 2024 11:28:11 -0500 Subject: [PATCH 7/8] Fix: (org-dblock-write:org-ql) Resolve element properties Fixes . Reported-by: Jez Cope --- README.org | 3 ++ org-ql-search.el | 3 +- org-ql.info | 87 +++++++++++++++++++++++++----------------------- 3 files changed, 51 insertions(+), 42 deletions(-) diff --git a/README.org b/README.org index 61801350..8be6a28b 100644 --- a/README.org +++ b/README.org @@ -560,6 +560,9 @@ Simple links may also be written manually in either sexp or non-sexp form, like: + Timestamps with day-of-the-week abbreviations are matched more flexibly (allowing, e.g. a period in French locales). (See [[https://github.com/alphapapa/org-ql/discussions/429][#429]], [[https://github.com/alphapapa/org-ql/issues/432][#432]]. Thanks to [[https://github.com/neurolit][Florian D.]] for reporting.) + Command ~org-ql-search~ did not narrow properly when called interactively. +*Compatibility* ++ Dynamic blocks work with Org 9.7. ([[https://github.com/alphapapa/org-ql/issues/431][#431]]. Thanks to [[https://github.com/jezcope][Jez Cope]] for reporting.) + ** 0.8.6 *Fixes* diff --git a/org-ql-search.el b/org-ql-search.el index b8cd148e..72a21534 100644 --- a/org-ql-search.el +++ b/org-ql-search.el @@ -347,7 +347,8 @@ this (must be a single line in the Org buffer): (org-element-property (intern (concat ":" (upcase property))) element))))) (elements (org-ql-query :from (current-buffer) :where query - :select '(org-element-headline-parser (line-end-position)) + :select '(org-ql-view--resolve-element-properties + (org-element-headline-parser (line-end-position))) :order-by sort))) (when take (setf elements (cl-etypecase take diff --git a/org-ql.info b/org-ql.info index 325eeb09..4c8ac2c8 100644 --- a/org-ql.info +++ b/org-ql.info @@ -1097,6 +1097,11 @@ File: README.info, Node: 087-pre, Next: 086, Up: Changelog • Command ‘org-ql-search’ did not narrow properly when called interactively. + *Compatibility* + • Dynamic blocks work with Org 9.7. (#431 + (https://github.com/alphapapa/org-ql/issues/431). Thanks to Jez + Cope (https://github.com/jezcope) for reporting.) +  File: README.info, Node: 086, Next: 085, Prev: 087-pre, Up: Changelog @@ -2025,47 +2030,47 @@ Node: Links38911 Node: Tips39598 Node: Changelog39922 Node: 087-pre40844 -Node: 08641879 -Node: 08542117 -Node: 08442773 -Node: 08343225 -Node: 08243566 -Node: 08143959 -Node: 0844380 -Node: 07447104 -Node: 07347327 -Node: 07248061 -Node: 07148982 -Node: 0749793 -Node: 06352659 -Node: 06253192 -Node: 06153499 -Node: 0654069 -Node: 05257125 -Node: 05157427 -Node: 0557852 -Node: 04959383 -Node: 04859665 -Node: 04760014 -Node: 04660423 -Node: 04560831 -Node: 04461192 -Node: 04361551 -Node: 04261754 -Node: 04161915 -Node: 0462162 -Node: 03266263 -Node: 03166666 -Node: 0366863 -Node: 02370163 -Node: 02270397 -Node: 02170677 -Node: 0270882 -Node: 0174960 -Node: Notes75061 -Node: Comparison with Org Agenda searches75223 -Node: org-sidebar76112 -Node: License76391 +Node: 08642072 +Node: 08542310 +Node: 08442966 +Node: 08343418 +Node: 08243759 +Node: 08144152 +Node: 0844573 +Node: 07447297 +Node: 07347520 +Node: 07248254 +Node: 07149175 +Node: 0749986 +Node: 06352852 +Node: 06253385 +Node: 06153692 +Node: 0654262 +Node: 05257318 +Node: 05157620 +Node: 0558045 +Node: 04959576 +Node: 04859858 +Node: 04760207 +Node: 04660616 +Node: 04561024 +Node: 04461385 +Node: 04361744 +Node: 04261947 +Node: 04162108 +Node: 0462355 +Node: 03266456 +Node: 03166859 +Node: 0367056 +Node: 02370356 +Node: 02270590 +Node: 02170870 +Node: 0271075 +Node: 0175153 +Node: Notes75254 +Node: Comparison with Org Agenda searches75416 +Node: org-sidebar76305 +Node: License76584  End Tag Table From c2b4404808185a9d5e160c8eea7967f906f77fd3 Mon Sep 17 00:00:00 2001 From: Adam Porter Date: Wed, 26 Jun 2024 11:31:17 -0500 Subject: [PATCH 8/8] Release: v0.8.7 --- README.org | 2 +- org-ql.el | 2 +- org-ql.info | 166 ++++++++++++++++++++++++++-------------------------- 3 files changed, 85 insertions(+), 85 deletions(-) diff --git a/README.org b/README.org index 8be6a28b..9e3bd54f 100644 --- a/README.org +++ b/README.org @@ -553,7 +553,7 @@ Simple links may also be written manually in either sexp or non-sexp form, like: /Note:/ Breaking changes may be made before version 1.0, but in the event of major changes, attempts at backward compatibility will be made with obsolescence declarations, translation of arguments, etc. Users who need stability guarantees before 1.0 may choose to use tagged stable releases. -** 0.8.7-pre +** 0.8.7 *Fixes* + Timestamps with internal time ranges (e.g. ~<2024-06-26 10:00-11:00>~) are matched for simple queries. (This support is not yet comprehensive, e.g. a query that depends on the specific inner time range may not behave as expected. Previously such timestamps were not matched at all. See [[https://github.com/alphapapa/org-ql/pull/237][#237]] and [[https://github.com/alphapapa/org-ql/issues/371][#371]]. Thanks to [[https://github.com/yantar92][Ihor Radchenko]].) diff --git a/org-ql.el b/org-ql.el index 6300dd06..87d2dabb 100644 --- a/org-ql.el +++ b/org-ql.el @@ -4,7 +4,7 @@ ;; Author: Adam Porter ;; Url: https://github.com/alphapapa/org-ql -;; Version: 0.8.7-pre +;; Version: 0.8.7 ;; Package-Requires: ((emacs "27.1") (compat "29.1") (dash "2.18.1") (f "0.17.2") (map "2.1") (org "9.0") (org-super-agenda "1.2") (ov "1.0.6") (peg "1.0.1") (s "1.12.0") (transient "0.1") (ts "0.2-pre")) ;; Keywords: hypermedia, outlines, Org, agenda diff --git a/org-ql.info b/org-ql.info index 4c8ac2c8..a4089345 100644 --- a/org-ql.info +++ b/org-ql.info @@ -72,7 +72,7 @@ Functions / Macros Changelog -* 0.8.7-pre: 087-pre. +* 0.8.7: 087. * 0.8.6: 086. * 0.8.5: 085. * 0.8.4: 084. @@ -1035,7 +1035,7 @@ releases. * Menu: -* 0.8.7-pre: 087-pre. +* 0.8.7: 087. * 0.8.6: 086. * 0.8.5: 085. * 0.8.4: 084. @@ -1075,10 +1075,10 @@ releases. * 0.1: 01.  -File: README.info, Node: 087-pre, Next: 086, Up: Changelog +File: README.info, Node: 087, Next: 086, Up: Changelog -5.1 0.8.7-pre -============= +5.1 0.8.7 +========= *Fixes* • Timestamps with internal time ranges (e.g. ‘<2024-06-26 @@ -1103,7 +1103,7 @@ File: README.info, Node: 087-pre, Next: 086, Up: Changelog Cope (https://github.com/jezcope) for reporting.)  -File: README.info, Node: 086, Next: 085, Prev: 087-pre, Up: Changelog +File: README.info, Node: 086, Next: 085, Prev: 087, Up: Changelog 5.2 0.8.6 ========= @@ -1994,83 +1994,83 @@ GPLv3  Tag Table: Node: Top225 -Node: Contents1957 -Node: Screenshots2080 -Node: Installation2198 -Node: Quelpa2712 -Node: Helm support3240 -Node: Usage3643 -Node: Commands4041 -Node: org-ql-find4506 -Node: org-ql-open-link5414 -Node: org-ql-refile6269 -Node: org-ql-search6597 -Node: helm-org-ql8528 -Node: org-ql-view8906 -Node: org-ql-view-sidebar9436 -Node: org-ql-view-recent-items9816 -Node: org-ql-sparse-tree10312 -Node: Queries11112 -Node: Non-sexp query syntax12229 -Node: General predicates13988 -Node: Ancestor/descendant predicates20913 -Node: Date/time predicates22041 -Node: Functions / Macros25165 -Node: Agenda-like views25463 -Ref: Function org-ql-block25625 -Node: Listing / acting-on results26886 -Ref: Caching27094 -Ref: Function org-ql-select28007 -Ref: Function org-ql-query30433 -Ref: Macro org-ql (deprecated)32207 -Node: Custom predicates32522 -Ref: Macro org-ql-defpred32746 -Node: Dynamic block36187 -Node: Links38911 -Node: Tips39598 -Node: Changelog39922 -Node: 087-pre40844 -Node: 08642072 -Node: 08542310 -Node: 08442966 -Node: 08343418 -Node: 08243759 -Node: 08144152 -Node: 0844573 -Node: 07447297 -Node: 07347520 -Node: 07248254 -Node: 07149175 -Node: 0749986 -Node: 06352852 -Node: 06253385 -Node: 06153692 -Node: 0654262 -Node: 05257318 -Node: 05157620 -Node: 0558045 -Node: 04959576 -Node: 04859858 -Node: 04760207 -Node: 04660616 -Node: 04561024 -Node: 04461385 -Node: 04361744 -Node: 04261947 -Node: 04162108 -Node: 0462355 -Node: 03266456 -Node: 03166859 -Node: 0367056 -Node: 02370356 -Node: 02270590 -Node: 02170870 -Node: 0271075 -Node: 0175153 -Node: Notes75254 -Node: Comparison with Org Agenda searches75416 -Node: org-sidebar76305 -Node: License76584 +Node: Contents1949 +Node: Screenshots2072 +Node: Installation2190 +Node: Quelpa2704 +Node: Helm support3232 +Node: Usage3635 +Node: Commands4033 +Node: org-ql-find4498 +Node: org-ql-open-link5406 +Node: org-ql-refile6261 +Node: org-ql-search6589 +Node: helm-org-ql8520 +Node: org-ql-view8898 +Node: org-ql-view-sidebar9428 +Node: org-ql-view-recent-items9808 +Node: org-ql-sparse-tree10304 +Node: Queries11104 +Node: Non-sexp query syntax12221 +Node: General predicates13980 +Node: Ancestor/descendant predicates20905 +Node: Date/time predicates22033 +Node: Functions / Macros25157 +Node: Agenda-like views25455 +Ref: Function org-ql-block25617 +Node: Listing / acting-on results26878 +Ref: Caching27086 +Ref: Function org-ql-select27999 +Ref: Function org-ql-query30425 +Ref: Macro org-ql (deprecated)32199 +Node: Custom predicates32514 +Ref: Macro org-ql-defpred32738 +Node: Dynamic block36179 +Node: Links38903 +Node: Tips39590 +Node: Changelog39914 +Node: 08740828 +Node: 08642044 +Node: 08542278 +Node: 08442934 +Node: 08343386 +Node: 08243727 +Node: 08144120 +Node: 0844541 +Node: 07447265 +Node: 07347488 +Node: 07248222 +Node: 07149143 +Node: 0749954 +Node: 06352820 +Node: 06253353 +Node: 06153660 +Node: 0654230 +Node: 05257286 +Node: 05157588 +Node: 0558013 +Node: 04959544 +Node: 04859826 +Node: 04760175 +Node: 04660584 +Node: 04560992 +Node: 04461353 +Node: 04361712 +Node: 04261915 +Node: 04162076 +Node: 0462323 +Node: 03266424 +Node: 03166827 +Node: 0367024 +Node: 02370324 +Node: 02270558 +Node: 02170838 +Node: 0271043 +Node: 0175121 +Node: Notes75222 +Node: Comparison with Org Agenda searches75384 +Node: org-sidebar76273 +Node: License76552  End Tag Table