From ac2d43588aa96f0b7fe88f518d6fca4fd65b5aa0 Mon Sep 17 00:00:00 2001 From: Adam Porter Date: Thu, 19 Oct 2023 21:43:53 -0500 Subject: [PATCH] Add: (org-ql-find-path) --- README.org | 2 + org-ql-find.el | 7 +++ org-ql.info | 121 +++++++++++++++++++++++++------------------------ 3 files changed, 71 insertions(+), 59 deletions(-) diff --git a/README.org b/README.org index 5a6febd..d7d3587 100644 --- a/README.org +++ b/README.org @@ -111,6 +111,7 @@ Lisp code examples are in [[examples.org]]. These commands jump to a heading selected using Emacs's built-in completion facilities with an Org QL query: - ~org-ql-find~ searches in the current buffer. +- ~org-ql-find-path~ searches outline paths in the current buffer. - ~org-ql-find-in-agenda~ searches in ~(org-agenda-files)~. - ~org-ql-find-in-org-directory~ searches in ~org-directory~. @@ -552,6 +553,7 @@ Simple links may also be written manually in either sexp or non-sexp form, like: + Function ~org-ql-completing-read~, used by command ~org-ql-find~, now specifies the completion category as ~org-heading~, providing compatibility with [[https://github.com/oantolin/embark][Embark]]. (This is a powerful feature, as it means any ~org-ql-find~ result can be acted on from inside the search results with Embark, which provides common actions from Org Agenda and Org speed keys bindings.) ([[https://github.com/alphapapa/org-ql/issues/299][#299]]. Thanks to [[https://github.com/oantolin][Omar Antolín Camarena]], [[https://github.com/minad][Daniel Mendler]], and [[https://github.com/akirak][Akira Komamura]].) + Command ~org-ql-find~ may be called in an ~org-agenda~ or ~org-ql-view~ buffer to search the buffers which contributed to the agenda/view buffer. ++ Command ~org-ql-find-path~, which searches outline paths in the current buffer. *Compatibility* diff --git a/org-ql-find.el b/org-ql-find.el index 154f934..c1848ea 100644 --- a/org-ql-find.el +++ b/org-ql-find.el @@ -132,6 +132,13 @@ which see (but only the files are used)." (interactive) (org-ql-find (org-ql-search-directories-files))) +;;;###autoload +(defun org-ql-find-path () + "Call `org-ql-find' to search outline paths in the current buffer." + (interactive) + (let ((org-ql-default-predicate 'outline-path)) + (org-ql-find (current-buffer)))) + (provide 'org-ql-find) ;;; org-ql-find.el ends here diff --git a/org-ql.info b/org-ql.info index f9a2e71..fae9944 100644 --- a/org-ql.info +++ b/org-ql.info @@ -226,6 +226,7 @@ _Note: These commands use ._ completion facilities with an Org QL query: • ‘org-ql-find’ searches in the current buffer. + • ‘org-ql-find-path’ searches outline paths in the current buffer. • ‘org-ql-find-in-agenda’ searches in ‘(org-agenda-files)’. • ‘org-ql-find-in-org-directory’ searches in ‘org-directory’. @@ -1054,6 +1055,8 @@ File: README.info, Node: 08-pre, Next: 072, Up: Changelog • Command ‘org-ql-find’ may be called in an ‘org-agenda’ or ‘org-ql-view’ buffer to search the buffers which contributed to the agenda/view buffer. + • Command ‘org-ql-find-path’, which searches outline paths in the + current buffer. *Compatibility* @@ -1796,65 +1799,65 @@ Node: Helm support3093 Node: Usage3496 Node: Commands3894 Node: org-ql-find4338 -Node: org-ql-refile5077 -Node: org-ql-search5400 -Node: helm-org-ql7331 -Node: org-ql-view7709 -Node: org-ql-view-sidebar8239 -Node: org-ql-view-recent-items8619 -Node: org-ql-sparse-tree9115 -Node: Queries9915 -Node: Non-sexp query syntax11032 -Node: General predicates12791 -Node: Ancestor/descendant predicates19778 -Node: Date/time predicates20906 -Node: Functions / Macros24030 -Node: Agenda-like views24328 -Ref: Function org-ql-block24490 -Node: Listing / acting-on results25751 -Ref: Caching25959 -Ref: Function org-ql-select26872 -Ref: Function org-ql-query29298 -Ref: Macro org-ql (deprecated)31072 -Node: Custom predicates31387 -Ref: Macro org-ql-defpred31611 -Node: Dynamic block35052 -Node: Links37776 -Node: Tips38463 -Node: Changelog38787 -Node: 08-pre39583 -Node: 07240820 -Node: 07141742 -Node: 0742551 -Node: 06345475 -Node: 06246006 -Node: 06146311 -Node: 0646879 -Node: 05249933 -Node: 05150233 -Node: 0550658 -Node: 04952189 -Node: 04852471 -Node: 04752820 -Node: 04653229 -Node: 04553637 -Node: 04453998 -Node: 04354357 -Node: 04254560 -Node: 04154721 -Node: 0454968 -Node: 03259069 -Node: 03159472 -Node: 0359669 -Node: 02362969 -Node: 02263203 -Node: 02163483 -Node: 0263688 -Node: 0167766 -Node: Notes67867 -Node: Comparison with Org Agenda searches68029 -Node: org-sidebar68918 -Node: License69197 +Node: org-ql-refile5153 +Node: org-ql-search5476 +Node: helm-org-ql7407 +Node: org-ql-view7785 +Node: org-ql-view-sidebar8315 +Node: org-ql-view-recent-items8695 +Node: org-ql-sparse-tree9191 +Node: Queries9991 +Node: Non-sexp query syntax11108 +Node: General predicates12867 +Node: Ancestor/descendant predicates19854 +Node: Date/time predicates20982 +Node: Functions / Macros24106 +Node: Agenda-like views24404 +Ref: Function org-ql-block24566 +Node: Listing / acting-on results25827 +Ref: Caching26035 +Ref: Function org-ql-select26948 +Ref: Function org-ql-query29374 +Ref: Macro org-ql (deprecated)31148 +Node: Custom predicates31463 +Ref: Macro org-ql-defpred31687 +Node: Dynamic block35128 +Node: Links37852 +Node: Tips38539 +Node: Changelog38863 +Node: 08-pre39659 +Node: 07240992 +Node: 07141914 +Node: 0742723 +Node: 06345647 +Node: 06246178 +Node: 06146483 +Node: 0647051 +Node: 05250105 +Node: 05150405 +Node: 0550830 +Node: 04952361 +Node: 04852643 +Node: 04752992 +Node: 04653401 +Node: 04553809 +Node: 04454170 +Node: 04354529 +Node: 04254732 +Node: 04154893 +Node: 0455140 +Node: 03259241 +Node: 03159644 +Node: 0359841 +Node: 02363141 +Node: 02263375 +Node: 02163655 +Node: 0263860 +Node: 0167938 +Node: Notes68039 +Node: Comparison with Org Agenda searches68201 +Node: org-sidebar69090 +Node: License69369  End Tag Table