You can apply a filter to a TimeStory document to view only a subset of its events, hiding others which don’t match the filter criteria. For example, you may want to quickly zoom in on all the events with a given person’s name in them, or you may want to hide all events completed before a given date.

The current filter is saved along with the document, so you can keep a persistent filter active over time.

Performing Filtering

To filter a document, click on the Filter button, use the Events > Filter Events menu choice, or press ⌘/. The “Filter Events” area will appear at the top of the window.

As you type into this field, TimeStory will filter out all non-matching events, letting you quickly get to the set of events you want. If any rows become completely empty, they are hidden, so your document will vertically compress.

Press Close (or hit the Esc key) to cancel the filter and restore the visibility of all events.

Searching for Text

To filter for a word, just type it in the Filter Events field.

If you type multiple words, separated by spaces, TimeStory searches for all of those words, but not strictly as typed; for example, deliver pizza will match Deliver 5 pizzas to the office, because both deliver and pizza are found.

Use quotation marks to match phrases exactly. For example “deliver pizza” (with the quotes) will not match Deliver 5 pizzas to the office, but it will match Ask John to deliver pizza.

Filtering by Date

You can filter events by date by entering one or more of these into your event filter:

For each of the above dates, you can use your preferred date syntax based on your home language; you can also use the form year-month-day no matter what region you’re in. Note that if your date contains spaces, you must put quotes around it.

Instead of a specific date, you can also just enter a year, or a month and year.

For example:

Date filters can be combined with text filters as described above or incorporated into more complex filters using ~, (), and |, as described below.

More Complex Filters

You can search for multiple alternatives using the | character. For example, pizza | sandwiches will match either pizza or sandwiches.

Use parentheses to group terms together: deliver (pizza | sandwiches) will match deliver pizza or deliver sandwiches.

To exclude a term from your search, precede it with a tilde character: deliver ~pizza will require deliver, but will exclude anything containing pizza, and ~ < 2021 will exclude any events which end before the year 2021 starts.

You can combine these terms freely, mixing (, ), |, and ~ characters as you wish. If you enter in a nonsensical filter, for example a ( without a matching ), or a ~ which doesn’t precede anything, then TimeStory will try to do its best, and will point out the mistake if you hit the Return key.

Hiding Sections With No Matches

By default, the “Hide sections with no matches” option in the Filter panel is enabled. This means that, as you enter your filter, only those sections containing matching events will remain visible—any sections without matching events will be hidden.

(Note that collapsed sections containing matching events will still be shown, although collapsed.)

Uncheck this box to keep all section headers visible, even if they contain no matching events.