[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] ANN: org-ql agenda block support

From: Adam Porter
Subject: Re: [O] ANN: org-ql agenda block support
Date: Fri, 30 Aug 2019 05:44:45 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

Samuel Wales <address@hidden> writes:

> i have been watching these developments with interest.  i want a
> faster 2-day agenda, and really like the idea of a lisp syntax for
> querying, perhaps one that can combine text search with structured.
> so just so it's known that there is otherwise silent interest.
> limited in computer use so cannot switch but following.

I appreciate the feedback nonetheless.

A two-day agenda could be done something like this:

    (org-ql-agenda (org-agenda-files)
      (and (or (deadline :from today :to +1)
               (scheduled :from today :to +1)
               (ts-active :from today :to +1))
           (not (done)))
      :sort (date priority todo)
      :super-groups ((:auto-planning t)))

To show deadlined entries taking org-deadline-warning-days into account,
more like the traditional Org Agenda, use (deadline auto), like:

    (org-ql-agenda (org-agenda-files)
      (and (or (deadline auto)
               (scheduled :from today :to +1)
               (ts-active :from today :to +1))
           (not (done)))
      :sort (date priority todo)
      :super-groups ((:auto-planning t)))

Grouping by date in this example is done with the org-super-agenda
:auto-planning selector, which uses the earliest planning timestamp in
an entry.  So it's not exactly like Org Agenda, but it approximates what
you're asking for, and org-ql's built-in caching may provide a speedup
for subsequent calls.

Here's an example that's similar to the Org Agenda's Log Mode:

      (or (and (not (done))
               (or (habit)
                   (deadline auto)
                   (scheduled :to today)
                   (ts-active :on today)))
          (closed :on today))
      :sort (date priority todo))

reply via email to

[Prev in Thread] Current Thread [Next in Thread]