Commit graph

874 commits

Author SHA1 Message Date
Adam Porter
29533525c3 Tidy: (org-ql--plist-get*) Docstring 2022-12-25 17:51:00 -06:00
Adam Porter
36ff9854ce Fix: (category) Add normalizer for alias 2022-12-25 12:09:50 -06:00
Adam Porter
8dae879841 Change: (org-ql-defpred) Ensure aliased predicates have normalizers
Would have prevented me from releasing the "c" alias for "category"
without a normalizer.
2022-12-25 12:05:52 -06:00
Adam Porter
d253b123cf Docs: Add credits for v0.7-pre 2022-12-09 20:33:01 -06:00
Adam Porter
3d3d958d20 Meta: Test on CI with Emacs 28.1 and 28.2 2022-12-09 20:21:23 -06:00
Adam Porter
91908186fc Change/Fix: Preambles for predicates that expect arguments
Closes #285.  Thanks to Caleb Chase (@chasecaleb) for reporting.
2022-12-09 20:19:55 -06:00
Adam Porter
ecde3a0420 Change/Fix: (src) Normalization, case-insensitivity 2022-12-09 20:19:55 -06:00
Adam Porter
6e3a5eebe7 Fix: (src) Coalesce function 2022-12-08 21:22:40 -06:00
Adam Porter
9dd1bbb10b Merge: 0.6.3 2022-12-08 20:50:01 -06:00
Adam Porter
80b334c269 Release: v0.6.3 2022-12-08 20:45:14 -06:00
Adam Porter
2ddfb7c231 Fix: Require org-duration
This appears to be necessary on newer Org versions, but I don't know
exactly when.
2022-12-08 20:45:14 -06:00
Adam Porter
9f00fa3890 Fix: (org-ql--def-query-string-to-sexp-fn) Updated for peg v1.0.1
Fixes #314, fixes #316.  Thanks to Akira Komamura (@akirak) and Joon
Ro (@joonro) for reporting.

Instead of `[blank]` in this PEX, it used to be `(syntax-class
whitespace)`, which worked fine with peg v1.0.  Then
<https://debbugs.gnu.org/cgi/bugreport.cgi?bug=59345> was filed and
resulted in the release of peg v1.0.1, after which that no longer
worked.  As best I can tell from reading the discussion, `[blank]` and
`(syntax-class whitespace)` should behave the same way, yet here they
do not: with peg v1.0.1, only `[blank]` works.  Why, I do not know; I
only tried it because I could find no explanation for the broken
behavior, and luckily, it works.  Maybe it's due to the use of
`(syntax-class whitespace)` later in the `pexs`; but since it finally
works again, let's take the victory as-is.
2022-12-08 20:44:24 -06:00
Adam Porter
85aee42fae Meta: Update makem.sh to v0.6-pre
Needed for testing on Emacs 28+.
2022-12-08 20:38:47 -06:00
Adam Porter
f22fdd457b Meta: v0.6.3-pre 2022-12-08 19:48:40 -06:00
Adam Porter
5f70636556 Add: (org-ql-find-display-buffer-action) 2022-10-07 18:34:55 -05:00
Adam Porter
e54ba0102c Add: (property) :inherit argument 2022-10-07 18:33:35 -05:00
Adam Porter
e41cdb4591 Change: (org-ql-find-goto-hook) Add org-reveal
Showing the context is much better for the user.
2022-08-25 16:55:58 -05:00
Adam Porter
d7ada532c7 Add: Alias "c" to (category) 2022-08-19 03:38:43 -05:00
Adam Porter
7f4faff27b Add: (org-ql-refile) 2022-08-19 03:26:15 -05:00
Adam Porter
cfa3b307ec Add/Change: org-ql-completing-read, etc. 2022-08-19 03:26:15 -05:00
Adam Porter
18869c47ff Tidy: Headers 2022-08-19 03:14:46 -05:00
Adam Porter
6257ae8304 Fix: (org-ql-find--snippet-*) Use save-excursion 2022-08-15 16:16:55 -05:00
Adam Porter
06f1e1be6f Revert "Change: (org-ql-find) Add workaround for Ivy support"
This reverts commit a02ed48ac8.

See <https://github.com/alphapapa/org-ql/issues/284#issuecomment-1187705847>.
2022-07-18 13:44:25 -05:00
Adam Porter
a02ed48ac8 Change: (org-ql-find) Add workaround for Ivy support
See <https://github.com/alphapapa/org-ql/issues/284>.
2022-07-18 10:57:50 -05:00
Adam Porter
98b6049ecc Fix: (org-ql-find) Check major mode
See https://github.com/alphapapa/org-ql/issues/284#issuecomment-1185367899.
2022-07-15 13:50:10 -05:00
Adam Porter
a986e360c3 Fix: (org-ql-find) Select buffer
Thanks again to Thomas Bergheim (@bergheim).
2022-07-14 13:05:42 -05:00
Adam Porter
d46e69b0fc Fix: (org-ql-find) Always include query-prefix
Thanks to Thomas Bergheim (@bergheim) for his help!
2022-07-14 12:52:44 -05:00
Adam Porter
c2b8af3181 Fix: (org-ql-find) Always map across a list 2022-06-26 22:55:20 -05:00
Adam Porter
77916a1c4f Tidy: Indentation 2022-06-25 10:58:33 -05:00
Adam Porter
5f058b9eee Add: (org-ql-find-in-agenda, org-ql-find-in-org-directory) 2022-06-25 10:58:17 -05:00
Adam Porter
dc02c59cad Add: (org-ql--ensure-buffer)
And use in org-ql-find.  This seems to solve a problem I've been
noticing in helm-org-ql for a long time: that it can apparently
interrupt Org's initialization code, which can leave buffers
unprepared for Org, even stuck in fundamental-mode.  This should also
be used in helm-org-ql...
2022-06-25 10:56:18 -05:00
Adam Porter
bbd164c6ae Change/Fix: (org-ql-select) Warn instead of erroring on bad files
This helps prevent unexpected errors from making it impossible to
search, and displaying the messages in the warnings buffer makes them
more noticeable and readable for the user.
2022-06-25 10:54:38 -05:00
Adam Porter
5768c685ad Remove: org-ql-find-heading, org-ql-find-path
These are virtually obsolete with the introduction of the "rifle"
predicate as the default one.  Having them now is just confusing.
2022-06-25 10:53:29 -05:00
Adam Porter
bacdacb1b2 Change: Use buffer-chars-modified-tick
Closes #203.  Thanks to Ihor Radchenko (@yantar92).
2022-06-13 19:08:36 -05:00
Adam Porter
e22890ad04 Docs: Update changelog 2022-06-13 19:07:44 -05:00
Ihor Radchenko
675d333b91 Use buffer-chars-modified-tick instead of buffer-modified-tick 2022-06-13 19:05:34 -05:00
Adam Porter
6e7371ce61 Add: (org-ql-find) Snippet functions
The default is even more like org-rifle now.
2022-06-11 11:01:52 -05:00
Adam Porter
ede1a6b10b Change: Don't use (setf (plist-get ...))
That expansion is new in Emacs 28, which we don't yet target as the
minimum version.
2022-06-11 09:19:35 -05:00
Adam Porter
1ddc505977 Change: Rename coalesce-multiple-calls to coalesce 2022-06-11 08:16:15 -05:00
Adam Porter
6602f32165 Tests: Update (add, reorganize)
They all pass now (with a temporary, uncommitted workaround in
makem.sh for a Buttercup bug:
<https://github.com/jorgenschaefer/emacs-buttercup/issues/218>).
2022-06-11 08:15:24 -05:00
Adam Porter
73ef71ced7 Comment: Add FIXME 2022-06-11 08:15:24 -05:00
Adam Porter
4f29bcfd67 Add: (rifle/smart) Predicate 2022-06-11 08:15:24 -05:00
Adam Porter
968a249ae3 Add: Query coalescing for AND clauses
A later commit will update and add tests.
2022-06-11 08:15:24 -05:00
Adam Porter
0057972069 Add: (org-ql-default-predicate) 2022-06-10 01:32:48 -05:00
Adam Porter
c8c89be7bc Meta: Update makem.sh, Makefile 2022-06-09 22:34:07 -05:00
Adam Porter
d4f2eb760e Fix: (src) Normalization
Some argument combinations weren't normalized correctly and could
cause an infinite loop.

This commit doesn't update any corresponding tests, because they are
being rearranged in the WIP branch where this commit originates, and
teasing them out wouldn't be worth it.
2022-06-09 22:34:07 -05:00
Adam Porter
c7fab9dfce Tests: Wrap bare (expect) forms in (it) forms 2022-06-09 22:34:07 -05:00
Adam Porter
36e97d51cf Tests: Fix non-file-backed-buffer test
Somehow a Unicode "RIGHT SINGLE QUOTATION MARK" replaced the ASCII
apostrophe in this string, which broke the test.  Weird!
2022-06-09 22:16:59 -05:00
Adam Porter
64a9234733 Add: (org-ql-find) :query-filter
Also, tidy docstring.
2022-06-02 11:51:57 -05:00
Adam Porter
67506a56f8 Change: (org-ql--byte-compile-warning) More useful error message
e.g. if a predicate only accepts one argument, but the query gives
two, now the error will say, "PREDICATE called with 2 arguments, but
accepts only 1" (so maybe the predicate definition just needs
"&rest").
2022-05-31 12:01:42 -05:00