I have an Agenda page which basically summarizes my to-dos:
- query-table:: false
#+BEGIN_QUERY
{:title [:h4 "Overdue"]
:query [:find (pull ?block [*])
:in $ ?start ?next
:where
[?block :block/marker ?marker]
[(contains? #{"TODO","DOING"} ?marker)]
(or
[?block :block/scheduled ?d]
[?block :block/deadline ?d])
[(> ?d ?start)]
[(< ?d ?next)]]
:result-transform (fn [result]
(sort-by (fn [h]
(or (get h :block/scheduled) (get h :block/deadline))) result))
:inputs [:365d-before :0d-before]
:collapsed? false}
#+END_QUERY
- query-table:: false
#+BEGIN_QUERY
{:title [:h4 "Today"]
:query [:find (pull ?block [*])
:in $ ?start ?next
:where
(or
[?block :block/scheduled ?d]
[?block :block/deadline ?d])
[(> ?d ?start)]
[(< ?d ?next)]]
:result-transform (fn [result]
(sort-by (fn [h]
(or (get h :block/scheduled) (get h :block/deadline))) result))
:inputs [:1d-before :1d-after]
:collapsed? false}
#+END_QUERY
- #+BEGIN_QUERY
{:title [:h4 "Electives"]
:query [:find (pull ?b [*])
:where
(or [?b :block/priority "A"] [?b :block/priority "B"] [?b :block/priority "C"])
[?b :block/marker ?marker]
(not [?b :block/scheduled ?d])
(not [?b :block/deadline ?d])
[(contains? #{"TODO","DOING"} ?marker)]]
:result-transform
(fn [result]
(sort-by (fn [h] (get h :block/priority "Z")) result))
}
#+END_QUERY
- query-table:: false
#+BEGIN_QUERY
{:title [:h4 "Sooner"]
:query [:find (pull ?block [*])
:in $ ?start ?next
:where
(or
[?block :block/scheduled ?d]
[?block :block/deadline ?d])
[(> ?d ?start)]
[(< ?d ?next)]]
:result-transform (fn [result]
(sort-by (fn [h]
(or (get h :block/scheduled) (get h :block/deadline))) result))
:inputs [:0d-after :7d-after]
:collapsed? false}
#+END_QUERY
- #+BEGIN_QUERY
{:title [:h4 "Later"]
:query [:find (pull ?block [*])
:in $ ?start ?next
:where
(or
[?block :block/scheduled ?d]
[?block :block/deadline ?d])
[(> ?d ?start)]
[(< ?d ?next)]]
:result-transform (fn [result]
(sort-by (fn [h]
(or (get h :block/scheduled) (get h :block/deadline))) result))
:inputs [:6d-after :90d-after]
:collapsed? false}
#+END_QUERY