Live Search

⚠️

This video/page has outdated content

Tana is changing at a rapid pace 🚀 While many concepts remain the same, some user interface and features have changed a lot since they first were documented here! Please keep this in mind while browsing.

Our powerful Live search

On of the most powerful features in Tana is the Live search, which is essential to set up the flows you want.

A live search can be set up in multiple ways:

  • The main way is to use the Find Nodes command from the command line, which lets you drill down to the search that you want.

  • Clicking a tag, clicking the "List of" or navigation target that's there, will bring you to a page with Live search active.

  • Opening a field's configuration, and clicking the spyglass will give you a list of all nodes with that field.

  • Choose "Show view options" for a node, with Command line or the context menu, and click on Search.

You can quickly edit your Live search by clicking Live search and edit it on the spot.

All search expressions

💡

NEW! Learn by looking at other Live Search examples

Our Navigators have created a Tana Template full of Live Search examples that allow you to interact with each search expression below to see how they work. They cover the basics and will continuously be updated as we surface more useful examples from the community. Click this link to save the resource in one of your Tana workspaces.

All live searches have a query builder that defines what it's looking for. They must consist of a flat list of match-clauses, each of which must be true for a node to match the search.

Below is a record of all search expressions possible in Tana:

Tana objectsDescription
A reference to a node that is not a supertag
Only nodes below that reference in the node tree will be candidates
This includes referencing a Workspace to limit hits to nodes that live in that Workspace
Can be thought of as a descendant of operator
A reference to a supertag
Only instances of that supertag will be candidates
Note that you will want to @ mention the supertag, not #.
A reference to an field definition
Only nodes that has a value set for this field will match
A field with one or more values
One or more plain-text values: nodes with this field that contain any of these values will match
PARENT/GRANDPARENT: sets the field value relative to the parent/grandparent of the search node. Useful for creating search nodes that collect backlinks on a parent/grandparent node
The system nodes Defined/Not Defined will match nodes that fall in either state. A "Not Defined" field means that a field is still in its default, untouched form from the supertag template. A Defined field may therefore still look empty, but have a history of being edited in the past.
The system nodes Set/Not set will match nodes that have a value for this field.
A plain text node
Only nodes that has a title with the text as a substring will match
A regular expression between /.../ (if you have turned on regexp in Tana Labs)
Only nodes whose title match the regular expression will match
Logical operatorsDescription
AND
combines multiple clauses (is implied at the top level)
OR
any of the clauses in the field values should match
NOT
negates a single clause (if you want to negate multiple, you need multiple NOT statements)
LT
the field value should be a field, with a value - finds nodes that have a value less than the value provided. Also works with dates.
GT
the field value should be a field, with a value - finds nodes that have a value greater than than the value provided. Also works with dates.
LINKS_TO
Matches all nodes that have inline refs or are linked nodes of the node in the value field. This is similar to the list you get as "Linked References" when zooming in on a node. You can also use PARENT and GRANDPARENT to find all nodes that link to the parent/grandparent node.
COMPONENTS_REC
Matches results that are part of a defined semantic relationship. Works in conjunction with the Part Of feature. Read more about it here: PartOf & COMPONENTS_REC
Plain text node using one of these keywords:Description
PARENTS_DESCENDANTS
Matches will be limited to nodes that are siblings of the node with the search expression defined. 1 level up.
GRANDPARENTS_DESCENDANTS
Matches will be limited to the tree below the node above the parent node of the node with the search expression defined. 2 levels up
PARENTS_DESCENDANTS_WITH_REFS
Same as PARENTS_DESCENDANTS, but also including any references.
This makes it possible to define searches on nodes in Supertags, and have the supertag instances get local search behavior.
E.g. a Project supertag could have a Bugs node with a search defined that would only find Bug-instances within the scope of the project from which it was run.
GRANDPARENTS_DESCENDANTS_WITH_REFS
Same as GRANDPARENTS_DESCENDANTS, but also including any references
HAS_ATTRIBUTE
Any node with a field will match
IS_TAG
Any node that is a supertag definition
HAS_TAG
Any node that is tagged with a supertag (but is not a supertag def itself)
HAS_MEDIA, HAS_AUDIO, HAS_VIDEO, HAS_IMAGE
Any node that has media, audio, video or image type of content attached to it, respectively
IS_COMMAND
Any command node
CREATED LAST <N> DAYS
Any node that has been created the last N days
TODO
Nodes that have a checkbox, regardless if is is checked or not
DONE
Only nodes that have been marked as done
DONE LAST <N> DAYS
Any node that has been marked as done (using keyboard action) the last N days
NOT DONE
Only nodes that have not been marked as done
OVERDUE
Only nodes with the system field Due date, which are overdue
MODIFIED BY (USER EMAIL) LAST (NUMBER) DAYS
Any nodes modified by the user with the user email, within the last N days.
MODIFIED BY (USER EMAIL) ANYTIME
Any nodes modified by the user with the user email at any timer
DONE LAST (NUMBER) DAYS
Marked as done in the last n days
EDITED LAST (NUMBER) DAYS
Edited in the last n days
FOR DATE YYYY-MM-DD
Node has an inline ref to the date specified
FOR RELATIVE DATE (KEYWORD)
Used in Date fields, matches with field values that are dates
Valid keywords: today, tomorrow, this week, next week, this month, next month
SIBLING NAMED "NAME"
If the search node has a sibling (another node with the same parent) with the name provided, it will limit the search to descendants of that node.

Related content

Search, Filters & Views

Searches, filters and views is one of the fundamental building blocks in Tana. Get a good overview and learn how you can build flows for pretty much anything you can imagine