Keyboard shortcuts
A complete reference for macOS, Windows and Linux.
Keys are written in macOS form (⌘ for Command, ⌥ for Option); on Windows and
Linux substitute Ctrl for ⌘ and Alt for ⌥.
Dalea deliberately keeps its global keyboard surface small. Almost everything
else is reached from the command palette, the Create modal, or a button. There
is no in-app shortcut overlay. The hints you get in the product are the ⌘.
and ⌘K badges on the sidebar's Create and Search buttons, and the key legends
in the footers of the command palette and the Create modal.
Global
These five chords work anywhere in the app, including inside a document that is open in a workbench pane.
| Action | Shortcut |
|---|---|
| Open / close the command palette | ⌘K |
| Open / close the Create modal | ⌘. |
| Open / close the Explore overlay (entity relations graph) | ⌘⇧E |
| Cycle workbench tabs forward / backward | Ctrl+Tab / Ctrl+⇧Tab |
| Activate workbench tab 1 to 9 in the active pane | ⌘1 … ⌘9 |
Ctrl+Tab is Ctrl on every platform, including macOS. ⌘K is captured at the
window level before any editor can see it, so it always opens the palette.
Esc closes whichever overlay is on top: the palette, the Create modal, the
Explore overlay, the mobile sidebar, or a dialog.
There is no shortcut for switching workspace, toggling the sidebar, opening version history, or opening the AI chat. Those are all click-only.
Inside the editor
The editor is TipTap, so the marks and nodes that ship with it keep their standard bindings.
| Action | Shortcut |
|---|---|
| Open the slash menu | / at the start of a block or after a space |
| Open the @-mention menu | @ at the start of a block or after a space |
| Bold / italic / strikethrough | ⌘B / ⌘I / ⌘⇧S |
| Inline code | ⌘E |
| Code block | ⌘⌥C, or type three backticks followed by a space |
| Heading 1 to 6 | ⌘⌥1 … ⌘⌥6, or type # to ###### then a space |
| Back to plain paragraph | ⌘⌥0 |
| Bullet list / numbered list | ⌘⇧8 / ⌘⇧7 |
| Indent / outdent a list item | Tab / ⇧Tab |
| Split a list item | Enter |
| Blockquote | ⌘⇧B, or type > then a space |
| Insert a horizontal rule | Type --- at the start of a block |
| Line break inside a block | ⇧Enter or ⌘Enter |
| Undo / redo | ⌘Z / ⌘⇧Z (or ⌘Y) |
| Deselect a selected block, back to text | Esc |
| Skip past a collapsed section | ↑ / ↓ |
Undo and redo run through the document's shared Yjs history, not the browser's, so they behave the same inside a Spreadsheet block as they do in prose.
Once the slash menu or the @-mention menu is open, ↑ and ↓ move the
highlight, Enter inserts the highlighted entry, and Esc dismisses the menu.
Typing a space inside a slash query closes it.
Working with whole blocks
Double-click a block's header bar to select the entire block. Once selected,
Backspace or Delete removes it and ⌘C copies it, attributes included.
Pressing Delete with the cursor at the end of a paragraph selects the block
below rather than deleting it, so a second Delete is needed to remove it.
Block fullscreen has no chord: use the expand button in the block header, then
Esc or Exit Fullscreen to leave. Comments have no chord either: hover the
block, click the bubble in the right margin gutter, then ⌘Enter posts the
comment and Esc cancels it.
In the command palette
| Action | Shortcut |
|---|---|
| Move the selection | ↑ / ↓, or Tab / ⇧Tab |
| Page through the Open tabs and Recents lists | ← / → |
| Open the selected result in the current tab | Enter |
| Search everything, when nothing is selected | Enter |
| Close the palette | Esc |
Tab and ⇧Tab are aliases for ↓ and ↑; they do not switch modes. The
palette hands a query to the AI chat when it detects an action-shaped query, or
when you click Ask AI instead; Enter then sends it.
There is no new-tab shortcut. ⌘Enter is not handled and behaves exactly like
Enter.
In the Create modal
| Action | Shortcut |
|---|---|
| Move the selection | ↑ / ↓, or Tab / ⇧Tab |
| Create the selected thing | Enter |
| Step back to the browse list | Esc |
| Close the modal from the browse list | Esc |
Everything creatable in Dalea, documents and projects included, is reached from here.
In the AI chat
| Action | Shortcut |
|---|---|
| Send message | Enter |
| New line in your message | ⇧Enter |
| Recall your previous messages | ↑ / ↓ at the start / end of the input |
| Cancel the in-progress reply, or close the chat | Esc |
Tool-call confirmations are button-only: Decline, Always approve … and Approve. No key approves or declines one.
In the Spreadsheet block
| Action | Shortcut |
|---|---|
| Move between cells | Arrow keys |
| Extend the selection | ⇧ + arrow keys |
| Start editing the focused cell | Enter, or just start typing |
| Commit and move down / up | Enter / ⇧Enter |
| Commit and move right / left | Tab / ⇧Tab |
| New line inside a cell | ⌥Enter |
| Cancel the edit | Esc |
| Clear the selected cells | Backspace |
| Select the whole sheet | ⌘A |
| Cut / copy / paste | ⌘X / ⌘C / ⌘V |
| Find in the sheet | ⌘F |
| Undo / redo | ⌘Z / ⌘⇧Z |
| Write today's date into the focused cell | ⌘; |
Rows and columns are added and removed from the header context menu: right-click a row or column header and pick Insert N row(s) above/below, Insert N column(s) left/right, Remove N row(s) or Remove N column(s). There are no chords for those.
On the workbench tab strip
Once a tab has keyboard focus:
| Action | Shortcut |
|---|---|
| Move to the previous / next tab, wrapping at the ends | ← / → |
| Jump to the first / last tab | Home / End |
| Open the focused tab | Enter or Space |
| Close the focused tab | Delete |
| Open the tab's context menu | ⇧F10 |