Creating Date Ranges

Hello! I know this is explained in the Searches section of the TaskPaper guide, but I can’t quite figure out how to setup a date range within a search. Any help on this matter would be greatly appreciated.

For instance, I’d like an “Upcoming” search that shows items with @start date or @due date between tomorrow and next month. Here is how I think it should be setup, but I’m not getting the expected results:

@due >=[d] tomorrow and @due <=[d] next month union @start >= [d] tomorrow and @start <=[d] next month

It’s probably helpful to build a ⌘⇧F filter incrementally.

Check, for example, that you can filter down to any line with a @start tag (at any level of outline nesting) using:


then try to filter on one date constraint

//@start >=[d] today

before bracketing up in preparation for a bit more complexity

//(@start >=[d] today and @start <=[d] next Month)

Refining a single search with or tends to be cheaper and faster than combining two different searches with union, so you could experiment with something like:

//(@start >=[d] today and @start <=[d] next Month) or (@due >=[d] today and @due <=[d] next Month)

Thank you so much, this was very, very helpful!

1 Like