Add: helm-org-ql

Squashed commit of the following:

commit f4c2ce37199eb6eab5038e6bdadf5d57f8d88cd3
Author: Adam Porter <adam@alphapapa.net>
Date:   Mon Sep 9 16:56:04 2019 -0500

    Docs: Add about helm-org-ql C-x C-s

commit 845a205f7b17904cb9f8e379dc172787cdd16018
Author: Adam Porter <adam@alphapapa.net>
Date:   Mon Sep 9 16:25:46 2019 -0500

    WIP: Update docs and add screenshot

commit d8aa8a50169d3ecdee4d85a0f7cd6e1dc26e420e
Author: Adam Porter <adam@alphapapa.net>
Date:   Mon Sep 9 16:25:18 2019 -0500

    WIP: Ignore all query errors

    Partially typed queries might cause parsing errors.

commit 782a830a5fb7d77ea2eba3553f46cc4dcac98708
Author: Adam Porter <adam@alphapapa.net>
Date:   Mon Sep 9 16:24:57 2019 -0500

    WIP: (deadline) and (priority)

commit d32e3e33f97dfa7593f4376c08eb31b0ccb980a2
Author: Adam Porter <adam@alphapapa.net>
Date:   Mon Sep 9 14:26:54 2019 -0500

    WIP: Compatibility

    Trying to make it install and run cleanly even when Helm isn't
    installed.

commit 4bd9943f86ef543903e10f3b58b26c0eb366d869
Author: Adam Porter <adam@alphapapa.net>
Date:   Mon Sep 9 13:47:41 2019 -0500

    Add: (helm-org-ql-org-directory)

commit d9a04e142ae68f83201c311fa84a46fa8f4e0ce0
Author: Adam Porter <adam@alphapapa.net>
Date:   Mon Sep 2 12:23:51 2019 -0500

    WIP: Add helm-org-ql.el
This commit is contained in:
Adam Porter 2019-09-09 17:10:46 -05:00
parent 1ff21dc0c8
commit 622f0e6d5e
4 changed files with 264 additions and 42 deletions

View file

@ -6,7 +6,7 @@
[[https://melpa.org/#/org-ql][file:https://melpa.org/packages/org-ql-badge.svg]] [[https://stable.melpa.org/#/org-ql][file:https://stable.melpa.org/packages/org-ql-badge.svg]]
~org-ql~ is a lispy query language for Org files. It allows you to find Org entries matching certain criteria and return a list of them or perform actions on them. Commands are also provided which display a buffer with matching results, similar to an Org Agenda buffer.
~org-ql~ is a lispy query language for Org files. It allows you to find Org entries matching certain criteria and return a list of them or perform actions on them. Commands are also provided which display matching results.
* Contents
:PROPERTIES:
@ -120,7 +120,7 @@ Installing with [[https://framagit.org/steckerhalter/quelpa][Quelpa]] is easy:
The functionality provided may be grouped by:
+ *Interactive commands:* ~org-ql-search~, ~org-ql-view~, =org-ql-sparse-tree=.
+ *Interactive commands:* ~org-ql-search~, ~org-ql-view~, =org-ql-sparse-tree=, =helm-org-ql=.
+ *Non-interactive functions and macros:*
- ~org-ql~ (macro)
- ~org-ql-select~ (function)
@ -137,6 +137,8 @@ Alternatively, they may be grouped by:
- ~org-ql-agenda~ (macro)
+ *Showing a tree in a buffer:*
- =org-ql-sparse-tree= (command)
+ *Showing results with Helm*:
- =helm-org-ql= (command)
+ *Returning a list of matches or acting on them:*
- ~org-ql~ (macro)
- ~org-ql-select~ (function)
@ -177,6 +179,16 @@ Here's an example of using it to generate an agenda-like view for certain files
[[images/org-ql-search-snippet.png]]
*** helm-org-ql
This command displays matches with Helm. *Note:* Helm is not a package dependency, so this command only works if the package =helm-org= is installed.
Note also that queries in this command are specially handled so that quotes around strings may be omitted for ease of typing.
+ Press =C-x C-s= in the Helm session to save the results to an =org-ql-search= buffer.
[[images/helm-org-ql.gif]]
*** org-ql-view
Choose and display a view stored in ~org-ql-views~.
@ -462,6 +474,7 @@ Expands into a call to ~org-ql-select~ with the same arguments. For convenience
** 0.3-pre
*Added*
+ Command =helm-org-ql=.
+ Command =org-ql-sparse-tree=, like =org-sparse-tree= for =org-ql= queries. (Thanks to [[https://github.com/akirak][Akira Komamura]].)
+ Per-buffer, per-heading tag caching, which increases the speed of tags-related queries by 6-7x.
+ More tags-related predicates and aliases: