Commit graph

251 commits

Author SHA1 Message Date
Adam Porter
6c6bb2d572 Add: Clocked selector and supporting code 2019-06-08 23:51:52 -05:00
Adam Porter
9deec36458 Fix: Require org-habit
It would be optimal to avoid requiring it, but not worth the trouble.
2019-06-08 23:31:24 -05:00
Adam Porter
7b093bba30 Fix: (--predicate-done) Refer to new pred name
Fixes #24.  Thanks to @xeijin for reporting.
2019-06-08 18:49:06 -05:00
Adam Porter
2722d87460 Tidy: Docstrings, symbol names 2019-06-08 04:30:52 -05:00
Adam Porter
4d186d7054 Docs: org-ql, org-ql-query
Also rename org-ql--query to org-ql-query.
2019-06-08 04:24:50 -05:00
Adam Porter
fc5647aea3 Change: Define predicates with macro, generate docs 2019-06-08 04:16:58 -05:00
Adam Porter
b11a3ea3cf Tidy: Docstring and tasks 2019-06-07 21:53:20 -05:00
Adam Porter
c5599a6030 Add/Change: date->planning, and new selector checks all dates/ranges
Fixes #15.  Closes #16.

Thanks to @codygman for reporting, and to @swflint for reminding me.
2019-01-16 09:24:59 -06:00
Adam Porter
62fa389901 Fix: (org-ql) Add package headers 2018-12-28 10:46:52 -06:00
Adam Porter
50fab59fec Change: Simplify a pcase 2018-11-19 03:24:33 -06:00
Adam Porter
e7bc68c9d1 Fix: Don't use aprog1
I wish more people had anaphora installed, but since they don't...
2018-08-22 18:13:06 -05:00
Adam Porter
db6543b18c Fix: (org-ql--query) Error if run in non-Org-derived buffer 2018-08-22 16:40:06 -05:00
Adam Porter
6a9f5cc37c Add: Heading matcher
This should also be easy to optimize with a buffer-wide regexp search.
2018-08-22 14:41:00 -05:00
Adam Porter
e141089633 Fix: Unused lexical vars 2018-08-22 14:18:56 -05:00
Adam Porter
90aa62a5af Change/Fix: (org-ql--add-agenda-markers) Rename and use copy-marker
org-agenda-new-marker sometimes raises "selecting deleted buffer"
errors, and other times returns markers that don't point into a
buffer (I don't even know how that's possible).  copy-marker always
works, so we'll use it, even though it might leave markers hanging
around which theoretically could affect performance over time (but
isn't Emacs still supposed to GC them?  I'm not sure).

Also, rename it to org-ql--add-markers, since we're not adding
"agenda" markers anymore.
2018-08-22 14:15:28 -05:00
Adam Porter
a2d8ed2eeb Add: Caching
Seems to work well so far.  Hopefully no bugs will be found (ha,
ha)...

Fixes #6.  Thanks to @yantar92 for suggesting!
<https://www.reddit.com/r/emacs/comments/990swh/querying_org_files_for_due_items_and_showing/e4kduul/>
2018-08-22 14:03:48 -05:00
Adam Porter
cdbe750b7c Fix: Don't treat an element's :begin property as a marker
Only markers are markers.  Also add FIXME about tag inheritance when
no marker is used (although see caveat in it...).
2018-08-22 13:32:44 -05:00
Adam Porter
ad4aad16f1 Change: Rename fmap macro to flet 2018-08-20 08:17:10 -05:00
Adam Porter
32f2b3304a Change: Use macrolet instead of flet for priority sorter 2018-08-20 07:49:49 -05:00
Adam Porter
f6db1097dc Change: Refactor and tidy
Move add-markers function into org-ql, which should help avoid
cross-dependency, and should be generally useful.
2018-08-20 07:38:07 -05:00
Adam Porter
4822f1406f Change: Consolidate action 2018-08-20 07:09:48 -05:00
Adam Porter
88cf7f395e Change: Minor refactoring 2018-08-20 06:42:19 -05:00
Adam Porter
14351e617d Change: Handle sort argument in org-ql--query
Rather than in the macro.  Trying to consolidate.
2018-08-20 06:18:23 -05:00
Adam Porter
d73175714c Fix: (org-ql) Work when not sorting
Don't know when I broke this.  Oops.
2018-08-19 13:21:00 -05:00
Adam Porter
95d51ef998 Comment: Remove comment
Benchmarking shows that, when org-ql is byte-compiled, calling
org-outline-level is actually slightly faster than org-current-level.
2018-08-04 23:14:44 -05:00
Adam Porter
465767e7cc Add: Outline level predicate
Fixes #3.  Thanks to @akirak.
2018-08-04 23:09:21 -05:00
Adam Porter
334b68de3d Change: (org-ql) Handle arbitrary expressions for sort arg
See https://github.com/alphapapa/org-agenda-ng/pull/1
2018-08-04 15:48:18 -05:00
Adam Porter
cc05faa977 Docs: Add missing sort type to docstring 2018-08-04 15:47:41 -05:00
Adam Porter
08243d5479 Add: (org-ql) Markers argument 2018-08-04 01:52:23 -05:00
Adam Porter
fe3d5c2bd8 Fix: (org-ql) Set "today" to org-ql--today in symbol-macrolet
Since we byte-compile the lambda, this is necessary (at least, I think
this is why).  Remember that we set org-ql--today when we actually run
queries.
2018-08-01 10:53:15 -05:00
Adam Porter
8bfb65d715 Change: Refactor, improve docstrings, argument handling, etc.
Move some code between functions and macros to make more sense and be
more flexible.
2018-07-10 08:27:54 -05:00
Adam Porter
c605ccbaf3 Change: (org-ql--org-timestamp-element<) Use macrolet
Should be a small performance improvement, avoiding funcall overhead.
2018-07-10 08:26:55 -05:00
Adam Porter
51a472ffa8 Add: --sanity-check-form function
Currently unused, but may try to use it in the future to avoid
confusing problems.
2018-06-08 18:06:31 -05:00
Adam Porter
27fb5f0852 Comment: Add MAYBE 2018-06-08 18:06:24 -05:00
Adam Porter
86d2e38802 Add: (org-ql--fmap) Add debug declaration 2018-06-08 18:05:52 -05:00
Adam Porter
a134e34fd8 Change: Improve TODO grouping 2018-06-08 18:05:17 -05:00
Adam Porter
73925c8f1c Change: Use org-done-keywords instead of org-done-keywords-for-agenda
This should fix a bug, and it seems like the more correct thing to do.
2018-06-08 18:04:01 -05:00
Adam Porter
977e9aa0a2 Change: Enable lexical-binding
Hopefully this doesn't break anything...
2018-06-08 18:03:49 -05:00
Adam Porter
1143414f67 Change: (--date<) Use macrolet instead of flet 2018-05-24 10:04:34 -05:00
Adam Porter
f19f2a4cb4 Fix: Tag inheritance
Hardcoded on for now.
2018-05-24 10:00:20 -05:00
Adam Porter
005ad636b2 Change: Rename org-agenda-ng--date-p -> org-ql--date-p 2018-05-24 09:59:00 -05:00
Adam Porter
afad077b04 Change: Improve error message 2018-05-24 09:58:23 -05:00
Adam Porter
52a1deffa2 Change: Error if file can't be opened 2018-05-24 09:50:46 -05:00
Adam Porter
6624837aa2 Change: Read files or buffers 2018-05-23 10:38:35 -05:00
Adam Porter
a3cb114f71 Add: (org-ql) Optionally don't widen buffers 2018-05-23 07:49:44 -05:00
Adam Porter
edc9958aa1 Add: Sorting by TODO keyword 2018-05-23 07:03:28 -05:00
Adam Porter
70573b98c5 Fix: Remove unnecessary list from default action
Not sure why I had put that in there...
2018-05-23 07:01:29 -05:00
Adam Porter
d826425fd7 Add: Sorting for org-ql 2018-05-23 05:04:40 -05:00
Adam Porter
1ccbe008ac (org-ql) Remove sharp-quote from action-fn
That should be specified from the macro call, not here.
2018-05-22 06:27:53 -05:00
Adam Porter
d1f26eec2f (org-ql--priority-p) Convert to function
I don't remember why I had made it a macro, but it needs to be a
function so it can be called correctly in org-ql--query.
2018-05-22 06:27:21 -05:00