Command line

Tana's command line gives you access to every possible action at your fingertips.

Overview

Tana has a command line that gives you access to all actions you can take in Tana. The command line is accessible via Cmd/Ctrl+K

If you're looking for a modular system for creating and assembling custom commands, see command nodes.

Documentation

Command line

The command line can be launched from any node using the shortcut Cmd/Ctrl+K

A modal pops up which you type into to search for available commands.

Essential commands

Remind meSends your node to a date of your choice, like tomorrow or a specific date
Find nodes Gives you the possibility to set up list or tables based on time created, dates, information in fields and much more
View asShow you quickly the different views from the command line
Move toWhen you have a shared workspace, you can move a node there

A Tana backbone function: Find nodes

The Find nodes command gives every user the magical powers of developers, allowing you to create what would have been complex database queries, lightning fast and easy in one command:

  • find nodes with a specific tag, and view them in a list or table, like "Find nodes with tag #todo as list"
  • find nodes created within a certain timeframe "Find nodes created last 7 days as list"
  • or combine them with "Find nodes with tag #todo created last 7 days as list"
  • find nodes with specific fields, and the values in these fields "Find nodes with tag #todo created last 7 days with field Owner=John Doe as list"

Custom Keyboard Shortcuts

You can define custom shortcuts for any command in the command line, all the way down to setting specific tags or field values. To trigger shortcut recording, open the command line, find the command you want to set a shortcut for, and hit Cmd/Ctrl+Shift+K.

To remove custom keyboard shortcuts, go to Settings in the Home node or Cmd/Ctrl+K > Open Settings, and look under "Private keyboard shortcuts" for the custom shortcut you want to delete.

All commands

Calendar

COMMANDDESCRIPTION
Remind me A reference of the selected node will be sent to daily page of choice
Open calendar for → Open a daily page
Show today node Opens today node in full page layout
Set up day tag for this workspaceOnly runs on workspace node. Creates the journal tags and nodes on the workspace root.

Collaboration

COMMANDDESCRIPTION
Notify @ → Sends a notification to target user's Notification menu

Export

COMMANDDESCRIPTION
Get html link to node Copies URL of node along with node contents
Export plain html Opens a new browser html page of the selected node and contents

Fields

COMMANDDESCRIPTION
Show [Field] → Switch on chosen hidden field
Set Optional → Toggle whether the field is Optional or not (Yes/No)
Set Cardinality → Toggle what Cardinality a field is (single value/list of values)
Set Datatype → Set the type of data the field can contain
Set Autocollect options → Toggle whether a field will autocollect values to populate options
Set Hide field conditions → Toggle Hide state of a field
Set Source supertag → Set Source supertag for all field values
Create field Creates a field node

Filter

COMMANDDESCRIPTION
Sort by Not Done → Done Changes sorting of search results
Sort by date created, Old → New Changes sorting of search results
Sort by date created, New → Old Changes sorting of search results
Sort by name, A → Z Changes sorting of search results
Sort by name, Z → A Changes sorting of search results
Show completed items In a list of checkbox nodes, show checked items
Hide completed items In a list of checkbox nodes, hide checked items

Global Interface

COMMANDDESCRIPTION
Join collaborative space → Add workspaces you've been invited to
Open sidebar node Open the node that drives the sidebar content
Open layout node Open the node that saves all layouts (Tana Labs savedLayout)
Open in new browser Opens node in a new browser instance
Go back Goes back to previous location navigated from
Open workspace → Open the home node of chosen workspace
Open quick add Open quick add
Hide sidebar Hides the left sidebar
Toggle sidebar
Set theme to dark mode Toggles dark mode theme on
Set theme to light mode Toggles light mode theme on
COMMANDDESCRIPTION
Open trash (deleted) Opens node where all deleted items go
Open library Open your Library page
Open settings Open your Settings page
Open home node of current workspace Open your home node
Open schema Open your schema, where definitions for supertags and fields live by default
Create keyboard shortcut Dumps keyboard shortcut nodes for manual input (do same while navigating to command line option you want, then hit Cmd+Shift+K to auto-record a shortcut which gets saved in Settings)

Nodes and references

COMMANDDESCRIPTION
Move to → Brings up a list of predetermined locations to move a node to. Defaults are Home, Library and Today.
Delete node Deletes selected node and sub-nodes in trash
Clone Reference Convert a Reference node into a non-referenced node with all contents cloned
Duplicate node Duplicates selected node
Hard delete including references Deletes a node and all References. Inline refs and refs in other workspaces stay, but with trash icon.
Show edit attribution Show Edit Attribution of node
Hide edit attribution Hide Edit Attribution of node
Hoist children to siblings Move child nodes to the same level as selected node
Configure node Opens configuration for selected node
Configure node (legacy) Opens legacy configuration for selected node
Create URL node Creates a node that receives and specially formats URLs
Lock node Locks a node from being edited
Unlock node Unlocks a locked node
Paste as code Pastes contents in a special formatting code node
Add descriptionOpens the description of the selected node
Set move target Adds selected node to list of places when using Move command
Select node Selects the whole node
Copy full content to clipboard Copies all contents of selected node as indented plain text
Select children Selects child nodes of selected node
Iterate and convert URLs to URL nodes Finds nodes that are just URLs and converts them to Tana URL nodes
Add contextual content Creates contextual content (child node, field, column) that only appears in this specific context; doesn't add data to the node generally
Remove Reference Remove a reference node
Get link to node Retrieves reference link to node. Same as Cmd+C in an open node

Outline editing

COMMANDDESCRIPTION
Indent nodes below Indents nodes below selected node
Expand Expands the selected node's child nodes
Expand all Expands the selected node's child nodes and all their ancestors
Collapse Collapses the selected node's child nodes
Collapse all Collapses the selected node's child nodes and all their ancestors
Move up Moves selected node up
Move down Moves selected node down
Insert after Insert new node after selected node
Insert before Insert new node before selected node

Panels and Layout

COMMANDDESCRIPTION
Zoom full page Selected node opens to full page layout
Zoom in panel Selected node is opened within the current panel layout
Open in new panel Selected node is opened in new panel
Close this panel Close panel that your cursor is in
Close panel Closes the active panel (when multiple panels are open)
COMMANDDESCRIPTION
Find nodes Starts query builder
Find todos within Retrieves todos from within the parent node
Search within Searches within the contents of selected node via main search bar
Create search node Create an empty search node. Also invoked by typing "?" on an empty node
Open search Puts cursor in main search bar at top

Supertags

COMMANDDESCRIPTION
Add tag # Starts searching for existing supertags to add to active node
Remove tag # Removes selected supertag from node
Create supertag Convert the contents of a node to a supertag definition
Insert current date and time Adds text of current date and time (YY-MM-DD hh:mm)
Insert current time Adds text of current time (hh:mm)
Create supertag based on content Use node and contents (nodes, fields) to create a supertag
Edit supertag definition for [supertag] Opens supertag configuration
Set default tag for childrenChoose which supertag gets applied to all new child nodes of selected node

Views

COMMANDDESCRIPTION
View as list Set view of child nodes as list
View as cards Set view of child nodes as cards
View as table Set view of child nodes as table
Show view options Make view options bar appear
Remove all view options Removes view settings from a node (if they exist). Also accessible via Configure Node (legacy)
Add column Table view only: Creates column which will appear as a field within nodes listed in the table
Add contextual column Table view only: Creates contextual column/field for nodes listed in the table
Show column → Table view only: Switch on chosen hidden column
Hide column Table view only: Switch off column
Move right Table view only: Move column to right
Move left Table view only: Move column to left
Delete column and values Table view only: Delete column/field and its values
Add calculation → Table view only: On a numeric field, add a calculation type
Set [Field] → Table view only: Set a field option on one or more selected nodes with the same field

AI

COMMANDDESCRIPTION
Ask AIAsk AI anything. Write your prompt in the node and run this command. Accesses default GPT model.
Ask AI to →Ask AI to do a task, which will run on the node you are on, looking at both the node and context. Node must have content.
Ask AI (creative)Same as Ask AI, but with higher temperature.
Run AI fieldsRuns all AI-enhanced fields on a node.
Generate image(s) with DALL-EReturns an AI-generated image using DALL-E.


Related release notes

  • InfoA command line option to 'Report results of last autocompleter search'. This will send it to Tana and put it in your clipboard so you can paste it into Slack for debugging. ()

Related FAQs

Examples

  • One command to toggle the related content section on/off
    Nov 12, 2024
    🙏 Thanks to Navigator Theo for sharing how to implement this "focus mode" idea on Related content sections! For more stuff like this, join our community to share and learn about all things Tana 🫶

    Goal

    You want to dial up your focus by hiding the Related content sections.

    Instructions

    Build the single-command toggle

    See this example on how to build it. Build the first section called "In the schema", then come back here.

    To configure the related content sections you want to toggle the visibility on, each section will need a node filter where the checked state of the is visible field determines whether they show up or not:

    • Navigate to the Related content section in the configuration:
      • For supertags, Cmd/Ctrl+Shift click on the tag itself
      • For nodes, run the command Configure node
    • For every related content section
      • Run the command Add contextual content on the related content nodes, and add >Node filter:: >is visible:: true (checked)
    The system field Node filters on related content sections.

    Testing

    Test the command by running the Toggle visibility command on the node. It should make the related content sections appear/disappear.

    Optionally, you can add the Toggle visibility command to the node as a button, and then use that instead.

    🙌 That's it!

  • A single command that toggles the checked/unchecked state of a field
    Nov 12, 2024
    🙏 Credit goes to Ulises RJ and Navigator Theo for coming up with this elegant solution! Join our community to share and learn about all things Tana 🫶

    Goal

    You want to build one command that toggles the state of something, like a checkbox. The key that unlocks this is the obscure Run commands in parallel command, and this is an excellent use for it. The uses for a toggle are endless; this example will demonstrate how to build a visibility switch for command buttons.

    Let's call it the single-command toggle.

    Note: This is more like a proto-command, something that isn't useful on its own, but unlocks many creative uses.

    Instructions

    In the schema

    1. Create a checkbox field called is visible.
      1. In the Hide field setting, choose Always
    2. Create a command node for checking the is visible field:
      1. Name: visibility ON
      2. Add node filter: >NOT:: >is visible:: true (checked)
      3. Add command Set field values
      4. In parameter Fields to set: >is visible:: true (checked)
    3. Make another command node that removes the field:
      1. Name: visibility OFF
      2. Add node filter: >is visible:: true (checked)
      3. Add command Remove fields
      4. In parameter Fields to remove: is visible (field definition)
    4. Create a third command node for toggling between the two commands:
      1. Name: Toggle visibility
      2. Add command Run commands in parallel
      3. In the parameter Commands to run, add references to the two commands you created earlier
    5. Test the command out:
      1. On any node, run the command Toggle visibility. It should add the is visible field to it, checked. Running it again should remove the field.
    Setup for the commands

    The commands are now ready to go.

    Configure visibility of command buttons

    To configure the commands you want to toggle the visibility on, each command will need a node filter where the checked state of the is visible field determines whether they show up or not:

    • Create or find a node that has many command buttons you want to hide
    • For every command, add the >Node filter:: >is visible:: true (checked)
    • As you do this, the buttons should, one by one, disappear from the node.
    A node filter applied to the command button

    Testing

    Test the command again by running the Toggle visibility command on the node. It should make the buttons appear/disappear.

    🙌 That's it!

    Further ideas

    • Bind a custom keyboard shortcut to Toggle visibility so you can easily toggle the visibility of buttons with the same keystrokes. See video above.
    • Add the toggle command as a button: then you can toggle things with a mouse-click instead
    • Use the same thing to toggle the visibility of related content sections

Question

  • What are all the ways I can copy data out of Tana?
    Sep 26, 2024

    Basic copy-paste

    Copy-pasting content is the fastest way of getting data out of Tana.

    Select the content you want to copy, then hit Cmd/Ctrl+C. To paste, Cmd/Ctrl+V either in Tana (will create references) or elsewhere.

    More copy-paste options

    Via the command line (Cmd/Ctrl+K) there are various flavors of copy available to you.

    Copy full content to clipboard

    Copies the selected content in plain text format

    Copy as Tana Paste

    Copies the selected content in Tana Paste format

    Copy as plain markdown

    Copies the selected content in plain markdown format

    Other ways to get content out

    Export plain HTML

    Renders a HTML page of the selected content that you can copy the HTML of, or save as a HTML file.

    Export JSON

    To learn more about this, read here.

    Thanks to community member Michael Sklar for the FAQ idea!
  • 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 type Set to see your options.

    The Set [field] command only works on field types Option, Instance, Tana User and Checkbox.

  • How can I bulk add/remove supertags?
    Sep 26, 2024

    Select the nodes, then type # or use the command Add tag to add supertags to all selected nodes.

    Use the command Remove tag to bulk-remove supertags.

  • How can I merge two or more nodes/fields/supertags?
    Sep 26, 2024

    Use the command Merge node.

    It also works on references i.e. it will merge the nodes referenced to and all references will be updated accordingly

    To merge nodes

    Select nodes, then run the command.

    To merge fields

    Get the field definitions in one place (copy/paste), select them and run the command:

    To merge supertags

    Get the supertag definitions in one place (copy/paste or @-mention), select them and run the command: