> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cfo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Keyboard shortcuts

> Every keyboard shortcut in cfo.ai: workspace search, the Help center, chat with Ari, Pages and blocks, table cells, formulas, and undo and redo, including whether Ctrl+Z undoes Ari's changes.

This page lists every keyboard shortcut in cfo.ai, grouped by where you use it. On Windows and Linux, use **Ctrl** where this page shows **⌘**, and **Alt** where it shows **⌥**. Press **⌘ ?** in the app to see the common shortcuts in the Help center.

## Search, help, and the sidebar

| Shortcut | What it does |
| - | - |
| **⌘ K** | Open or close workspace search |
| **↑** / **↓** in search | Move through the results |
| **Enter** in search | Open the highlighted result |
| **⌘ Enter** in search, or **⌘**-click a result | Open the result in a new browser tab |
| **Esc** in search | Close search |
| **⌘ ?** | Open the Help center |
| **⌘ \\** | Fold the navigation sidebar to a narrow strip, or pin it open again |
| **⌘ Enter** in **Ask a human** or **Share feedback** | Send the message |

## Undo and redo

| Shortcut | What it does |
| - | - |
| **⌘ Z** | Undo the last change you made to the Model in this browser tab |
| **⌘ Shift Z** | Redo the change you undid |

Undo and redo work anywhere in the app except while you are typing in a text field or the formula editor. They cover only changes you made in this tab since it opened. To undo a change Ari made, or one from an earlier visit, use version history; see [Undo a change or restore an earlier version](/guides/undo-changes.md).

| Message | Meaning |
| - | - |
| **Changes undone** / **Changes redone** | The undo or redo finished. |
| **Couldn’t undo changes** / **Couldn’t redo changes**, with **Try again.** | The undo or redo failed, and the change stays as it was. |

## Chat with Ari

| Shortcut | What it does |
| - | - |
| **⌘ /** | Start a new chat. With a cell, block, or Page selected, the new chat starts about it. |
| **⌘ L** | Mention the selected cell, row, column, or block in the current chat. With text selected in one of Ari's answers, quote that text in your reply. |
| **Enter** | Send your message. While Ari is working, the message reaches Ari at its next step. |
| **⌥ Enter** | While Ari is working, queue your message for after Ari finishes. When Ari is not working, start a new line. |
| **Shift Enter** | Start a new paragraph in the message box. In a list, start the next item, or leave the list from an empty item. Inside code, insert a line break. |
| **⌘ Enter** | Insert a line break in the message box |
| **Esc** in the message box | Stop Ari while it is working |
| **Tab** or **→** in an empty message box | Use Ari's suggested reply |
| **A**, **B**, **C**, and so on | Choose an option on one of Ari's question forms, when the cursor is not in a text box |
| **↑** at the start of your draft | Move to the status line above the message box, such as a running sync. **↓** returns to the draft. |

## Pages and blocks

| Shortcut | What it does |
| - | - |
| **↑** / **↓** | Move through Pages in the sidebar, or through blocks on a Page |
| **→** / **←** | Expand or collapse a Page in the sidebar |
| **⌥ ↑** / **⌥ ↓** | Move the selected Page up or down among its siblings |
| **⌥ →** | Nest the selected Page under the Page above it |
| **⌥ ←** | Move the selected Page out one level |
| **F2** | Rename the selected Page |
| **Shift F10** | Open the selected block's menu |
| **Enter** | Enter the selected block |
| **Esc** | Return from inside a block to the block |

## Table cells

| Shortcut | What it does |
| - | - |
| **Enter** | Edit the selected cell. While editing, save and move down. |
| **Shift Enter** | Save and move up |
| **Tab** / **Shift Tab** | Save and move right or left |
| **⌘ Enter** | Save and stay on the cell |
| **⌥ Enter** | Start a new line inside the cell |
| **Esc** | Cancel editing and return to the table |
| **Delete** / **Backspace** | Clear the selected cells' own values |
| **⌘ C** / **⌘ X** / **⌘ V** | Copy, cut, or paste the selected cells |
| **⌘ Shift V** | Paste values only, without formulas |
| **⌃ ⌘ C** (**Ctrl Alt C** on Windows and Linux) | Copy the value a cell displays |
| **⌘ A** | Select every cell in the table |
| **Shift F10** or the **Menu** key | Open the right-click menu of the selected cell or header |
| **Shift**-click a row's or column group's chevron, or **⌘**-click on a Mac | Expand or collapse every sibling row or column group at that level. On Windows and Linux, use **Shift**-click; **Ctrl**-click does not do this. |

## Formulas and filters

| Shortcut | What it does |
| - | - |
| **Ctrl Space** | Open formula autocomplete |
| **⌥ F12** | Show the syntax and an example for the function under the cursor |
| **F2** | Start selecting a cell or row to reference |
| **Arrow keys** | While selecting a reference, point at the neighboring cell |
| **Enter** | Insert the selected reference. When the editor is closed, save the formula. |
| **Esc** | Cancel reference selection, or close the editor without saving |
| **⌥ ↓** | Open the filters on the reference at the cursor |
| **F4** | Make the reference at the cursor absolute, or release it |
| **⌘ Enter** | In a row's formula editor, save and apply the formula to the parent rows too |

## Related

* [The cfo.ai interface](/reference/interface.md)
* [Table block controls and messages](/reference/table-blocks.md)
* [Chat controls and messages](/reference/chat.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.