Question
- In the command line, Set [field] -> [value] doesn't show all my fields, why?Sep 26, 2024
Set [field] command only works on field types Option, Instance, User and Checkbox.
- Why is my field not auto-initializing?Sep 26, 2024
How auto-initialization works
There could be several reasons why a field isn't auto-initializing.
Currently, field auto-initialization is triggered only on the event where
- a supertag is applied to a node, and
- the field is in a placeholder state (i.e. doesn't exist/have its own nodeID).
Fields will therefore not auto-initialize under the following events:
- 1. When added anywhere as a solo field
- 2. On nodes where the supertag is already applied and the field is added after the fact
- 3. If the field is nested under a node in the supertag template. Fields have to be direct children to the supertag to auto-initialize
The next question is likely: can I trigger auto-initialization somehow?
As a result of how initialization is triggered today, there is an unintentional quirk that can be used to re-initialize fields.
For fields that fall under category 2 (from the list above), it is possible to trigger initialization by applying any supertag to the node. The fields have to be in a placeholder state, or it won't work. Video demo:
- Should I use the DUE DATE field?Sep 26, 2024
TL;DR: No, create your own date fields.
Background: Early on in Tana's history the team wanted a way to find overdue tasks but there was no current way of searching for nodes with dates relative to a certain date. So, the system field "Due Date" along with the search operator OVERDUE was created specifically this reason.
But since the introduction of LT / GT (less than/greater than) operators, there is no reason to use the system Due Date field, along with the OVERDUE search operator.
A user defined field for Date or Due Date offers more flexibility:
- You can use initialize feature if desired
- Consistent color with other fields
- You can hide the field
Example of a query to find nodes with a date that is past a certain time:
Source of FAQ: Tana Community Resource Hub
- How can I bulk set a value to fields?Sep 26, 2024
Select the nodes whose field you want to set. Enter the command line (
Cmd
/Ctrl
+K
) and typeSet
to see your options.The
Set [field]
command only works on field types Option, Instance, Tana User and Checkbox. - How do I share a supertag from my private workspace to a shared one?Sep 26, 2024
Currently, the easiest and most foolproof way to do this is to not share it but instead build the supertag, with its fields and anything else necessary for the supertag to work, from the ground up in the new space.
That said, if you still want to move a supertag over that exists only in your private workspace, the main work is to ensure that there's nothing in the supertag that references something in your private workspace, otherwise it will appear as broken to others once it's moved.
It's like packaging up a zip file. You can't just zip up a bunch of shortcuts, you need the real files in there or the recipient will only see broken shortcuts.
You'll also have to remember to move over other things like field options, commands, and ensure that no saved view options contain elements from your workspace. Basically, you must ensure that nothing you're moving over from your workspace contains references from your workspace.
To bring all nodes (except system nodes) into the supertags, fields and commands you want to move, use the command "Bring referenced node here". Alternatively, you can move each necessary node separately too if you for example want the field definition to exist outside the supertag. But the key is that everything that is connected to what you're sending over gets sent over too, otherwise there will be missing pieces.
- What does this warning mean: "Fields nested under other nodes or fields will not work as expected"?Sep 26, 2024
This warning pops up in the supertag template when there are fields that are indented (another word for nested).
There are several "expected" behaviours of fields in supertags that only work when they are first-level nodes in the template, such as (and not limited by) the following:
- Searching for nodes based on their field values (all #tasks with Status::Complete)
- Viewing the node as a table, with fields as columns
- Using fields to build title using title expressions
If you do not care for any of the above uses, you can safely ignore the warning.
- How do I bulk delete a field and its values?Sep 26, 2024
In order to bulk-delete fields and their values, they need to:
- be in Table view, and
- not part of a supertag template.
Here's how you do it:
If you know the field you're targeting but do not have a list of nodes with the field already:
- Use the field definition in a search node to find all nodes with this field.
With the list of nodes that have the field and values you want to delete:
- View as table
- Display that field as a column
- Right-click header > Delete column and values
- What does the system field "Number of nodes with this tag" do?Sep 26, 2024
This system field is relevant only for supertag objects, and reveals the number of times a tag has been used.
How to use it:
- Make a search node with
IS TAG
- which will find all supertags in your graph - Display: Number of nodes with this tag
It shows you how many nodes the tags have been applied to.
- Make a search node with
- Can I show an alternative representation of a field value when building a title?Sep 26, 2024
Yes you can, with this kind of annotation:
${My field.Alternative}
Where
My field
is the field you want appearing in the title, and.Alternative
is the name of the field within the field value you want to target instead. This is great whenever you, for example, want to swap out written-out states for emojis.Example
You have an Options field with some pre-determined options. For each option, add a field like Icon and put a different value for each.
When writing out the title expression in the supertag configuration, use the 1. field name in the 2. title expression format, plus add the field (in this case, "Icon") you are targeting inside the field value which will 3. make the value of the new target field appear instead.
You can go deeper with the targeting by adding more periods. So, you could have something like Field.Field2.Field3 for example.
For more information on title expressions, check out this section in the Supertag doc.
- What are field definitions and how do I find them?Sep 26, 2024
A field definition is a special node that stores the settings of a field. It looks like this:
- A field definition node
- A field
To grab the field definition from a field, put your cursor in the field name, then press copy (Cmd/Ctrl+C) and put your cursor on an empty node and paste (Cmd/Ctrl+V). That gives you a reference to the field definition. Then you can run the command
Bring referenced nodes here
to swap the reference with the actual node.For more information on field definitions, go here.
- How do I set up relationships between nodes?Mar 18, 2024
There are two main ways to create a connection between one node and another:
References/inline references
Use references or inline references to create an unstructured two-way connection between the nodes and the place you mention them in.
The reference section shows you all unstructured mentions under "Referenced in..."
Fields
Fields and their field values create structured two-way connection between nodes. Structured in the sense that the connection is labeled via the name of the field.
- Example: A book node has a field called Author, where you can enter a reference to any person. The relationship between the book and the person is that they are the Author.
Fields offer a variety of ways to create structured connections:
- Create a Plain field and copy/paste or @-mention any node into it
- Create an Options field where you can choose from a list of your choice
- Create a Supertag from Options field where you can choose from a list of all nodes tagged a chosen supertag.
Fields show up in the Reference section as "Appears as [field name] in..."
This screenshot demonstrates how the different connections show up in the Reference section of a node: